:root{--ink:#172e29;--muted:#586b64;--green:#173e36;--accent:#236451;--pale:#e7f0e9;--paper:#f5f6f2;--white:#fff;--line:#d7dfd8;--danger:#a8332b;--warning:#805c15;--shadow:0 10px 32px #18382b08;--radius:16px;font-family:Arial,"Helvetica Neue",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:46px;border:1px solid var(--line);border-radius:9px;padding:10px 17px;background:#fff;color:var(--ink);font-weight:600;transition:background .15s}button:hover{background:var(--pale)}button:disabled{opacity:.55;cursor:wait}button.primary{background:var(--green);color:#fff;border-color:var(--green)}button.primary:hover{background:#245a4c}button.subtle{background:transparent;border-color:transparent}button.danger{color:var(--danger)}:focus-visible{outline:3px solid #c58d39;outline-offset:3px}a{color:var(--accent)}input,textarea,select{border:1px solid #a4b4ab;border-radius:9px;background:#fff;color:var(--ink);padding:12px;width:100%;min-height:48px}textarea{resize:vertical;min-height:116px;line-height:1.6}label{display:block;font-weight:600}label input,label textarea,label select{margin-top:8px}small,.muted{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:32px;line-height:1.2;letter-spacing:-1px}h2{font-size:23px;line-height:1.3}h3{font-size:17px}button svg{width:19px;height:19px;vertical-align:middle}.eyebrow{font-size:11px;letter-spacing:1.7px;font-weight:700;text-transform:uppercase}.brand{display:flex;gap:12px;align-items:center}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:var(--green);color:#fff;font-size:24px;font-weight:700;letter-spacing:-2px}.brand strong{display:block;letter-spacing:2px;font-size:19px}.brand small{display:block;font-size:11px;letter-spacing:1px}.skip{position:absolute;left:16px;top:-80px;z-index:100;background:#fff;padding:12px}.skip:focus{top:12px}.loading{padding:80px 24px;text-align:center}.error{color:var(--danger);background:#fff1ed;border-radius:8px;padding:12px;font-size:14px}.error:empty{display:none}.success{color:var(--accent)}.stack{display:grid;gap:20px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.between{justify-content:space-between}.wide{width:100%}.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:20px;font-size:12px;font-weight:600;background:var(--pale);color:var(--green)}.pill.pending{background:#f6ecd7;color:var(--warning)}.pill.outline{background:transparent;border:1px solid var(--line)}.dot{height:6px;width:6px;border-radius:50%;background:currentColor}.card{padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow)}.login{min-height:100svh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.login-story{background:var(--green);color:#fff;padding:54px clamp(32px,6vw,96px);display:flex;flex-direction:column;justify-content:space-between;gap:70px}.login-story .brand-mark{background:#fff;color:var(--green)}.login-story .brand small{color:#d1dfd5}.login-story h1{font-size:clamp(38px,4.3vw,64px);max-width:540px;line-height:1.09}.login-story p{color:#d1dfd5;max-width:430px;line-height:1.7}.login-story .eyebrow{color:#c9d7a7;margin-bottom:24px}.login-story footer{border-top:1px solid #ffffff30;padding-top:22px;font-size:12px;color:#d1dfd5}.login-side{padding:48px 28px;display:grid;place-items:center}.login-form{width:100%;max-width:380px}.login-form h2{font-size:30px;margin-bottom:12px}.login-form>p{font-size:15px;margin-bottom:32px}.login-form form{display:grid;gap:21px}.password-wrap{position:relative}.password-wrap input{padding-right:64px}.password-wrap button{position:absolute;right:3px;top:11px;border:0;padding:8px;font-size:12px}.login-foot{margin-top:28px;font-size:12px;line-height:1.7}.login-stats{display:flex;gap:48px}.login-stats strong{display:block;font-size:28px}.login-stats span{font-size:13px;color:#d1dfd5}.shell{min-height:100svh;display:grid;grid-template-columns:246px 1fr}.sidebar{background:#fff;border-right:1px solid var(--line);padding:28px 22px;position:sticky;top:0;height:100svh;display:flex;flex-direction:column;gap:32px}.sidebar nav{display:grid;gap:8px}.nav-item{text-align:left;border:0;background:transparent;color:var(--muted);display:flex;align-items:center;gap:11px;font-size:14px;padding:13px 14px}.nav-item.active{background:var(--pale);color:var(--green)}.nav-item svg{width:20px;height:20px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:var(--muted)}.sidebar-bottom strong{color:var(--ink);display:block;font-size:13px}.work{min-width:0}.topbar{height:84px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:16px 40px;background:#ffffffb8;gap:16px}.topbar p{margin:0;font-size:13px}.user-chip{display:flex;align-items:center;gap:10px;font-size:12px}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e7e9dc;color:#3d4b2c;font-weight:700;font-size:13px}.user-chip strong{display:block;font-size:13px}.user-chip small{display:block;font-size:11px}.content{max-width:1130px;margin:auto;padding:36px 40px 110px}.page-head{margin-bottom:28px}.page-head .eyebrow{color:var(--accent);margin-bottom:9px}.page-head h1{margin-bottom:12px}.page-head p{max-width:680px;font-size:15px;color:var(--muted);margin-bottom:0}.progress-card{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:22px 26px;margin:24px 0}.progress-title{font-weight:700;font-size:14px;margin-bottom:10px}.progress-track{height:6px;background:#e4e9e2;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);width:0;transition:width .2s}.progress-number{font-size:26px;font-weight:700;color:var(--green);line-height:1.1}.progress-number small{font-weight:400;font-size:14px}.progress-sub{font-size:12px;color:var(--muted);margin-top:4px}.form-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:25px;align-items:start}.section-nav{display:grid;gap:7px;position:sticky;top:20px}.section-button{text-align:left;display:flex;align-items:flex-start;gap:10px;background:transparent;border-color:transparent;padding:12px;font-weight:400;font-size:13px;line-height:1.45}.section-button.active{border-color:#b8cbbf;background:#eaf0e8;font-weight:600}.section-number{width:23px;height:23px;display:grid;place-items:center;flex:none;border:1px solid #b7c5bb;border-radius:7px;font-size:12px;background:#fff}.section-button.active .section-number{background:var(--green);color:#fff;border-color:var(--green)}.section-button small{display:block;margin-top:5px;font-size:11px}.question{margin-bottom:20px}.question-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.question-id{font-size:11px;letter-spacing:1px;font-weight:700;color:var(--accent)}.question legend{font-size:18px;line-height:1.5;font-weight:600;margin-bottom:20px;padding:0;display:block;width:100%}.question fieldset{border:0;margin:0;padding:0;min-width:0}.options{display:grid;gap:10px}.option{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:9px;padding:13px;min-height:50px;font-weight:400;font-size:14px;cursor:pointer;transition:background .15s}.option:has(input:checked){background:#eef5ed;border-color:#628d76}.option input{width:18px;height:18px;min-height:0;flex:none;accent-color:var(--green);margin:2px 0 0}.option .option-key{font-weight:700;margin-right:5px}.option.extra{font-size:13px;border-style:dashed}.note-label{font-size:13px;margin-top:20px}.note-label small{font-weight:400;margin-left:5px}.source-ref{font-size:11px;color:var(--muted);margin-top:14px;padding-top:14px;border-top:1px solid #edf0e9}.section-head{display:flex;align-items:center;justify-content:space-between;margin:2px 0 16px;gap:16px}.section-head h2{font-size:19px;margin:0}.section-head p{font-size:12px;margin:4px 0 0}.section-controls{display:flex;gap:8px;justify-content:space-between;margin-top:24px}.savebar{position:fixed;bottom:0;left:246px;right:0;background:#ffffffed;border-top:1px solid var(--line);padding:15px 40px calc(15px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:15px;z-index:5;backdrop-filter:blur(10px)}.save-status{font-size:12px;color:var(--muted)}.save-status strong{display:block;font-size:13px;color:var(--ink)}.save-actions{display:flex;gap:10px}.tabs-mobile{display:none}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th,td{padding:15px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:11px;text-transform:uppercase;letter-spacing:.7px;background:#edf1ea}tr:last-child td{border-bottom:0}td button{font-size:12px;padding:7px 11px;min-height:42px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.stat{padding:22px}.stat strong{font-size:28px;display:block;margin-top:8px}.stat p{font-size:12px;margin:0;color:var(--muted)}.empty{text-align:center;padding:42px 20px;border:1px dashed #b9c9bc;border-radius:14px;color:var(--muted);background:#ffffff80}.history-item{padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}.history-item:last-child{border-bottom:0}.history-item p{margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.history-item time{font-size:11px;color:var(--muted)}.history-item del{color:#86594e}.history-item ins{color:var(--accent);text-decoration:none}.toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.toolbar select{width:auto;max-width:100%}#toast{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);background:var(--green);color:#fff;border-radius:10px;padding:13px 20px;z-index:20;max-width:90vw;font-size:14px;box-shadow:0 4px 20px #0002}dialog{border:1px solid var(--line);border-radius:18px;padding:28px;width:min(92vw,480px);color:var(--ink);max-height:90svh;overflow:auto}dialog::backdrop{background:#172e2966}dialog .stack{gap:16px}.dialog-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.dialog-head h2{font-size:23px}.dialog-head button{min-height:40px;padding:6px 12px}.read-only{padding:14px 18px;background:#f1ecdb;border-radius:10px;color:#70561d;font-size:13px;margin-bottom:20px}.credentials{font-family:monospace;background:var(--paper);padding:16px;border-radius:8px;overflow-wrap:anywhere}.mobile-brand{display:none}.page-footer{font-size:11px;color:var(--muted);margin-top:30px;padding-top:20px;border-top:1px solid var(--line)}.history-panel{display:grid;grid-template-columns:1fr;gap:8px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.password-page{min-height:100svh}.password-title{margin-top:32px}
@media(min-width:1500px){.content{padding-top:45px}.login-story{padding:65px 100px}}
@media(max-width:1100px){.shell{grid-template-columns:206px 1fr}.sidebar{padding:25px 14px}.savebar{left:206px;padding-left:24px;padding-right:24px}.topbar{padding:16px 24px}.content{padding:28px 24px 110px}.form-layout{grid-template-columns:1fr}.section-nav{display:flex;overflow:auto;position:static;padding-bottom:8px;gap:7px}.section-button{min-width:175px}.section-button .section-number{display:none}}
@media(max-width:700px){.login{grid-template-columns:1fr}.login-story{padding:28px 24px;gap:32px}.login-story h1{font-size:34px;margin-bottom:18px}.login-story p{margin-bottom:0;font-size:14px}.login-story footer,.login-stats,.login-story .eyebrow{display:none}.login-side{padding:32px 24px 45px}.login-form h2{font-size:25px}.login-form>p{margin-bottom:24px}.shell{display:block}.sidebar{display:none}.mobile-brand{display:block;font-size:18px;letter-spacing:2px;font-weight:700}.topbar{height:72px;padding:12px 18px}.topbar>p{display:none}.user-chip{gap:8px}.user-chip small{display:none}.user-chip strong{max-width:140px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:12px}.user-chip button{padding:8px;min-width:44px;font-size:12px}.content{padding:26px 16px 130px}h1{font-size:27px}.page-head{margin-bottom:20px}.page-head p{font-size:14px}.page-head .pill{margin-top:12px}.page-head>.row{display:block}.progress-card{margin:20px 0;padding:18px;gap:16px}.progress-title{font-size:13px}.progress-number{font-size:23px}.progress-sub{font-size:11px}.section-button{min-width:155px;padding:10px;font-size:12px}.card{padding:19px}.question legend{font-size:17px}.option{padding:13px 11px;font-size:14px;gap:10px}.section-head h2{font-size:18px}.savebar{left:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));flex-wrap:wrap;gap:8px}.save-status{width:100%;font-size:11px}.save-status strong{display:inline;font-size:12px;margin-right:8px}.save-actions{width:100%}.save-actions button{flex:1;font-size:13px}.stats-grid{gap:8px}.stat{padding:15px 12px}.stat strong{font-size:23px}.stat p{font-size:11px}.tabs-mobile{display:flex;gap:8px;margin-bottom:22px;overflow:auto}.tabs-mobile button{font-size:12px;min-width:90px;padding:9px}.tabs-mobile button.active{background:var(--green);color:white}.table-wrap{margin-left:-3px;margin-right:-3px}th,td{padding:12px 10px}.toolbar select{width:100%}.source-ref{font-size:11px;line-height:1.6}#toast{bottom:145px;width:max-content;max-width:90vw}.question-top .pill{font-size:10px}.page-head h1{margin-top:6px}.login-foot{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
