:root{
    --bg:#f6f0e7;
    --surface:#fffaf3;
    --surface-2:#f9f1e6;
    --ink:#2c241d;
    --muted:#7a6856;
    --line:#e7d8c3;
    --primary:#2f2a27;
    --primary-2:#b79563;
    --accent:#7a2830;
    --success:#2f7a5a;
    --success-bg:#e8f6ee;
    --warn:#b6771a;
    --warn-bg:#fff2dd;
    --danger:#a74141;
    --danger-bg:#fff0f0;
    --shadow:0 16px 36px rgba(61,38,18,.10);
    --shadow-hover:0 20px 48px rgba(61,38,18,.16);
    --radius:22px;
}
*{box-sizing:border-box}
body{
    margin:0;
    font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    background:
      radial-gradient(circle at top right, rgba(183,149,99,.18), transparent 26%),
      radial-gradient(circle at left top, rgba(122,40,48,.10), transparent 30%),
      linear-gradient(180deg,#f8f1e8 0%,#f2e7d9 100%);
    color:var(--ink);
}
a{color:var(--primary);text-decoration:none}
a:hover{text-decoration:underline}
.container{width:min(1180px,calc(100% - 32px));margin:0 auto}
.site-header{
    position:sticky;top:0;z-index:40;
    backdrop-filter:blur(14px);
    background:rgba(248,241,232,.88);
    border-bottom:1px solid rgba(221,227,234,.9);
}
.header-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.brand{display:inline-flex;align-items:center;min-height:54px;color:var(--ink)}
.brand:hover{text-decoration:none}
.brand-text{font-weight:900;font-size:1.18rem;letter-spacing:.05em;text-transform:uppercase}
.brand-logo{display:block;max-height:54px;max-width:240px;width:auto;height:auto;object-fit:contain}
.brand-preview-box{display:grid;gap:10px;padding:14px;border:1px dashed var(--line);border-radius:16px;background:rgba(255,255,255,.55)}
.brand-preview{display:block;max-height:82px;max-width:280px;width:auto;height:auto;object-fit:contain}
.inline-check{display:flex;align-items:center;gap:10px;font-weight:600}
.inline-check input{width:auto}
.admin-panels{align-items:start}
.admin-stack{display:grid;gap:20px}
.section-head{display:grid;gap:6px;margin-bottom:16px}
.simulator-section .grid-3,.simulator-section .grid-1{align-items:start}
.admin-user-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.admin-user-meta{font-size:.92rem}
.site-nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.site-nav a{padding:10px 12px;border-radius:999px;transition:background .2s ease, transform .2s ease}
.site-nav a:hover{background:rgba(255,255,255,.86);text-decoration:none;transform:translateY(-1px)}
.menu-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 10px}
.page-shell{padding:30px 0 60px}
.card{
    background:linear-gradient(180deg,var(--surface) 0%,var(--surface-2) 100%);
    border:1px solid rgba(221,227,234,.85);
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    padding:24px;
    transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.glow-card{position:relative;overflow:hidden}
.glow-card::before{
    content:"";position:absolute;inset:auto -15% 70% auto;width:180px;height:180px;border-radius:50%;
    background:radial-gradient(circle, rgba(159,131,83,.18) 0%, rgba(159,131,83,0) 72%);
    pointer-events:none;
}
.card:hover{box-shadow:var(--shadow-hover)}
.hero{margin-bottom:24px}
.eyebrow{display:inline-block;padding:8px 12px;border-radius:999px;background:#eef3f8;color:var(--primary);font-weight:700;font-size:.85rem}
.check-list{padding-left:18px;color:var(--muted)}
.stack-form{display:grid;gap:16px}
label{display:grid;gap:8px;font-weight:600}
input,select,textarea{
    width:100%;padding:13px 14px;border-radius:14px;border:1px solid var(--line);
    background:#fbfcfd;color:var(--ink);font:inherit;transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease
}
input:focus,select:focus,textarea:focus{outline:none;border-color:rgba(23,50,74,.55);box-shadow:0 0 0 4px rgba(23,50,74,.08)}
textarea{resize:vertical}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:14px;padding:13px 18px;font-weight:700;cursor:pointer;transition:transform .18s ease, box-shadow .18s ease, background .18s ease}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn.primary{background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;box-shadow:0 12px 24px rgba(122,40,48,.18)}
.btn.secondary{background:#f0f3f7;color:var(--ink);border:1px solid var(--line)}
.btn.small{padding:.45rem .75rem;font-size:.85rem;width:fit-content}
.alert{padding:15px 18px;border-radius:14px;margin-bottom:20px}
.alert.success{background:#ebf8f3;color:var(--success);border:1px solid #cfeedd}
.alert.error{background:#fff1f1;color:var(--danger);border:1px solid #f4d2d2}
.grid-2,.grid-3,.stats-grid,.qa-grid,.grid-4{display:grid;gap:20px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid-1{display:grid;gap:20px;grid-template-columns:1fr}
.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.qa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.stat-card,.link-card{display:flex;flex-direction:column;gap:10px}
.stat-card span{color:var(--muted);font-size:.92rem}
.stat-card strong{font-size:1.25rem}
.status-card strong{font-size:1.1rem}
.link-card h2,.document-card h2,.proposal-article h2,.q-card h2{margin:.1rem 0}
.document-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.content-card,.proposal-article,.q-card{margin-bottom:18px}
.rich-text{color:var(--ink);line-height:1.72}
.rich-text p{margin:0 0 1rem}
.rich-text ul{margin:.25rem 0 1rem 1.25rem}
.top-gap{margin-top:20px}
.vote-inline{display:flex;gap:20px;flex-wrap:wrap}
.big-number{font-size:2rem;font-weight:800;margin:.25rem 0}
.table-wrap{overflow:auto}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.table th{width:42%;color:var(--muted);font-weight:700}
.inline-pair,.nested-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.muted{color:var(--muted)}
.info-note{padding:14px 16px;border-radius:16px;background:#f5f8fc;border:1px solid var(--line);display:grid;gap:6px}
.reference-box{padding:18px;border-radius:18px;background:linear-gradient(180deg,#f8fbff 0%,#f5f7fb 100%);border:1px solid var(--line);display:grid;gap:16px}
.reference-box-head h2{margin:.1rem 0}.reference-box-head p{margin:0}
.shortcut-card{display:flex;flex-direction:column;gap:12px;min-height:180px;text-decoration:none;position:relative;overflow:hidden}
.shortcut-card:hover{text-decoration:none;transform:translateY(-3px)}
.shortcut-card::after{content:"";position:absolute;inset:auto -30px -40px auto;width:120px;height:120px;background:radial-gradient(circle, rgba(159,131,83,.16) 0%, rgba(159,131,83,0) 70%)}
.shortcut-logo{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 22px rgba(122,40,48,.22)}
.shortcut-logo svg{width:28px;height:28px;display:block}
.presentation-hero .rich-text{margin-top:16px}
.documents-stack{display:grid;gap:20px}
.document-viewer-card{display:grid;gap:18px}
.document-header-row{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;flex-wrap:wrap}
.pdf-frame-wrap{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#f8fafc}
.pdf-frame{width:100%;height:720px;border:0;background:#fff}
.proposal-matrix-table th,.proposal-matrix-table td{text-align:center}
.proposal-matrix-table thead th:first-child,.proposal-matrix-table tbody th{text-align:left}
.article-vote-inline label{font-weight:700;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:#f8fafc}
.vote-results{padding:16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fffdf9,#f8f4ed)}
.vote-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0}
.result-chip{padding:16px;border-radius:16px;border:1px solid var(--line);display:grid;gap:6px}
.result-chip span{color:var(--muted);font-weight:700}
.result-chip strong{font-size:1.08rem}
.result-chip em{font-style:normal;font-weight:800}
.result-chip-good{background:linear-gradient(180deg,var(--success-bg),#fbfffd);border-color:#cfeedd;color:var(--success)}
.result-chip-bad{background:linear-gradient(180deg,var(--danger-bg),#fffafa);border-color:#f0c7c7;color:var(--danger)}
.highlight-row.metric-good td,.metric-good{background:linear-gradient(180deg,var(--success-bg),#f7fffb)}
.highlight-row.metric-warn td,.metric-warn{background:linear-gradient(180deg,var(--warn-bg),#fffaf1)}
.highlight-row.metric-bad td,.metric-bad{background:linear-gradient(180deg,var(--danger-bg),#fff9f9)}
.metric-good{border-color:#cfeedd}.metric-warn{border-color:#f2dfb7}.metric-bad{border-color:#f0c7c7}
.metric-good .big-number,.metric-good strong,.highlight-row.metric-good td{color:var(--success)}
.metric-warn .big-number,.metric-warn strong,.highlight-row.metric-warn td{color:var(--warn)}
.metric-bad .big-number,.metric-bad strong,.highlight-row.metric-bad td{color:var(--danger)}
.admin-collapse{border:1px solid var(--line);border-radius:16px;padding:14px 16px;background:#fbfcfd}
.admin-collapse+ .admin-collapse{margin-top:12px}
.admin-collapse summary{cursor:pointer;font-weight:800;list-style:none}
.admin-collapse summary::-webkit-details-marker{display:none}
.admin-collapse summary::after{content:'+';float:right;color:var(--muted);font-size:1.1rem}
.admin-collapse[open] summary::after{content:'−'}
.site-footer{border-top:1px solid var(--line);background:rgba(255,250,243,.92)}
.footer-inner{padding:24px 0;display:flex;justify-content:space-between;gap:20px;align-items:center;color:var(--muted)}
.footer-links{display:flex;gap:14px;flex-wrap:wrap}
@media (max-width: 960px){
    .grid-3,.stats-grid,.qa-grid{grid-template-columns:1fr}
    .grid-4,.admin-user-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .pdf-frame{height:520px}
}
@media (max-width: 820px){
    .menu-toggle{display:block}
    .site-nav{display:none;position:absolute;top:64px;left:16px;right:16px;background:#fff;padding:16px;border-radius:18px;border:1px solid var(--line);box-shadow:var(--shadow)}
    .site-nav.open{display:flex;flex-direction:column;align-items:stretch}
    .site-nav a{background:#f8fafc}
    .grid-2{grid-template-columns:1fr}
    .footer-inner{flex-direction:column;align-items:flex-start}
}
@media (max-width: 700px){
    .grid-4,.admin-user-grid{grid-template-columns:1fr}
    .pdf-frame{height:420px}
    .brand-logo{max-height:44px;max-width:180px}
}

.admin-single-column > .card, .admin-single-column > form.card {width:100%;}
.admin-single-column {grid-template-columns:1fr !important;}
.metric-good{background:linear-gradient(180deg,#e9f9ef,#f9fffb) !important;border-color:#9ed8b1 !important;}
.metric-warn{background:linear-gradient(180deg,#fff3d9,#fffaf0) !important;border-color:#e7ca86 !important;}
.metric-bad{background:linear-gradient(180deg,#ffe8e8,#fff8f8) !important;border-color:#e0a4a4 !important;}
.result-chip-good{background:linear-gradient(180deg,#e8f9ef,#fbfffd) !important;}
.result-chip-bad{background:linear-gradient(180deg,#ffe7e7,#fffafa) !important;}
.document-viewer-card .pdf-frame-wrap{min-height:420px;}
.document-viewer-card .pdf-frame{display:block;}
@media (max-width: 700px){
  .document-header-row{flex-direction:column;}
  .document-actions{width:100%;}
  .document-actions .btn{flex:1 1 auto;}
}
