/* SSV workspace — soft monochrome surfaces and mint status accents. */
@font-face{font-family:SSVGeist;src:url('/static/fonts/Geist.woff2') format('woff2');font-weight:100 900;font-display:swap}
body:has(#shell:not([hidden])){background:#e9e9ed;color-scheme:light}
#shell,#modal,#toast{--ink:#17191c;--muted:#6f7379;--line:#e8e9eb;--teal:#148465;font-family:SSVGeist,Arial,sans-serif;color:#17191c;color-scheme:light}
#shell{display:block;max-width:1680px;margin:20px auto;min-height:calc(100vh - 40px);background:#f6f6f7;border:3px solid #fff;border-radius:30px;overflow:hidden;box-shadow:0 18px 70px #27283b08}
#shell>aside{display:grid;grid-template-columns:180px minmax(0,1fr);gap:8px 24px;position:static;height:auto;padding:24px 28px 14px;background:#f6f6f7;border:0;color:#17191c}
#shell .brand{grid-column:1;grid-row:1/3;align-self:center;margin:0;padding:12px 0;color:#151719;font-size:23px;letter-spacing:-1px}
#shell .brand img{filter:grayscale(1) brightness(.4);width:30px;height:34px}
#shell .brand b{font-size:9px;letter-spacing:0;color:#777b80;display:block;max-width:140px}
#shell>aside>.nav-label,#shell>aside>.sidebar-foot{display:none}
#shell>aside>nav{grid-column:2;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:0;margin:0}
#shell nav a{padding:11px 15px;margin:0!important;border:1px solid transparent;border-radius:28px;background:#fff;color:#53575c;box-shadow:none;gap:7px;text-decoration:none;white-space:nowrap}
#shell nav a span{font-size:11px;font-weight:500}
#shell nav a:hover{background:#e9ebed;color:#111}
#shell nav a.active{background:#191b1e;color:#fff;border-color:#191b1e;box-shadow:0 3px 8px #0000000a}
#shell .nav-icon{width:16px;height:16px}
#shell .workspace{background:none}
#shell .topbar{height:60px;padding:0 30px;background:transparent;border-top:1px solid #ebebee;border-bottom:0;backdrop-filter:none}
#shell .topbar>span{color:#72767b;font-size:9px;letter-spacing:1.3px}
#shell .topbar select{background:#fff;color:#35393e;border:1px solid #e8e9eb;border-radius:24px;max-width:250px;font-size:11px}
#shell .user-avatar{background:#daf4e9;border:0;color:#24674f;width:32px;height:32px}
#shell main{max-width:none;min-height:calc(100vh - 280px);padding:22px 30px 32px}
#shell h1,#shell h2,#shell h3,#modal h1,#modal h2,#modal h3{font-family:SSVGeist,Arial,sans-serif;color:#17191c;font-weight:500}
#shell h1{font-size:31px;letter-spacing:-1.1px}#shell h2,#modal h2{letter-spacing:-.6px}
#shell .page-head{padding:5px 0 22px;margin-bottom:8px;background:none;border:0;border-radius:0;overflow:visible}
#shell .page-head::after,#shell .stat::after{display:none}
#shell .page-head p{color:#777b80;font-size:12px}#shell .eyebrow,#modal .eyebrow{color:#82868b;letter-spacing:1.5px;font-size:9px}
#shell a{color:#197b61}#shell small,#shell .muted,#modal small,#modal .muted{color:#72767b}
#shell button,#shell a.icon-action,#modal button{color:#383c42;background:#fff;border:1px solid #e6e8eb;box-shadow:none}
#shell button:hover,#shell a.icon-action:hover,#modal button:hover{background:#edf0ef;border-color:#c7d2cd}
#shell .primary,#shell .guide-open,#modal .primary{background:#191b1e;color:#fff;border-color:#191b1e;box-shadow:0 3px 8px #191b1e0b}
#shell .primary:hover,#shell .guide-open:hover,#modal .primary:hover{background:#34383c;border-color:#34383c;color:#fff}
#shell :focus-visible,#modal :focus-visible{outline:2px solid #168663;outline-offset:3px}
#shell label,#modal label{color:#565b61;font-size:12px}
#shell input,#shell select,#shell textarea,#modal input,#modal select,#modal textarea{background:#fafbfb;border:1px solid #e0e4e5;border-radius:12px;color:#262b2e;box-shadow:none}
#shell option,#modal option{background:white;color:#262b2e}#shell input::placeholder,#modal input::placeholder{color:#969ba0}
#shell input[type=checkbox],#modal input[type=checkbox],#shell meter{accent-color:#2fb68b}
#shell .stats{gap:14px;margin-bottom:22px}
#shell .stat{border:1px solid #fff;border-radius:22px;padding:23px;background:white;box-shadow:none}
#shell .stat:first-child{background:#e2f7ee;border-color:#e2f7ee}
#shell .stat strong,#shell .stat.good strong{color:#23282b;font-size:39px;font-weight:450;margin:15px 0 12px;letter-spacing:-1.5px}
#shell .stat.warning strong{color:#b3572d}#shell .stat-label{color:#6e7676;font-size:10px;letter-spacing:.5px}
#shell .stat small{font-size:10px;color:#78817f}
#shell .panel{background:#fff;border:1px solid #fff;border-radius:22px;box-shadow:none;margin-bottom:20px}
#shell .panel-head{padding:22px 24px;border-color:#f0f1f2}#shell .panel-head h3{font-size:15px;color:#282c30}#shell .panel-body{padding:24px}
#shell table{font-size:12px}#shell th{background:#fafafa;color:#878b90;font-weight:500;font-size:10px;border-color:#efeff1;letter-spacing:.5px}
#shell td{color:#484d53;border-color:#eff0f2;padding-top:18px;padding-bottom:18px}#shell tr:hover td{background:#fafcfb}
#shell .badge,#modal .badge{background:#eff1f3;color:#6b7279;border:0;border-radius:20px;font-size:10px;font-weight:500;padding:5px 9px}
#shell .badge.COMPLIANT,#shell .badge.RESOLVED{background:#d7f5e8;color:#177653}
#shell .badge.NON_COMPLIANT,#shell .badge.CRITICAL,#shell .badge.overdue{background:#ffe6e3;color:#b73c39}
#shell .badge.HIGH,#shell .badge.OPEN,#shell .badge.PARTIALLY_COMPLIANT{background:#fff0d6;color:#986215}
#shell .badge.IN_PROGRESS{background:#e7edfc;color:#476db3}#shell .badge.RISK_ACCEPTED{background:#eeebf8;color:#746096}
#shell .score.good{color:#218268}#shell .score.bad{color:#b06441}
#shell .notice,#modal .notice{background:#edf8f3;border:1px solid #dcefe5;color:#44745f;border-radius:14px;font-size:12px}
#shell .empty,#modal .empty{color:#8a9095}#shell .empty h3{color:#545c62}#shell .empty-symbol{color:#bbcec4}
#shell .question-card,#modal .question-card{background:#fafcfb;border:1px solid #e5ece7;border-radius:15px}#shell .question-card summary{color:#35463c}
#shell .template-controls,#modal .template-controls{background:#fafbfa;border:1px solid #e6eae7;color:#303a33}
#shell .company-placeholder{background:#e8f3ed;color:#3c8064}#shell .company-logo{background:#fff;border-color:#e7ebe8}
#shell .token,#shell pre,#modal .token,#modal pre{background:#f1f5f3;color:#436153;border-radius:12px}
#shell .step>span{background:#e0f5e9;color:#37805e}#shell .step p{color:#808780}
#modal{background:#fff;border:1px solid #e3e7e5;border-radius:26px;box-shadow:0 30px 100px #131b2040}#modal::backdrop{background:#29322f50;backdrop-filter:blur(4px)}
#toast{background:#1c3027;color:#fff;border:0;box-shadow:0 6px 30px #10251c20}
#shell .safety-row{border-color:#e7ede9}#shell footer{color:#929998;border-color:#e8ecea;padding:20px 30px;font-size:10px}
#shell .guide-layout .guide-index{background:#fff;color:#363e39;border:1px solid #e5ebe7;position:sticky;border-radius:20px;display:block;height:auto}
#shell .guide-jump{background:transparent;border:0;color:#637069;border-radius:10px}#shell .guide-jump:hover{background:#edf5f0}
#shell .guide-meta{color:#77837c}#shell .guide-change{border-color:#e5ece7}#shell .guide-section h2{color:#2c3730}#shell .guide-section td{color:#515d55}
#shell .icon-action::before,#modal .icon-action::before{background:#202624;border-color:#202624;color:#fff;font-family:SSVGeist,Arial,sans-serif}
#shell meter::-webkit-meter-bar{background:#edf2ef}#shell meter::-webkit-meter-optimum-value,#shell meter::-webkit-meter-suboptimum-value,#shell meter::-webkit-meter-even-less-good-value{background:#4dc19b}#shell meter::-moz-meter-bar{background:#4dc19b}
#shell .error,#modal .error{color:#b83d39}
@media(min-width:1700px){#shell{margin:30px auto}}
@media(max-width:1100px){#shell>aside{grid-template-columns:150px minmax(0,1fr);gap:8px 16px;padding:20px}#shell nav a{padding:10px 12px}#shell nav a span{font-size:10px}#shell main{padding:20px}#shell .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){#shell{margin:8px;border-radius:22px;border-width:2px}#shell>aside{display:flex;flex-direction:column;gap:10px;padding:18px 14px 12px}#shell .brand{align-self:flex-start;font-size:21px;padding:0;margin:0}#shell>aside>nav{width:100%;flex-wrap:nowrap;overflow-x:auto;min-width:0;padding-bottom:4px}#shell nav a{flex:none;padding:10px 12px}#shell .topbar{padding:10px 14px;height:auto;gap:8px;flex-wrap:wrap}#shell .topbar>div{width:100%;gap:7px}#shell .topbar select{max-width:calc(100% - 130px);flex:1}#shell main{padding:20px 14px}#shell h1{font-size:27px}#shell .page-head{gap:10px}#shell .stats{gap:10px}#shell .stat{padding:18px 15px;border-radius:18px}#shell .stat strong{font-size:32px}#shell .panel-head,#shell .panel-body{padding:18px}#shell footer{padding:18px 14px;gap:12px;flex-wrap:wrap}#shell .guide-layout .guide-index{position:static}}
html:has(#shell:not([hidden])){background:#e9e9ed;color-scheme:light}
#shell{width:calc(100% - 40px)}
#modal .dialog-close.icon-action{position:absolute;right:18px;top:18px}
@media(max-width:760px){#shell{width:calc(100% - 16px)}}
/* Left navigation, preserving the light workspace theme. */
#shell{display:grid;grid-template-columns:226px minmax(0,1fr);overflow:clip}
#shell>aside{display:flex;flex-direction:column;position:sticky;top:0;align-self:start;height:100vh;overflow-y:auto;padding:30px 16px 22px;gap:0;background:#f6f6f7;border-right:1px solid #e7e9e9}
#shell .brand{align-self:flex-start;margin:0 8px 28px;padding:0}
#shell>aside>.nav-label{display:block;color:#929996;font-size:9px;padding:0 12px;margin:18px 0 12px}
#shell>aside>nav{display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:5px;width:100%;overflow:visible;padding:0}
#shell nav a{padding:12px 13px;white-space:normal;background:transparent}
#shell nav a span{font-size:11px}
#shell nav a.active{background:#191b1e;color:white}
#shell>aside>.sidebar-foot{display:block;margin-top:auto;padding:24px 10px 0;border-color:#e5eae6;color:#76817a;font-size:10px}
#shell .sidebar-foot small{color:#8d968f}#shell .status-dot{background:#50b891;box-shadow:none}
#shell .topbar{border-top:0;border-bottom:1px solid #e9ecea;height:72px}
@media(max-width:1100px){#shell{grid-template-columns:200px minmax(0,1fr)}}
@media(max-width:760px){#shell{grid-template-columns:62px minmax(0,1fr);margin:0;width:100%;border:0;border-radius:0;min-height:100vh}#shell>aside{padding:20px 7px;height:100dvh}#shell .brand{font-size:0;margin:0 auto 25px;gap:0}#shell .brand b,#shell>aside>.nav-label,#shell>aside>.sidebar-foot{display:none}#shell .brand img{width:30px}#shell>aside>nav{gap:8px;margin-bottom:20px}#shell nav a{justify-content:center;padding:13px 10px;position:relative}#shell nav a span{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#shell .nav-icon{width:20px;height:20px}#shell .topbar{height:auto;padding:12px 10px}#shell .topbar>div{flex-wrap:wrap}#shell .topbar select{max-width:100%;flex-basis:100%}#shell main{padding:20px 12px}#shell .stats{grid-template-columns:1fr}#shell .page-head{align-items:flex-start}#shell h1{font-size:24px}}
