
:root{--navy:#10283f;--blue:#1764ed;--line:#dde5ef;--muted:#61758b}*{box-sizing:border-box}body{margin:0;background:#f3f6fa;color:var(--navy);font:14px 'Segoe UI',Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;background:white;border:1px solid var(--line);border-radius:7px;padding:10px 14px;color:var(--navy)}button:hover{border-color:var(--blue)}.primary{background:var(--blue);color:white;border-color:var(--blue)}aside{width:230px;position:fixed;inset:0 auto 0 0;background:var(--navy);color:white;padding:30px 20px}.logo{font-size:34px;font-weight:800;letter-spacing:3px}.logo b{color:#56d9cf}.sub{font-size:11px;letter-spacing:1px;line-height:1.7;color:#adbed0}nav{display:grid;gap:12px;margin-top:45px}nav button{text-align:left;background:transparent;color:#bcd0e2;border:0;padding:14px}nav button.active{background:#28435d;color:white}.offline{position:absolute;bottom:30px;font-size:12px;color:#7cd7bc}main{margin-left:230px;padding:32px 38px;max-width:1500px}header{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:30px}h1{font-size:28px;margin:6px 0}h2{font-size:18px;margin:0 0 16px}h3{font-size:15px}p{line-height:1.7}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--blue)}.small{font-size:12px;color:var(--muted)}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.between{justify-content:space-between}.card{background:white;border:1px solid var(--line);border-radius:12px;padding:25px;margin-bottom:20px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.span{grid-column:1/-1}label{display:block;font-size:12px;font-weight:600;margin-bottom:7px}input,select,textarea{width:100%;padding:10px;border:1px solid #cbd7e4;border-radius:6px;background:white;color:var(--navy)}textarea{min-height:80px;resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid #c0d6ff}.hidden{display:none!important}.steps{display:flex;gap:9px;margin:20px 0}.steps button{flex:1;text-align:left}.steps .active{background:#e7efff;color:var(--blue);border-color:#adc9ff}.entry{display:flex;gap:10px;margin:12px 0;align-items:start}.entry textarea{min-height:70px}.entry button{color:#ae3446}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 6px;border-bottom:1px solid var(--line)}th{font-size:11px;text-transform:uppercase;color:var(--muted)}td input{min-width:65px}td:first-child{width:40%}.tablewrap{overflow:auto}.totals{margin:22px 0 0 auto;max-width:330px;display:grid;gap:12px}.totals .row{justify-content:space-between}.grand{border-top:1px solid var(--line);padding-top:16px;font-size:22px;font-weight:750}.notice{background:#edf4ff;color:#375e91;border-radius:8px;padding:15px;font-size:12px;line-height:1.6}.record{padding:18px 0;border-bottom:1px solid var(--line)}.report{background:white;max-width:900px;margin:auto;padding:35px;line-height:1.65}.report h2{color:var(--blue);margin-top:30px}.reporthead{border-bottom:3px solid var(--blue);padding-bottom:20px}.report li{white-space:pre-wrap;padding-bottom:8px}.report td:first-child{width:auto}.reportfooter{border-top:1px solid var(--line);margin-top:30px;padding-top:15px;font-size:12px}#toast{position:fixed;bottom:25px;right:25px;max-width:500px;background:var(--navy);color:white;padding:16px 22px;border-radius:8px;z-index:30}.toolbar{margin-bottom:20px}.badge{padding:6px 10px;color:#187957;background:#e5f7ef;border-radius:20px;font-size:11px}@media(max-width:900px){aside{position:static;width:auto;padding:16px}.sub,.offline{display:none}nav{display:flex;flex-wrap:wrap;margin-top:10px}nav button{padding:8px}main{margin:0;padding:20px}header{align-items:start;flex-direction:column}.steps{flex-wrap:wrap}.steps button{min-width:120px}}@media(max-width:550px){.grid{grid-template-columns:1fr}.card,.report{padding:16px}}@media print{body{background:white}aside,header,.toolbar,#toast{display:none!important}main{margin:0;padding:0;max-width:none}main>section{display:none!important}#preview{display:block!important}.report{max-width:none;padding:0;font-size:11px}.report h2{break-after:avoid}tr{break-inside:avoid}@page{size:A4;margin:16mm}}

/* Assessment workspace theme — embedded assets work offline. */
body{background-color:#edf3f9;background-image:radial-gradient(ellipse at 95% 5%,#cee9ec80,transparent 45%),linear-gradient(#155eef06 1px,transparent 1px),linear-gradient(90deg,#155eef06 1px,transparent 1px);background-size:auto,28px 28px,28px 28px;background-attachment:fixed}
aside{background:radial-gradient(ellipse at 0 100%,#155e7060,transparent 65%),linear-gradient(165deg,#10283f,#0b1b30);box-shadow:8px 0 32px #10283f0a}
.card{box-shadow:0 8px 28px #233f5c06;border-color:#d8e3ef}.steps button{box-shadow:0 3px 10px #10283f04}
.assessment-scene{position:relative;isolation:isolate;overflow:hidden;min-height:205px;background:linear-gradient(115deg,#102e4b,#17486b 65%,#13646d);border:1px solid #255375;border-radius:15px;margin-bottom:26px;padding:30px 34px;color:white;box-shadow:0 12px 32px #12385715}
.assessment-scene:before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff07 1px,transparent 1px),linear-gradient(90deg,#ffffff07 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(90deg,transparent,#000)}
.scene-copy{position:relative;z-index:1;max-width:56%}.scene-kicker{color:#8be4d9;font-size:10px;letter-spacing:2px;font-weight:700}.scene-copy h2{font-size:27px;line-height:1.25;margin:12px 0 10px;font-weight:650;letter-spacing:-.5px}.scene-copy p{color:#c8dce9;font-size:13px;line-height:1.65;margin:0;max-width:420px}.scene-tags{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap}.scene-tags span{border:1px solid #ffffff26;background:#ffffff08;border-radius:5px;padding:5px 9px;font-size:10px;color:#d1e4ef}.scene-art{position:absolute;right:5px;bottom:0;width:43%;height:100%;opacity:.95}
@media(min-width:1450px){.scene-art{right:35px;width:38%}}
@media(max-width:650px){.assessment-scene{padding:24px;min-height:215px}.scene-copy{max-width:100%}.scene-copy h2{font-size:24px}.scene-copy p{max-width:85%}.scene-art{opacity:.13;width:75%;right:-70px}.scene-tags{gap:5px}}
@media print{body{background:white!important}.assessment-scene{display:none!important}.card{box-shadow:none}}


.company-logo{display:block;width:100%;max-height:100px;object-fit:contain;background:white;border-radius:9px;padding:10px;margin-bottom:16px}.company-clock{margin-top:20px;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;padding:14px 0;color:#d7e6f0}#liveDate{font-size:12px}#liveTime{font-size:21px;letter-spacing:1px;font-weight:600;margin-top:5px;font-variant-numeric:tabular-nums}.company-clock span{display:block;margin-top:7px;font-size:8px;letter-spacing:1.2px;color:#82bcbf}nav{margin-top:25px}.logo-upload{padding:16px;background:#f0f5fb;border:1px dashed #b7cadf;border-radius:8px;margin-bottom:22px}.report-logo{display:block;max-width:180px;max-height:85px;object-fit:contain;margin-bottom:15px}
@media(max-width:900px){.company-logo{max-width:180px;max-height:70px}.company-clock{margin-top:10px;padding:8px 0;display:flex;align-items:center;gap:12px}.company-clock span{margin:0}#liveTime{margin:0;font-size:17px}}

:root{--assessment-photo:url("assets/team.jpg")} 
body{background-image:linear-gradient(#edf4fac7,#edf4fad6),var(--assessment-photo);background-size:cover,cover;background-position:center,center;background-attachment:fixed}
.assessment-scene{min-height:285px;background-image:linear-gradient(90deg,#0b2033e8 0%,#0b2033a6 32%,#0b20331a 63%,#0b203300 100%),var(--assessment-photo);background-size:cover;background-position:center 47%;padding:35px}
.assessment-scene:before,.scene-art{display:none}.scene-copy{max-width:47%}.scene-copy h2{font-size:30px}.scene-copy p{color:#d5e3ed}.scene-tags span{background:#0d2f49b3}
@media(max-width:650px){.assessment-scene{min-height:275px;padding:24px;background-position:65% center;background-image:linear-gradient(90deg,#0b2033ed,#0b2033a6),var(--assessment-photo)}.scene-copy{max-width:100%}.scene-copy h2{font-size:25px}}
@media print{body{background:white!important}}

/* Keep custom-property image payload below browser CSS size limits. */
.assessment-scene{background-color:#102e4b}
.company-logo{max-height:130px;background:#ffffff;border:1px solid #d4e3ef;padding:8px}
.app-footer{margin-top:35px;padding:24px 15px 15px;border-top:1px solid #c7d7e4;text-align:center;color:#51697e;font-size:11px;line-height:1.9}.footer-status{color:#147e6a;font-weight:600;margin-bottom:6px}.creator{font-weight:700;letter-spacing:1px;margin-top:6px;color:#173d5a}
@media print{.app-footer{display:none!important}}

/* Sidebar footer stays at the bottom and scrolls naturally on short screens. */
aside{display:flex;flex-direction:column;overflow-y:auto}
aside>.company-logo,aside>.logo,aside>.sub,aside>.company-clock,aside>nav{flex-shrink:0}
aside>.app-footer{margin-top:auto;padding:24px 0 0;border-top:0;text-align:left;color:#a7bdcf;font-size:10px;line-height:1.7;flex-shrink:0}
aside>.app-footer .footer-status{color:#7cd7bc;font-weight:700;margin-bottom:9px;font-size:10px}
aside>.app-footer .creator{color:#e1edf6;font-weight:700;font-size:10px;letter-spacing:.7px;margin-top:9px}
aside>nav{margin-bottom:30px}
@media(max-width:900px){aside>.app-footer{margin-top:18px;padding-top:15px;border-top:1px solid #ffffff20}aside>nav{margin-bottom:0}}
