:root { --cr-green:#174235; --cr-green-2:#2b7055; --cr-gold:#d4a84d; --cr-ink:#1f2b26; --cr-muted:#6e7b74; --cr-line:rgba(24,66,53,.13); }
body { background:#f5f2ea; }
.cr-page { min-height:75vh; padding:clamp(24px,5vw,70px) 20px 90px; background:radial-gradient(circle at 10% 0,rgba(212,168,77,.14),transparent 28rem),linear-gradient(180deg,#f9f7f1,#f1eee5); color:var(--cr-ink); }
.cr-container { width:min(1120px,100%); margin:auto; }
.cr-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:25px; color:var(--cr-muted); font-size:.82rem; }
.cr-breadcrumb a { color:var(--cr-green-2); text-decoration:none; }
.cr-hero { display:flex; align-items:flex-end; justify-content:space-between; gap:25px; margin-bottom:24px; padding:clamp(24px,5vw,46px); color:#fff; background:linear-gradient(130deg,#12382d,#215f48); border-radius:28px; box-shadow:0 25px 60px rgba(19,55,42,.18); }
.cr-hero h1 { margin:3px 0 8px; font-family:Georgia,serif; font-size:clamp(2rem,5vw,3.4rem); line-height:1.05; }
.cr-hero p:last-child { max-width:640px; margin:0; color:rgba(255,255,255,.72); }
.cr-kicker { margin:0 0 7px; color:#bc8626; font-size:.7rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.cr-hero .cr-kicker { color:#f0ce83; }
.cr-button { min-height:45px; display:inline-flex; align-items:center; justify-content:center; padding:10px 18px; color:#fff; font-weight:800; text-decoration:none; background:linear-gradient(135deg,var(--cr-green-2),var(--cr-green)); border:0; border-radius:13px; box-shadow:0 12px 24px rgba(22,62,48,.18); cursor:pointer; }
.cr-button--outline { flex:0 0 auto; color:#173e31; background:#f5d988; box-shadow:none; }
.cr-flash { margin:0 0 18px; padding:12px 15px; color:#194a36; font-weight:700; background:#e0f4e7; border:1px solid #b7ddc5; border-radius:13px; }
.cr-flash.is-error { color:#7a3030; background:#fff0ee; border-color:#edbbb4; }
.cr-summary { display:grid; grid-template-columns:220px 1fr 190px; align-items:center; gap:30px; margin-bottom:22px; padding:25px; background:rgba(255,255,255,.84); border:1px solid var(--cr-line); border-radius:22px; box-shadow:0 13px 34px rgba(30,58,47,.07); }
.cr-score { display:grid; justify-items:center; text-align:center; }
.cr-score > strong { color:var(--cr-green); font-family:Georgia,serif; font-size:3.4rem; line-height:1; }
.cr-score > span { margin-top:6px; color:var(--cr-muted); font-size:.78rem; }
.cr-stars { display:flex; gap:2px; color:#d7d7cf; font-size:1.15rem; }
.cr-stars .is-filled { color:var(--cr-gold); }
.cr-breakdown { display:grid; gap:7px; }
.cr-breakdown > div { display:grid; grid-template-columns:44px 1fr 28px; align-items:center; gap:9px; color:var(--cr-muted); font-size:.72rem; }
.cr-breakdown i { height:7px; overflow:hidden; background:#ebeae4; border-radius:99px; }
.cr-breakdown b { height:100%; display:block; background:linear-gradient(90deg,#d4a84d,#efce82); border-radius:inherit; }
.cr-positive { display:grid; justify-items:center; padding:22px 14px; text-align:center; background:#edf4ee; border-radius:17px; }
.cr-positive strong { color:var(--cr-green); font-family:Georgia,serif; font-size:2rem; }
.cr-positive span { color:var(--cr-muted); font-size:.75rem; }
.cr-filters { display:flex; gap:8px; margin:0 0 22px; padding-bottom:4px; overflow-x:auto; }
.cr-filters a { flex:0 0 auto; padding:8px 12px; color:#596a61; font-size:.77rem; font-weight:750; text-decoration:none; background:rgba(255,255,255,.66); border:1px solid var(--cr-line); border-radius:999px; }
.cr-filters a.is-active { color:#fff; background:var(--cr-green); border-color:var(--cr-green); }
.cr-layout { display:grid; grid-template-columns:minmax(0,1fr) 360px; align-items:start; gap:24px; }
.cr-list { display:grid; gap:14px; }
.cr-card { padding:20px; background:rgba(255,255,255,.9); border:1px solid var(--cr-line); border-radius:19px; box-shadow:0 8px 25px rgba(29,58,46,.06); }
.cr-card header { display:flex; align-items:center; gap:11px; }
.cr-avatar { width:43px; height:43px; flex:0 0 auto; display:grid; place-items:center; color:#fff; font-size:.8rem; font-weight:850; background:linear-gradient(145deg,#2c7659,#174235); border-radius:50%; }
.cr-card header > div:nth-child(2) { min-width:0; flex:1; display:grid; }
.cr-card header strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cr-card header div span { color:var(--cr-muted); font-size:.7rem; }
.cr-card__rating { flex:0 0 auto; color:var(--cr-muted); font-size:.72rem; font-weight:750; }
.cr-card__rating span { color:var(--cr-gold); font-size:1rem; }
.cr-card > p { margin:15px 0 0; color:#3f4d46; line-height:1.6; }
.cr-editor { position:sticky; top:90px; padding:23px; background:#fffdfa; border:1px solid var(--cr-line); border-radius:22px; box-shadow:0 16px 40px rgba(29,58,46,.09); }
.cr-editor h2 { margin:0 0 8px; color:var(--cr-green); font-family:Georgia,serif; }
.cr-editor > p:not(.cr-kicker) { color:var(--cr-muted); }
.cr-editor form { display:grid; gap:13px; margin-top:17px; }
.cr-editor label:not(.cr-checkbox) { display:flex; justify-content:space-between; color:#3d4c45; font-size:.78rem; font-weight:800; }
.cr-editor label small { color:var(--cr-muted); font-weight:500; }
.cr-editor textarea { width:100%; resize:vertical; padding:12px; color:var(--cr-ink); font:inherit; line-height:1.5; background:#fff; border:1px solid var(--cr-line); border-radius:12px; outline:none; }
.cr-editor textarea:focus { border-color:rgba(43,112,85,.5); box-shadow:0 0 0 3px rgba(43,112,85,.08); }
.cr-rating-input { margin:0; padding:0; border:0; }
.cr-rating-input legend { margin-bottom:5px; color:#3d4c45; font-size:.78rem; font-weight:800; }
.cr-rating-input > div { width:max-content; display:flex; flex-direction:row-reverse; }
.cr-rating-input input { position:absolute; opacity:0; pointer-events:none; }
.cr-rating-input label { padding:0 2px; color:#d5d5ce; font-size:1.8rem; cursor:pointer; }
.cr-rating-input label:hover,.cr-rating-input label:hover~label,.cr-rating-input input:checked~label { color:var(--cr-gold); }
.cr-checkbox { display:flex; align-items:flex-start; gap:8px; color:#56665e; font-size:.78rem; line-height:1.4; }
.cr-checkbox input { margin-top:2px; accent-color:var(--cr-green-2); }
.cr-empty { display:grid; justify-items:center; padding:45px 25px; text-align:center; color:var(--cr-muted); background:rgba(255,255,255,.72); border:1px dashed rgba(24,66,53,.2); border-radius:20px; }
.cr-empty > div { color:var(--cr-gold); font-size:2rem; }
.cr-empty h1,.cr-empty h2 { margin:5px 0; color:var(--cr-green); font-family:Georgia,serif; }
.cr-empty p { margin:0 0 16px; }
@media(max-width:850px){.cr-summary{grid-template-columns:180px 1fr}.cr-positive{grid-column:1/-1}.cr-layout{grid-template-columns:1fr}.cr-editor{position:static;grid-row:1}.cr-hero{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.cr-page{padding-inline:12px}.cr-hero{padding:25px 20px;border-radius:21px}.cr-summary{grid-template-columns:1fr}.cr-breakdown{width:100%}.cr-positive{grid-column:auto}.cr-button--outline{width:100%}}
