:root{--bg:#fff;--bg-soft:#f5f5f5;--surface:#fff;--surface-stroke:#e8e8e8;--text:#1a1a1a;--text-dim:#666;--text-muted:#999;--brand-primary:#e32c27;--brand-secondary:#d62828;--brand-accent:#1a1a1a;--radius-lg:22px;--radius-md:14px;--content-max:1220px}html{min-height:100%}body{min-height:100vh;color:var(--text);font-family:var(--font-heading), sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#fff 0%,#f9f9f9 100%);line-height:1.45}*{box-sizing:border-box;margin:0;padding:0}.shell{width:min(var(--content-max), calc(100vw - clamp(24px, 5vw, 84px)));margin:0 auto;padding:clamp(26px,4vw,48px) 0 clamp(34px,5vw,56px);animation:.5s ease-out rise-in}.hero{margin-bottom:28px}.eyebrow{color:var(--brand-primary);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-family:var(--font-mono), monospace;border:1px solid #e32c274d;border-radius:999px;padding:6px 12px;display:inline-flex}.nav-bar{border-bottom:1px solid var(--surface-stroke);justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px;padding:16px 0;display:flex}.nav-brand{color:var(--brand-primary);font-size:1.1rem;font-weight:700}.nav-links{gap:24px;list-style:none;display:flex}.nav-links a{color:var(--text-dim);font-family:var(--font-mono), monospace;font-size:.9rem;text-decoration:none;transition:color .2s}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--brand-primary);font-weight:600}.hero h1{letter-spacing:-.03em;margin-top:14px;font-size:clamp(2rem,2.1vw + 1.2rem,3.2rem);line-height:1.05}.hero-copy{max-width:65ch;color:var(--text-dim);margin-top:14px}.app-grid{grid-template-columns:minmax(0,1fr) minmax(290px,360px);gap:18px;display:grid}.card{background:var(--surface);border-radius:var(--radius-lg);border:none;overflow:hidden;box-shadow:0 4px 12px #00000014}.form-card{padding:clamp(18px,2.2vw,28px)}.form-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.card-header h2{font-size:1.45rem}.card-header p{color:var(--text-dim);margin-top:8px}.scale-legend{flex-wrap:wrap;gap:12px 20px;margin-top:16px;display:flex}.scale-legend-item{color:var(--text-dim);align-items:center;gap:6px;font-size:.84rem;display:flex}.scale-legend-dot{background:#8a8a8a;border-radius:50%;flex-shrink:0;width:8px;height:8px}.scale-legend-item strong{color:var(--text)}.form-progress{align-items:center;gap:12px;margin-top:16px;display:flex}.form-progress-bar{background:var(--bg-soft);border:1px solid var(--surface-stroke);border-radius:999px;flex:1;height:6px;overflow:hidden}.form-progress-fill{background:linear-gradient(90deg, var(--brand-primary), var(--brand-secondary));border-radius:999px;height:100%;transition:width .3s}.form-progress-label{font-size:.82rem;font-family:var(--font-mono), monospace;color:var(--text-muted);white-space:nowrap}.wizard-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.wizard-step{border:1px solid var(--surface-stroke);color:var(--text-dim);text-align:left;cursor:pointer;background:#fff;border-radius:10px;gap:3px;padding:8px;transition:all .18s;display:grid}.wizard-step:hover{border-color:#c7c7c7}.wizard-step--active{border-color:var(--brand-primary);color:var(--text);background:linear-gradient(#e32c270f,#e32c2705)}.wizard-step--done{background:linear-gradient(#22c55e12,#22c55e06);border-color:#22c55e59}.wizard-step-index{font-family:var(--font-mono), monospace;font-size:.75rem;font-weight:700}.wizard-step-title{font-size:.76rem;font-weight:600}.wizard-step-count{font-size:.7rem;font-family:var(--font-mono), monospace;color:#666}.question-groups{gap:18px;margin-top:24px;display:grid}.category-block{border-radius:var(--radius-md);border:1px solid var(--surface-stroke);background:#fff;padding:20px;transition:border-color .3s,box-shadow .3s;box-shadow:0 12px 30px #1118270a}.category-block--done{background:linear-gradient(#22c55e09,#fffffff0);border-color:#22c55e66}.category-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.category-title-row h3{font-size:1.08rem}.cat-progress-pill{font-size:.75rem;font-family:var(--font-mono), monospace;color:#7a7a7a;white-space:nowrap;background:#f6f6f6;border-radius:999px;padding:3px 10px;font-weight:600;transition:all .3s}.cat-progress-pill--done{color:#16a34a;background:#22c55e26}.category-description{color:var(--text-dim);margin-top:8px;font-size:.93rem}.question-row{border:none;border-top:1px solid var(--surface-stroke);margin-top:14px;padding-top:14px}.question-row--answered{border-top-color:color-mix(in srgb, #16a34a 30%, var(--surface-stroke))}.question-row legend{width:100%;color:var(--text);align-items:baseline;gap:8px;font-size:1rem;font-weight:600;line-height:1.5;display:flex}.question-status{font-size:.72rem;font-family:var(--font-mono), monospace;color:#8a8a8a;background:#f7f7f7;border:1px solid #efefef;border-radius:999px;margin-left:auto;padding:2px 8px;font-weight:600}.question-status--done{color:#15803d;background:#22c55e26}.q-index{width:22px;height:22px;font-size:.72rem;font-weight:700;font-family:var(--font-mono), monospace;color:#818181;background:#f6f6f6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:inline-flex}.hint-wrap{flex-direction:column;gap:6px;margin-top:6px;display:flex}.hint-toggle{font-size:.78rem;font-family:var(--font-mono), monospace;color:#555;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;align-self:flex-start;padding:0;text-decoration:underline;transition:color .15s}.hint-toggle:hover{color:var(--text)}.hint-body{color:#444;border:1px solid var(--surface-stroke);background:var(--surface);border-radius:6px;padding:8px 12px;font-size:.82rem;line-height:1.5}.hint-bullets{flex-direction:column;gap:0;margin:0;padding:4px 0;list-style:none;display:flex}.hint-bullet{align-items:baseline;gap:6px;padding:3px 12px;font-size:.8rem;line-height:1.5;display:flex}.hint-bullet-score{font-family:var(--font-mono), monospace;flex-shrink:0;font-size:.8rem;font-weight:800;line-height:1}.hint-bullet-label{text-transform:uppercase;letter-spacing:.03em;flex-shrink:0;min-width:72px;font-size:.72rem;font-weight:700}.hint-bullet-text{color:#555;font-size:.8rem}.scale-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.scale-option{cursor:pointer;background:#fff;border:1px solid #ececec;border-radius:10px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:clamp(4px,.7vw,6px);min-height:clamp(78px,8.5vw,92px);padding:clamp(8px,.9vw,10px) clamp(10px,1vw,12px);transition:all .2s;display:flex;position:relative}.scale-option:hover:not(.scale-option--checked){background:#fcfcfc;border-color:#d7d7d7;box-shadow:0 6px 14px #1118270a}.scale-option input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.scale-label-text{color:#444;pointer-events:none;font-size:.8rem;font-weight:700;line-height:1.15}.scale-option-head{align-items:center;gap:8px;display:inline-flex}.scale-description{color:#5a5a5a;font-size:clamp(.9rem,.5vw,1rem);line-height:1.45}.scale-option:has(input:checked){border-color:var(--brand-primary);background:#e32c2714;box-shadow:inset 0 0 0 1px #e32c274d}.scale-option--checked{background:#f4f4f5!important;border-color:#6b7280!important;box-shadow:inset 0 0 0 1px #6b728059!important}.scale-option--checked .scale-label-text{color:#2f2f2f;font-weight:700}.scale-option--checked .scale-description{color:#2c2c2c}.scale-option:has(input:checked){background:#f4f4f5;border-color:#6b7280}@media (max-width:768px){.scale-row{grid-template-columns:1fr}.scale-option{gap:5px;min-height:82px;padding:9px 10px}}@media (max-width:480px){.scale-option{min-height:78px;padding:8px 10px}}.score-card{padding:18px}.score-header{justify-content:space-between;align-items:baseline;display:flex}.score-header p{color:var(--text-muted);font-family:var(--font-mono), monospace;font-size:.8rem}.score-ring{border:3px solid var(--brand-primary);background:linear-gradient(135deg,#e32c270f,#e32c2705);border-radius:50%;place-items:center;width:140px;height:140px;margin-top:16px;display:grid}.score-ring strong{font-size:2rem}.score-ring small{color:var(--text-muted);margin-top:-10px}.score-level{color:var(--brand-primary);margin-top:8px;font-weight:600}.score-next-level{color:var(--text-dim);margin-top:4px;font-size:.84rem}.progress-wrap{background:var(--bg-soft);border-radius:999px;width:100%;height:10px;margin-top:10px;overflow:hidden}.progress-bar{background:linear-gradient(90deg, var(--brand-primary), var(--brand-secondary));border-radius:999px;height:100%;transition:width .24s}.progress-label{color:var(--text-dim);margin-top:6px;font-size:.84rem}.level-scale{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:8px;display:grid}.level-scale-label{text-align:center;color:var(--text-muted);font-size:.7rem;font-family:var(--font-mono), monospace;border:1px solid var(--surface-stroke);background:var(--bg-soft);border-radius:999px;padding:3px 6px}.level-scale-label--active{color:var(--brand-primary);background:#e32c2714;border-color:#e32c2759}.score-breakdown{border-top:1px solid var(--surface-stroke);margin-top:16px;padding-top:16px}.score-breakdown h3,.suggestions h3{letter-spacing:.01em;font-size:.94rem}.breakdown-row{color:var(--text-dim);justify-content:space-between;margin-top:10px;display:flex}.breakdown-row strong{color:var(--text);font-weight:700}.breakdown-metric{align-items:baseline;display:flex}.suggestions{gap:10px;margin-top:16px;display:grid}.suggestion-item{border:1px solid var(--surface-stroke);background:var(--bg-soft);border-radius:10px;padding:10px}.suggestion-category{color:var(--text-muted);font-family:var(--font-mono), monospace;text-transform:uppercase;font-size:.72rem}.suggestion-item h4{margin-top:4px;font-size:.9rem}.suggestion-item p{color:var(--text-dim);margin-top:6px;font-size:.84rem;line-height:1.35}.suggestion-link{color:var(--brand-primary);font-size:.8rem;font-family:var(--font-mono), monospace;margin-top:10px;text-decoration:none;display:inline-flex}.suggestion-link:hover{text-decoration:underline}.actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.empty-actions{margin-top:14px}.empty-actions .button{justify-content:center;align-items:center;min-width:220px;padding:10px 14px;text-decoration:none;display:inline-flex}.button{min-height:42px;font-family:var(--font-mono), monospace;cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;padding:0 14px;font-size:.8rem;line-height:1.2;transition:all .2s;display:inline-flex}.button.ghost{color:var(--text-dim);background:var(--bg-soft);border-color:var(--surface-stroke)}.button.ghost:hover{color:var(--text);border-color:var(--text-dim)}.button.solid{color:#fff;border-color:var(--brand-primary);background:var(--brand-primary);font-weight:600}.button.solid:hover{background:var(--brand-secondary);border-color:var(--brand-secondary)}.button:disabled{opacity:.6;cursor:not-allowed}.form-error{color:var(--brand-primary);margin-top:12px;font-size:.9rem;font-weight:600}.form-success{color:#22c55e;margin-top:12px;font-size:.9rem;font-weight:600}.modal-overlay{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#08080873;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-content{border:1px solid var(--surface-stroke);background:linear-gradient(170deg,#fff 0%,#f8f8f8 100%);border-radius:20px;width:min(560px,100%);padding:28px;box-shadow:0 20px 50px #0003}.modal-content h3{letter-spacing:-.02em;font-size:1.45rem;line-height:1.1}.modal-content p{color:var(--text-dim);margin-top:10px;line-height:1.45}.form-group{gap:8px;margin-top:18px;display:grid}.form-group label{color:var(--text-dim);font-size:.84rem;font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.06em}.form-group input{border:1px solid var(--surface-stroke);width:100%;min-height:46px;color:var(--text);background:#fff;border-radius:12px;outline:none;padding:0 14px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px #e32c2726}.error-message{color:var(--brand-primary);font-size:.84rem}.modal-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}.modal-actions .button,.modal-actions a.button{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}@media (max-width:960px){.app-grid{grid-template-columns:1fr}.score-card{position:static}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-container{animation:.5s ease-out rise-in}.page-header{margin-bottom:clamp(18px,3vw,32px)}.page-header h1{letter-spacing:-.02em;margin-bottom:8px;font-size:clamp(1.8rem,2vw + 1rem,2.6rem);line-height:1.1}.page-header p{color:var(--text-dim);max-width:60ch;line-height:1.6}.dashboard-header,.tooling-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-header-link,.tooling-header-link{white-space:nowrap}.tooling-page{gap:18px;display:grid}.tooling-intro-card,.tooling-empty-state,.tooling-card{padding:clamp(20px,3vw,28px)}.tooling-grid{grid-template-columns:minmax(0,1fr);gap:20px;display:grid}.tooling-card{background:linear-gradient(#fff 0%,#fcfbfb 100%);gap:20px;display:grid}.tooling-play-list{gap:18px;display:grid}.tooling-play{gap:14px;display:grid}.tooling-play-titlebar{background:linear-gradient(110deg, var(--brand-primary) 0%, var(--brand-secondary) 85%);color:#fff;border-radius:16px 16px 0 0;padding:15px 18px}.tooling-play-titlebar h3{font-size:clamp(1rem,.9rem + .45vw,1.25rem)}.tooling-play-intro{margin-top:-6px}.tooling-callout-list{gap:14px;display:grid}.tooling-callout{border:1px solid var(--surface-stroke);border-radius:16px;padding:18px 18px 16px;box-shadow:0 2px 8px #0000000a}.tooling-callout h4{color:var(--text);margin-bottom:10px;font-size:1rem}.tooling-callout--do-this{background:linear-gradient(#eef5ff 0%,#e6f0ff 100%);border-color:#1557c066}.tooling-callout--why-it-works{background:linear-gradient(#fff9f0 0%,#fff5e7 100%);border-color:#e32c2747}.tooling-callout--how-to{background:linear-gradient(#f6f6f6 0%,#efefef 100%);border-color:#e32c2752}.tooling-card-header{gap:10px;display:grid}.tooling-card-header h2,.tooling-empty-state h2{font-size:clamp(1.2rem,1vw + .9rem,1.6rem);line-height:1.15}.tooling-markdown{color:var(--text-dim);gap:14px;display:grid}.tooling-markdown h3{color:var(--text);font-size:1.05rem}.tooling-markdown h4{color:var(--text);font-size:.96rem}.tooling-markdown p,.tooling-markdown li{line-height:1.65}.tooling-markdown ul,.tooling-markdown ol{gap:8px;margin-left:18px;display:grid}.tooling-markdown strong{color:var(--text)}.tooling-callout .tooling-markdown strong{color:#333}.tooling-markdown code{font-family:var(--font-mono), monospace;font-size:.92em}.tooling-markdown pre{color:#f0f0f0;background:#2c2c2c;border-radius:16px;padding:14px;overflow-x:auto}.tooling-markdown pre code{white-space:pre-wrap;display:block}.tooling-empty-state p{color:var(--text-dim);margin-top:10px}.login-page{align-content:start;justify-items:center;gap:10px;width:min(100%,920px);min-height:calc(100vh - 180px);margin:0 auto;padding-top:clamp(8px,2vw,20px);display:grid}.login-header{text-align:center;margin-bottom:12px}.login-header p{margin:0 auto}.login-card{background:linear-gradient(#fff 0%,#fcfcfc 100%);border-color:#ececec;border-radius:24px;width:min(100%,560px);margin:0 auto;padding:clamp(24px,4vw,36px);position:relative;overflow:hidden;box-shadow:0 18px 45px #00000014}.login-card:before{content:"";background:linear-gradient(90deg, var(--brand-primary), #ff7c74);height:4px;position:absolute;inset:0 0 auto}.login-card-top{text-align:center;gap:10px;display:grid}.login-badge{color:var(--brand-primary);font-size:.72rem;font-family:var(--font-mono), monospace;letter-spacing:.05em;text-transform:uppercase;background:#e32c2714;border:1px solid #e32c2747;border-radius:999px;justify-self:center;padding:6px 12px;font-weight:600}.login-card-top h2{letter-spacing:-.02em;font-size:clamp(1.4rem,1.1rem + 1vw,2rem)}.login-card-top p{color:var(--text-dim);max-width:44ch;margin:0 auto}.login-points{color:#4f4f4f;gap:10px;margin-top:18px;list-style:none;display:grid}.login-points li{padding-left:22px;font-size:.92rem;position:relative}.login-points li:before{content:"";background:var(--brand-primary);border-radius:50%;width:9px;height:9px;position:absolute;top:.44rem;left:0;box-shadow:0 0 0 3px #e32c2726}.login-form{gap:12px;margin-top:22px;display:grid}.login-google-btn{letter-spacing:.02em;justify-content:center;align-items:center;gap:10px;width:100%;min-height:54px;font-size:.9rem;text-decoration:none;display:flex}.login-google-mark{width:24px;height:24px;color:var(--brand-primary);font-family:var(--font-mono), monospace;background:#fff;border-radius:50%;place-items:center;font-size:.82rem;font-weight:700;display:inline-grid}.login-footnote{text-align:center;color:var(--text-muted);font-size:.8rem;line-height:1.4}.hero-cta{gap:12px;margin-top:24px;display:flex}.hero-cta .button{justify-content:center;align-items:center;min-height:48px;padding:0 24px;font-size:.95rem;text-decoration:none;display:inline-flex}.info-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:48px;display:grid}.info-card{border-radius:var(--radius-md);border:1px solid var(--surface-stroke);background:var(--bg-soft);padding:24px}.info-card h3{margin-bottom:12px;font-size:1.05rem}.info-card p{color:var(--text-dim);line-height:1.5}.form-actions{grid-template-columns:1fr 1fr;gap:12px;margin-top:28px;display:grid}.wizard-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dashboard-grid{grid-template-columns:1.15fr 1fr;align-items:stretch;gap:clamp(14px,2vw,22px);margin-top:24px;display:grid}.score-card.primary{background:linear-gradient(135deg,#e32c2705,#e32c270a);grid-area:1/1}.dashboard-side-card{grid-area:1/2;grid-template-rows:minmax(0,1fr) auto;align-content:stretch;align-self:stretch;gap:18px;height:100%;padding:clamp(18px,2vw,24px);display:grid}.dashboard-side-section{gap:14px;display:grid}.dashboard-side-section--actions{border-top:1px solid var(--surface-stroke);padding-top:18px}.results-content-card{padding:clamp(18px,2vw,24px)}.results-content-card--suggestions{grid-area:2/1/auto/-1}.results-content-card--session-code,.results-content-card--findings,.assessment-review-card{grid-area:3/1/auto/-1}.results-content-card .score-breakdown,.results-content-card .suggestions{border-top:none;margin-top:0;padding-top:0}.dashboard-side-section--actions h3{margin-bottom:16px;font-size:1rem}.dashboard-side-card .actions{grid-template-columns:1fr;gap:10px}.dashboard-side-card .button{text-align:center;text-decoration:none}.no-suggestions{color:var(--text-dim);background:#e32c270d;border:1px solid #e32c272e;border-radius:8px;padding:12px;font-size:.9rem}.assessment-review{gap:18px;display:grid}.assessment-review-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.assessment-review-header h3{font-size:1rem}.assessment-review-header p{color:var(--text-dim);margin-top:6px;font-size:.9rem}.assessment-review-count{background:var(--bg-soft);border:1px solid var(--surface-stroke);color:var(--text-dim);font-size:.78rem;font-family:var(--font-mono), monospace;white-space:nowrap;border-radius:999px;padding:6px 10px}.assessment-review-category{border:1px solid var(--surface-stroke);background:linear-gradient(#fff 0%,#fafafa 100%);border-radius:16px;padding:18px}.assessment-review-category-header p{color:var(--text-dim);margin-top:6px;font-size:.9rem}.assessment-review-questions{gap:14px;margin-top:16px;display:grid}.assessment-review-question{border-top:1px solid var(--surface-stroke);padding-top:14px}.assessment-review-question:first-child{border-top:none;padding-top:0}.assessment-review-question-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.assessment-review-question-index{font-size:.72rem;font-family:var(--font-mono), monospace;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.assessment-review-question-header h5{margin-top:6px;font-size:1rem;line-height:1.4}.assessment-review-selected{color:var(--brand-primary);font-size:.78rem;font-family:var(--font-mono), monospace;white-space:nowrap;background:#e32c2714;border:1px solid #e32c2733;border-radius:999px;padding:5px 10px}.assessment-review-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.assessment-review-option{border:1px solid var(--surface-stroke);background:#fff;border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.assessment-review-option input{margin-top:2px}.assessment-review-option--selected{background:#e32c270d;border-color:#e32c2759}.assessment-review-option-copy{gap:4px;display:grid}.assessment-review-option-label{font-size:.82rem;font-weight:700}.assessment-review-option-description{color:var(--text-dim);font-size:.88rem;line-height:1.45}@media (max-width:768px){.assessment-review-options{grid-template-columns:1fr}}.dashboard-shell{flex-direction:column;gap:clamp(16px,2vw,24px);display:flex}.session-hub-card{position:relative;overflow:hidden}.session-hub-card:before{content:"";background:linear-gradient(90deg, var(--brand-primary), #ff7c74);height:3px;position:absolute;inset:0 0 auto}.session-hub-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.session-hub-header h3{margin-bottom:6px;font-size:1.05rem;font-weight:700}.session-hub-header p{color:var(--text-dim);max-width:52ch;font-size:.88rem;line-height:1.5}.session-create-row{align-items:stretch;gap:10px;display:flex}.session-create-row input{border:1px solid var(--surface-stroke);background:var(--bg-soft);min-height:44px;color:var(--text);border-radius:12px;outline:none;flex:1;padding:0 14px;font-family:inherit;font-size:.94rem;transition:border-color .2s,box-shadow .2s,background .2s}.session-create-row input:focus{border-color:var(--brand-primary);background:#fff;box-shadow:0 0 0 3px #e32c271f}.session-create-row input::placeholder{color:var(--text-muted);font-style:italic}.session-list{border-top:1px solid var(--surface-stroke);flex-direction:column;gap:10px;margin-top:20px;padding-top:18px;display:flex}.session-list-heading{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:4px;font-size:.75rem;font-weight:600}.session-subsection-spacing{margin-top:18px}.session-list-item{border-radius:var(--radius-md);border:1px solid var(--surface-stroke);background:var(--bg-soft);align-items:center;gap:14px;padding:14px 16px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.session-list-item:hover{background:#e32c2705;border-color:#e32c2740}.session-list-item--active{border-color:var(--brand-primary);background:#e32c270a;box-shadow:0 0 0 3px #e32c2714}.session-list-item>div:first-child{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.session-list-item strong{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}.session-code-badge{font-size:.73rem;font-family:var(--font-mono), monospace;color:var(--brand-primary);letter-spacing:.04em;background:#e32c271a;border-radius:8px;flex-shrink:0;align-items:center;padding:3px 9px;font-weight:600;display:inline-flex}.session-created-at{color:var(--text-muted);font-size:.78rem;font-family:var(--font-mono), monospace}.session-list-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.session-list-actions .button{min-height:36px;padding:0 14px;font-size:.78rem;text-decoration:none}.empty-state-card{flex-direction:column;gap:0;padding:0;display:flex}.empty-state-option{flex-direction:column;gap:16px;padding:clamp(22px,2.8vw,32px);display:flex}.empty-state-option>div>strong{letter-spacing:-.02em;margin-bottom:8px;font-size:clamp(1.02rem,.35vw + .95rem,1.18rem);font-weight:700;display:block}.empty-state-option>div>p{color:var(--text-dim);max-width:60ch;font-size:clamp(.98rem,.35vw + .9rem,1.12rem);line-height:1.5}.empty-state-option>a.button,.empty-state-option>.button{align-self:flex-start;min-width:220px;text-decoration:none}.empty-state-divider{color:var(--text-muted);font-size:.74rem;font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:16px;padding:0 clamp(22px,2.8vw,32px);display:flex}.empty-state-divider:before,.empty-state-divider:after{content:"";background:var(--surface-stroke);flex:1;height:1px}.team-session-banner{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.team-session-banner h3{margin-bottom:6px;font-size:1rem;font-weight:700}.team-session-banner-copy{max-width:70ch}.team-session-banner p{color:var(--text-dim);font-size:.88rem;line-height:1.5}.team-session-banner a{color:var(--brand-primary);font-weight:600;text-decoration:none}.team-session-banner a:hover{text-decoration:underline}.team-session-banner>.button{white-space:nowrap;text-decoration:none}.view-toggle{border-bottom:2px solid var(--surface-stroke);gap:8px;margin-bottom:24px;display:flex}.toggle-btn{color:var(--text-dim);font-family:var(--font-heading), sans-serif;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:12px 16px;font-size:.95rem;font-weight:600;transition:all .2s}.toggle-btn:hover{color:var(--text)}.toggle-btn.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.team-view{width:100%}.team-summary{background:linear-gradient(135deg,#e32c270a,#e32c2705);padding:clamp(18px,2vw,24px)}.team-summary h3{margin-bottom:20px;font-size:1rem}.category-average-card{padding:clamp(18px,2vw,24px)}.category-average-card .score-breakdown{border-top:none;margin-top:0;padding-top:0}.category-average-card .breakdown-row{align-items:baseline;margin-top:12px}.summary-stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;display:grid}.team-level-progress{margin-top:16px}.stat-item{background:#e32c270f;border:1px solid #e32c2729;border-radius:8px;flex-direction:column;gap:8px;padding:16px;display:flex}.stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.stat-value{color:var(--brand-primary);font-size:1.8rem;font-weight:700}.stat-value--compact{font-size:1.1rem;line-height:1.2}.stat-note{font-size:.76rem;font-family:var(--font-mono), monospace;color:var(--text-dim)}.submissions-table{margin-top:clamp(20px,3vw,32px)}.submissions-table h3{margin-bottom:16px;font-size:1rem}.table-wrapper{border-radius:var(--radius-md);border:1px solid var(--surface-stroke);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.94rem;line-height:1.45}table thead{background:var(--bg-soft);border-bottom:2px solid var(--surface-stroke)}table th{text-align:left;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;padding:14px 22px;font-size:.8rem;font-weight:600}table td{vertical-align:top;border-bottom:1px solid var(--surface-stroke);padding:16px 22px}table td:first-child{word-break:break-word;max-width:300px}table tbody tr:hover{background:#e32c2705}table tbody tr:last-child td{border-bottom:none}.admin-clickable-row{cursor:pointer;transition:background-color .15s}.admin-clickable-row:hover{background:#e32c270f!important}.score-cell{color:var(--brand-primary);font-weight:600}.date-cell{color:var(--text-dim);font-size:.85rem}.status-badge{color:var(--brand-primary);text-transform:uppercase;letter-spacing:.04em;background:#e32c271a;border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-block}.admin-overview{gap:clamp(20px,3vw,30px);display:grid}.admin-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.admin-chart-grid--team-detail{grid-template-columns:minmax(0,1fr)}.chart-card{padding:18px}.chart-card--wide{grid-column:1/-1}.chart-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.chart-card-header h3{font-size:1rem}.chart-card-header p{color:var(--text-dim);margin-top:6px;font-size:.88rem}.chart-frame{width:100%;height:280px}.chart-frame--tall,.chart-frame--ranking{height:320px}.chart-frame--radar{height:360px}.chart-empty-state{text-align:center;min-height:160px;color:var(--text-dim);border:1px dashed var(--surface-stroke);border-radius:var(--radius-md);background:linear-gradient(#e32c2708,#fffffff5);place-items:center;display:grid}.chart-metric-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.chart-metric-list--dual{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.chart-metric-item{background:var(--bg-soft);border:1px solid var(--surface-stroke);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.chart-metric-item--dual{flex-direction:column;align-items:flex-start}.chart-metric-label{color:var(--text-dim);align-items:center;gap:8px;font-size:.85rem;display:inline-flex}.chart-swatch{border-radius:999px;flex-shrink:0;width:10px;height:10px}.admin-summary{margin-top:8px}.admin-table-section{margin-top:0}.admin-filter-card h3{margin-bottom:12px;font-size:1rem}.admin-filter-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:10px;display:grid}.admin-filter-field{gap:6px;display:grid}.admin-filter-field label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-family:var(--font-mono), monospace}.admin-filter-field input,.admin-filter-field select{border:1px solid var(--surface-stroke);background:var(--bg-soft);min-height:42px;color:var(--text);border-radius:10px;outline:none;padding:0 12px;font-family:inherit;font-size:.9rem}.admin-filter-field input:focus,.admin-filter-field select:focus{border-color:var(--brand-primary);background:#fff;box-shadow:0 0 0 3px #e32c271f}.admin-filter-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.admin-page-meta{color:var(--text-dim);margin-top:10px;font-size:.84rem}.admin-session-cell{gap:8px;display:grid}.admin-empty-cell{color:var(--text-dim);text-align:center}.admin-reset-inline-actions{justify-content:flex-end;gap:10px;margin-top:12px;display:flex}.admin-reset-trigger{min-height:36px;padding:0 14px}.admin-detail-button{min-height:34px}.admin-pagination{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.button-disabled{pointer-events:none;opacity:.45}.admin-team-meta{color:var(--text-dim);margin-bottom:10px;font-size:.88rem}.admin-reset-button{background:#b42318;border-color:#b42318}.admin-reset-button:hover{background:#9a1f15;border-color:#9a1f15}.admin-reset-success{color:#166534;margin-top:10px;font-size:.86rem}.team-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px;display:flex}.team-actions .button{padding:12px 24px}@media (max-width:768px){.shell{width:calc(100vw - 24px);padding:22px 0 30px}.admin-chart-grid,.chart-metric-list{grid-template-columns:1fr}.chart-frame,.chart-frame--tall,.chart-frame--ranking,.chart-frame--radar{height:280px}.dashboard-header,.tooling-header{flex-direction:column}.tooling-grid{grid-template-columns:1fr}.hero h1{font-size:2rem}.form-actions,.hero-cta{grid-template-columns:1fr}.wizard-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-bar{flex-wrap:wrap;margin-bottom:22px}.nav-links{flex-wrap:wrap;gap:10px 16px}.dashboard-grid{grid-template-columns:1fr}.dashboard-side-stack,.results-content-card,.results-content-card:last-of-type,.results-content-card--suggestions,.results-content-card--session-code,.results-content-card--findings,.actions-card{grid-area:auto}.toggle-btn{flex:1;min-width:120px}.empty-state-option>a.button,.empty-state-option>.button{width:100%;min-width:0}.session-create-row>.button{width:100%}.summary-stats{grid-template-columns:1fr}.team-actions{flex-direction:column;align-items:stretch}.team-actions .button,.team-actions a.button{width:100%;max-width:360px;margin:0 auto}.admin-filter-form,.admin-filter-actions{grid-template-columns:1fr}table{min-width:760px;font-size:.8rem}table th,table td{padding:8px 12px}.modal-content{border-radius:16px;padding:20px}.modal-actions{grid-template-columns:1fr}.login-card{width:100%}}@media (max-width:480px){.shell{width:calc(100vw - 16px)}.form-card,.actions-card{padding:16px}.category-block{padding:12px}.wizard-steps,.wizard-actions{grid-template-columns:1fr}.modal-overlay{padding:12px}.modal-content{padding:16px}.login-card{padding:20px 16px}.login-points li{font-size:.88rem}}.divider-section{text-align:center;background:var(--bg-soft);border-radius:var(--radius-md);margin:48px 0;padding:28px}.divider-title{margin-bottom:8px;font-size:1.4rem;font-weight:700}.divider-description{color:var(--text-dim);font-size:.95rem}.form-content{padding:24px}.analysis-section{margin-bottom:24px}.analysis-section h3{margin-bottom:8px;font-size:1.1rem;font-weight:700}.section-description{color:var(--text-dim);margin-bottom:16px;font-size:.9rem}.json-textarea{width:100%;font-family:var(--font-mono);border:1px solid var(--surface-stroke);border-radius:var(--radius-md);background:var(--bg);color:var(--text);resize:vertical;min-height:200px;margin:12px 0;padding:12px;font-size:.85rem}.json-textarea:focus{border-color:var(--brand-primary);outline:none;box-shadow:0 0 0 2px #e32c271a}.json-textarea:disabled{background:var(--bg-soft);color:var(--text-muted);cursor:not-allowed}.json-format-helper{background:var(--bg-soft);border-radius:var(--radius-md);border:1px solid var(--surface-stroke);margin-top:16px;padding:12px}.json-format-helper summary{cursor:pointer;color:var(--brand-primary);-webkit-user-select:none;user-select:none;font-weight:600}.json-format-helper pre{background:var(--surface);border-radius:var(--radius-md);font-family:var(--font-mono);color:var(--text-muted);margin-top:12px;padding:12px;font-size:.8rem;overflow-x:auto}.prompt-helper{display:grid}.prompt-helper-actions{justify-content:flex-end;margin-top:12px;display:flex}.prompt-textarea{background:var(--surface);min-height:360px;margin:0}.analysis-list{color:var(--text-dim);gap:6px;margin:10px 0 0;padding-left:18px;display:grid}.error-toast{z-index:120;border-radius:var(--radius-md);background:#fff2f2;border:1px solid #e32c2759;justify-content:space-between;align-items:center;gap:12px;width:min(420px,100vw - 40px);padding:14px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 10px 28px #00000029}.error-toast p{color:var(--text);margin:0;font-size:.9rem;line-height:1.4}.error-toast .button{min-height:34px}@media (max-width:768px){.divider-section{margin:32px 0;padding:20px}.form-content{padding:16px}.json-textarea{min-height:150px;font-size:.8rem}.prompt-textarea{min-height:260px}.error-toast{width:calc(100vw - 24px);padding:12px;bottom:12px;right:12px}.json-format-helper pre{font-size:.75rem}}
