body{margin:0;background:#f6f4ff;color:#0a0d1f}
.app-stage{min-height:100vh;padding:20px}
.app-stage>.orb{width:480px;height:480px;opacity:.48}
.app-stage>.o-violet{top:-220px;left:-90px}.app-stage>.o-cyan{right:-220px;top:20%}.app-stage>.o-coral{left:15%;bottom:-280px}
.shell{position:relative;max-width:1320px;margin:auto}.top{border-radius:999px;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px}.brand{text-decoration:none;color:inherit;font-weight:800}.brand b,.mark{color:#4f31ee}.mark{font-size:24px;vertical-align:middle}
#top-nav,.actions,.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}#main{margin-top:22px}.layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:18px}.side,.box,.hero{padding:24px;border-radius:32px}.side{align-self:start;display:grid;gap:8px}.hero{padding:32px;margin-bottom:18px}.hero h1,.box h1{margin:8px 0;font-size:clamp(28px,5vw,46px);line-height:1.06}.hero p{max-width:56ch}.hero .actions{margin-top:16px}
.stack{display:grid;gap:14px}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}.item{padding:14px;border-radius:18px;justify-content:space-between}.item p{margin:4px 0}.box h2{margin-top:0}.form{display:grid;gap:14px}.fld{display:grid;gap:6px}.fld .in{width:min(100%,400px);box-sizing:border-box}.fld textarea.in{width:min(100%,680px);resize:vertical}.fld input[type=number]{width:105px}.narrow{max-width:470px;margin:30px auto}.participant{max-width:520px;margin:30px auto}.choice{display:flex;gap:10px;align-items:center;padding:10px 14px;min-height:44px;border-radius:18px}.choice input{width:18px;height:18px}.room-code{font-size:clamp(23px,7vw,56px);font-weight:800;letter-spacing:.10em;overflow-wrap:anywhere}.option{display:flex;align-items:center;gap:8px;margin:8px 0}.option .in{width:min(100%,400px)}fieldset{margin:0;min-width:0;border:1px solid #cec5f7;border-radius:22px;padding:16px}.small{font-size:.85rem}.metrics{display:flex;flex-wrap:wrap;gap:12px;margin:15px 0}.metrics .item{min-width:120px}.metrics strong{display:block;font-size:25px}#notice{background:#fff7e5;padding:12px 18px;border-radius:18px}button:disabled{opacity:.55;cursor:not-allowed}footer{text-align:center;margin-top:16px}
@media(max-width:720px){.layout{grid-template-columns:1fr}.side{display:flex;flex-wrap:wrap}.app-stage{padding:10px}.top{border-radius:24px}.top .btn{padding:0 10px}.box,.hero{padding:18px}}
@media print{.top,.side,.actions,#notice,#csv,#print,.orb{display:none!important}.layout{display:block}.app-stage,.box,.hero{background:white!important;color:black!important;box-shadow:none!important}.item{break-inside:avoid}}
.assessment-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(210px,1fr);gap:18px;align-items:start}.assessment-attempt{max-width:720px}.assessment-attempt .form,.assessment-layout summary+form,[data-review]{margin-top:16px}.preserve-text{white-space:pre-wrap;overflow-wrap:anywhere}.assessment-layout input[type=date]{width:170px}.assessment-layout .chip{align-self:center}
@media(max-width:850px){.assessment-layout{grid-template-columns:1fr}}
.client-filter,.brand-preview{margin:14px 0}.client-logo{max-width:125px;max-height:46px;object-fit:contain}.brand-swatch{display:inline-block;width:24px;height:24px;border:1px solid #aaa;border-radius:50%}.client-branded .top .brand{display:flex;align-items:center;gap:10px}.client-branded #top-nav[hidden]{display:none}.client-branded .participant{border-top:6px solid var(--client-color)}.client-branded .btn-p{background:var(--client-color);color:var(--client-ink,#fff)}.client-branded .app-stage .orb{background:var(--client-color);opacity:.13}
