:root{color:#1e1f22;background:#aeb6c0;--accent: rgba(220, 188, 91, .58);--accent-solid: #d2b35a;--accent-soft: rgba(220, 188, 91, .2);--glass-border: rgba(255, 255, 255, .56);--glass-shadow: 0 22px 64px rgba(32, 38, 44, .16);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,a,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 78% 16%,rgba(220,188,91,.2),transparent 28%),linear-gradient(135deg,#aab2bd,#c3cad1)}.auth-panel{width:min(460px,100%);background:#fbf9ebb8;border:1px solid var(--glass-border);border-radius:28px;padding:26px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(22px) saturate(1.08);backdrop-filter:blur(22px) saturate(1.08)}.brand-mark,.topbar,.top-actions,.metric,.brand-line,.sidebar-brand,.sidebar-nav button,.panel-head,.search-box,.detail-hero,.detail-hero p,.section-title,.policy-hero,.policy-row,.icon-action{display:flex;align-items:center}.brand-mark{gap:14px;margin-bottom:22px}.brand-mark svg{color:#2b2d31}.brand-mark h1{font-size:22px;line-height:1.25}.brand-mark p,.brand-line p,.panel-head p,.detail-hero p,.section-title span,.company-row small,.metric span,.count-tile span{color:#6b6d70}.auth-form{display:grid;gap:14px}label{color:#5b5c5f;font-size:13px;display:grid;gap:7px}input{width:100%;border:1px solid #ded9c2;border-radius:14px;background:#ffffff94;color:#1e1f22;min-height:42px;padding:0 13px;outline:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}input:focus{border-color:var(--accent-solid);box-shadow:0 0 0 4px var(--accent-soft)}.primary-action{border:1px solid rgba(126,105,36,.08);background:linear-gradient(135deg,#dcbc5bad,#d6b85c6b);color:#25262a;min-height:44px;border-radius:999px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;box-shadow:inset 0 1px #ffffff61,0 12px 26px #5e50201f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.primary-action:disabled,.ghost-button:disabled{opacity:.65;cursor:not-allowed}.alert{border:1px solid #efb4a4;background:#fff0e9;color:#9d3f2d;border-radius:16px;padding:10px 12px;font-size:14px}.app-shell{min-height:100vh;width:100vw;background:radial-gradient(circle at 82% 18%,rgba(220,195,110,.38),transparent 25%),radial-gradient(circle at 0% 100%,rgba(210,218,223,.72),transparent 36%),#aeb6c0}.dashboard-frame{width:100vw;min-height:100vh;background:linear-gradient(135deg,#f1f2f4d6,#f8f8efcc 56%,#ddca8457);padding:clamp(18px,2vw,34px);overflow:auto;-webkit-backdrop-filter:blur(18px) saturate(1.04);backdrop-filter:blur(18px) saturate(1.04)}.admin-shell-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;min-height:calc(100vh - (clamp(18px,2vw,34px)*2))}.sidebar{position:sticky;top:clamp(18px,2vw,34px);height:calc(100vh - (clamp(18px,2vw,34px)*2));border:1px solid rgba(255,255,255,.52);border-radius:22px;background:#ffffff80;box-shadow:0 18px 38px #20262c1a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:16px}.sidebar-brand{gap:10px;margin-bottom:18px}.sidebar-brand .brand-pill{height:38px;font-size:17px;padding:0 13px}.sidebar-nav{display:grid;gap:8px}.sidebar-nav button{width:100%;min-height:42px;border:1px solid transparent;border-radius:14px;background:transparent;color:#2a2c30;gap:10px;padding:0 12px;text-align:left}.nav-badge{margin-left:auto;min-width:24px;height:24px;border-radius:999px;background:#dcbc5b57;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}.sidebar-nav button.active{border-color:#7e692438;background:#fcf5d5d1;font-weight:800}.admin-main{min-width:0}.topbar{justify-content:space-between;gap:12px;margin-bottom:clamp(18px,2.2vw,34px)}.brand-line{gap:14px;min-width:0}.brand-line h1{font-size:clamp(22px,3vw,32px);line-height:1.15}.brand-pill{height:42px;display:inline-flex;align-items:center;padding:0 17px;border:1px solid #2d2f33;border-radius:999px;font-size:20px;line-height:1}.top-actions{gap:10px}.ghost-button{border:0;min-height:40px;padding:0 14px;border-radius:999px;background:#ffffff7a;color:#2a2c30;display:inline-flex;align-items:center;gap:8px}.icon-only-button{width:40px;min-width:40px;padding:0;justify-content:center;flex:0 0 40px}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.metric{min-height:92px;gap:12px;padding:16px;border:1px solid rgba(255,255,255,.48);border-radius:18px;background:#ffffff6b;box-shadow:0 14px 30px #20262c14}.metric strong{display:block;font-size:26px;line-height:1.1}.metric span,.count-tile span{display:block;margin-top:4px;font-size:13px}.admin-layout{display:grid;grid-template-columns:minmax(320px,390px) minmax(0,1fr);gap:18px;align-items:start}.company-panel,.detail-panel,.policy-page{border:1px solid rgba(255,255,255,.52);border-radius:22px;background:#ffffff75;box-shadow:0 18px 38px #20262c1a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.company-panel{padding:16px}.panel-head{justify-content:space-between;margin-bottom:14px;gap:12px}.panel-head>div{min-width:0}.panel-head h2,.detail-panel h2{font-size:20px}.search-box{grid-template-columns:auto 1fr;gap:8px;border:1px solid #ded9c2;border-radius:999px;background:#ffffff8f;padding:0 12px;margin-bottom:12px}.search-box input{border:0;background:transparent;min-height:40px;padding:0;box-shadow:none}.company-list{display:grid;gap:8px;max-height:calc(100vh - 306px);overflow:auto;padding-right:2px}.company-row{width:100%;min-height:66px;border:1px solid rgba(222,217,194,.76);border-radius:16px;background:#ffffff6b;color:#25262a;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}.company-row span{min-width:0}.company-row strong,.company-row small{display:block;overflow-wrap:anywhere}.company-row strong{line-height:1.35}.company-row small{margin-top:4px;line-height:1.45}.company-row em{min-width:36px;height:36px;border-radius:999px;background:#dcbc5b52;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-weight:800}.company-row.active{border-color:#7e692440;background:#fcf5d5d1}.detail-panel,.policy-page{min-height:560px;padding:clamp(18px,2vw,26px)}.approval-page{min-height:560px;display:grid;gap:18px}.approval-layout.full-list{grid-template-columns:minmax(0,1fr)}.full-screen-list-panel{min-height:calc(100vh - 290px)}.policy-hero{justify-content:space-between;gap:18px;padding-bottom:20px;border-bottom:1px solid rgba(222,217,194,.72)}.policy-hero h2{margin:6px 0 10px;font-size:clamp(24px,3vw,34px)}.policy-hero p{color:#6b6d70}.platform-switch,.filter-row,.review-row-meta,.review-actions{display:flex;align-items:center}.platform-switch{gap:10px;flex-wrap:wrap}.platform-switch button{min-height:42px;border:1px solid rgba(222,217,194,.88);border-radius:999px;background:#ffffff85;color:#2a2c30;padding:0 14px;display:inline-flex;align-items:center;gap:8px}.platform-switch button.active{border-color:#7e692438;background:#fcf5d5d1;font-weight:800}.platform-count{min-width:24px;height:24px;border-radius:999px;background:#dcbc5b52;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}.review-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric.compact{min-height:76px}.filter-row{gap:8px;flex-wrap:wrap;margin-bottom:12px}.filter-chip{min-height:34px;border:1px solid rgba(222,217,194,.88);border-radius:999px;background:#ffffff85;color:#4a4b4f;padding:0 12px}.filter-chip.active{border-color:#7e69243d;background:#fcf5d5d1;color:#2a2c30;font-weight:800}.review-list{max-height:calc(100vh - 402px)}.review-row{align-items:flex-start;padding:14px 16px}.review-row>span{flex:1;min-width:0}.review-row-meta{flex-direction:column;align-items:flex-end;gap:8px;flex:0 0 auto}.review-row-meta small{color:#6b6d70}.status-pill{min-width:74px;min-height:30px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;border:1px solid #d8d2b8;background:#ffffff9e;color:#69655a}.status-pill.pending{background:#fff6d6e0;border-color:#c6a3334d;color:#8a6b12}.status-pill.approved{background:#e3f5e8e6;border-color:#54995e47;color:#2b7040}.status-pill.rejected{background:#ffece8eb;border-color:#be5e463d;color:#a24633}.status-pill.hero{min-width:88px}.review-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 22px}.review-note textarea{width:100%;min-height:132px;border:1px solid #ded9c2;border-radius:16px;background:#ffffff94;color:#1e1f22;padding:12px 13px;outline:none;resize:vertical}.review-note textarea:disabled{color:#6b6d70;background:#f4f2e8c7;cursor:not-allowed}.review-note textarea:focus{border-color:var(--accent-solid);box-shadow:0 0 0 4px var(--accent-soft)}.review-locked-tip{border:1px solid rgba(212,193,124,.5);background:#fdf7dde6;color:#81651f;border-radius:14px;padding:10px 12px;font-size:14px}.review-actions{justify-content:flex-end;gap:10px;margin-top:18px}.danger-button{color:#9d3f2d}.review-actions button:disabled{cursor:not-allowed}.upload-panel{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1.2fr) auto;gap:12px;align-items:end;margin:18px 0}.upload-panel input[type=file]{padding-top:9px}.policy-list{display:grid;gap:10px}.policy-row{min-height:72px;border:1px solid rgba(222,217,194,.76);border-radius:16px;background:#ffffff6b;gap:12px;padding:12px}.policy-row>div{min-width:0;flex:1}.policy-row strong,.policy-row span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.policy-row span{color:#6b6d70;margin-top:5px;font-size:13px}.policy-row small{display:block;color:#83806f;margin-top:6px;line-height:1.45}.policy-status{min-width:72px;height:34px;border:1px solid #d8d2b8;border-radius:999px;background:#ffffff85;color:#69655a;font-size:12px;font-weight:800}.policy-status.published{background:#25262a;color:var(--accent-solid);border-color:#25262a}.icon-action{width:38px;height:38px;border:1px solid rgba(222,217,194,.76);border-radius:12px;background:#ffffff7a;color:#2a2c30;justify-content:center;text-decoration:none}.icon-action.danger{color:#9d3f2d}.detail-hero{justify-content:space-between;gap:18px;padding-bottom:20px;border-bottom:1px solid rgba(222,217,194,.72)}.detail-hero h2{margin:6px 0 10px;font-size:clamp(24px,3vw,34px)}.detail-hero p{gap:6px;flex-wrap:wrap}.eyebrow{color:#7b6727;font-size:13px;font-weight:800}.count-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 22px}.count-tile{min-height:82px;border:1px solid rgba(222,217,194,.76);border-radius:16px;background:#ffffff6b;padding:14px}.count-tile strong{display:block;font-size:25px;line-height:1.25;overflow-wrap:anywhere}.section-title{justify-content:space-between;margin-bottom:10px}.user-table{border:1px solid rgba(222,217,194,.76);border-radius:16px;overflow:hidden;background:#ffffff5c}.table-head,.table-row{display:grid;grid-template-columns:1fr minmax(220px,1.4fr) 120px 120px;gap:12px;align-items:center;padding:12px 14px}.table-head{color:#6b6d70;font-size:13px;background:#efecdd9e}.table-row{min-height:54px;border-top:1px solid rgba(222,217,194,.6)}.table-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state{color:#6b6d70;padding:24px;text-align:center}@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.review-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-layout,.admin-shell-layout{grid-template-columns:1fr}.sidebar{position:static;height:auto}.sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.company-list{max-height:360px}}@media(max-width:760px){.topbar,.detail-hero,.policy-hero{align-items:flex-start;flex-direction:column}.top-actions{width:100%}.ghost-button{flex:1;justify-content:center}.metric-grid,.count-grid,.review-metric-grid,.review-detail-grid,.upload-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-panel .primary-action{grid-column:1 / -1}.table-head{display:none}.table-row{grid-template-columns:1fr;gap:5px}.review-row{flex-direction:column}.review-row-meta{width:100%;align-items:flex-start;flex-direction:row;justify-content:space-between}.review-actions{justify-content:stretch;flex-direction:column}.review-actions button{width:100%}}@media(max-width:480px){.dashboard-frame{padding:14px}.brand-line{align-items:flex-start;flex-direction:column;gap:8px}.metric-grid,.count-grid,.review-metric-grid,.review-detail-grid,.upload-panel,.sidebar-nav{grid-template-columns:1fr}}
