:root{--font-heading:"Lora", Georgia, serif;--font-body:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--brand-blue:#1b72ac;--brand-blue-deep:#1c487d;--brand-navy:#001829;--brand-orange:#dd634b;--brand-amber:#e08f24;--brand-sky:#199bd7;--background:#fcfaf8;--foreground:#001829;--card:#fff;--muted:#efece7;--muted-foreground:#435770;--border:#d1d6e0;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--shadow-card:0 1px 3px #0018290d, 0 8px 24px #0018290f}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--background);color:var(--foreground);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.65}#root{min-height:100svh}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--brand-navy);margin:0 0 .6em;font-weight:500;line-height:1.25}h1{font-size:clamp(2rem,4vw,2.6rem)}h2{font-size:clamp(1.5rem,3vw,1.9rem)}h3{font-size:1.15rem;font-weight:600}p{margin:0 0 1em}button{font-family:var(--font-body)}.app{flex-direction:column;min-height:100svh;padding-bottom:84px;display:flex}.app-shell{flex:1;width:100%;max-width:880px;margin:0 auto;padding:8px 24px 64px}.app-header{justify-content:center;padding:20px 24px 4px;display:flex}.app-header img{width:auto;height:36px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--brand-blue);margin-bottom:.75em;font-size:.72rem;font-weight:700;display:inline-block}.btn{letter-spacing:.01em;border-radius:var(--radius-sm);cursor:pointer;border:1.5px solid #0000;padding:13px 28px;font-size:.95rem;font-weight:600;transition:all .15s}.btn-primary{background:var(--brand-blue);color:#fff}.btn-primary:hover{background:var(--brand-blue-deep)}.btn-secondary{background:var(--brand-blue-deep);color:#fff}.btn-secondary:hover{background:var(--brand-navy)}.btn-outline{border-color:var(--brand-blue);color:var(--brand-blue);background:0 0}.btn-outline:hover{background:#eaf3f8}.btn-ghost{border-color:var(--border);color:var(--muted-foreground);background:0 0}.btn-ghost:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.btn:disabled{opacity:.4;cursor:not-allowed}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:28px 32px}.tab-bar{z-index:40;background:var(--card);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom,0);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #0018290f}.tab-bar button{cursor:pointer;color:var(--muted-foreground);letter-spacing:.01em;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:4px;padding:10px 8px 8px;font-size:.75rem;font-weight:600;display:flex}.tab-bar button svg{width:22px;height:22px}.tab-bar button.active{color:var(--brand-blue)}.tab-bar button.active svg{stroke:var(--brand-blue)}.quiz-progress-track{background:var(--border);border-radius:999px;height:6px;margin-bottom:8px;overflow:hidden}.quiz-progress-fill{background:var(--brand-blue);height:100%;transition:width .3s}.quiz-progress-label{color:var(--muted-foreground);margin-bottom:32px;font-size:.85rem}.quiz-items{flex-direction:column;gap:28px;margin:0;padding:0;list-style:none;display:flex}.quiz-item{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:22px 24px}.quiz-item-text{color:var(--foreground);margin-bottom:16px;font-weight:600}.likert-row{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.likert-option{aspect-ratio:1;border:1.5px solid var(--border);background:var(--background);color:var(--muted-foreground);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-weight:600;transition:all .15s;display:flex}.likert-option:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.likert-option.selected{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}.likert-scale-labels{color:var(--muted-foreground);justify-content:space-between;margin-top:8px;font-size:.75rem;display:flex}.quiz-validation{color:var(--brand-orange);margin-top:20px;font-weight:600}.quiz-nav{justify-content:space-between;margin-top:36px;display:flex}@media (width<=560px){.likert-row{grid-template-columns:repeat(7,1fr);gap:4px}.likert-scale-labels span:first-child{max-width:45%}.likert-scale-labels span:last-child{text-align:right;max-width:45%}}.report-doc{margin:0 -24px;font-size:1rem}.report-doc .cover{background:linear-gradient(155deg, var(--brand-navy) 0%, var(--brand-blue-deep) 78%, var(--brand-blue) 130%);color:#fff;text-align:center;border-radius:var(--radius-lg);padding:64px 24px 48px;position:relative;overflow:hidden}.report-doc .cover:before{content:"";pointer-events:none;background-image:radial-gradient(circle at 12% 8%,#ffffff17 0%,#0000 40%),radial-gradient(circle at 88% 92%,#e08f2429 0%,#0000 45%);position:absolute;inset:0}.report-doc .cover:after{content:"";background:var(--brand-amber);border-radius:var(--radius-pill) var(--radius-pill) 0 0;width:72px;height:4px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.report-doc .cover>*{position:relative}.report-doc .cover .badge{color:#eaf3f8;letter-spacing:.16em;text-transform:uppercase;border-radius:var(--radius-pill);background:#ffffff1a;border:1px solid #ffffff52;margin-bottom:26px;padding:7px 18px;font-size:.7rem;font-weight:700;display:inline-block}.report-doc .cover .kicker{letter-spacing:.22em;text-transform:uppercase;color:var(--brand-sky);margin-bottom:14px;font-size:.78rem;font-weight:700;display:block}.report-doc .cover h1{color:#fff;letter-spacing:-.01em;max-width:560px;margin:0 auto 14px;font-size:2.25rem;font-weight:500}.report-doc .cover h1 .accent{color:var(--brand-amber)}.report-doc .cover .subtitle{font-family:var(--font-heading);color:#cfe0ee;max-width:460px;margin:0 auto;font-size:1.05rem;font-style:italic;line-height:1.55}.report-doc .cover .meta{border-radius:var(--radius-md);background:#ffffff12;border:1px solid #ffffff29;flex-wrap:wrap;justify-content:center;gap:0;margin-top:36px;padding:0;display:inline-flex;overflow:hidden}.report-doc .cover .meta div{text-align:left;padding:15px 26px}.report-doc .cover .meta div+div{border-left:1px solid #ffffff29}.report-doc .cover .meta .label{text-transform:uppercase;letter-spacing:.12em;color:#93aec2;font-size:.64rem}.report-doc .cover .meta .value{font-family:var(--font-heading);color:#fff;margin-top:3px;font-size:1rem}.report-doc .sample-banner{border:1px solid #f0d6ac;border-left:4px solid var(--brand-amber);border-radius:var(--radius-md);background:linear-gradient(135deg,#fdf4e7 0%,#fbeee0 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:24px 0;padding:18px 22px;display:flex}.report-doc .sample-banner p{color:var(--brand-navy);max-width:480px;margin:0;font-size:.92rem}.report-doc .report-section{padding:52px 0}.report-doc .report-section.alt{background:var(--muted)}.report-doc .section-head{align-items:baseline;gap:14px;margin-bottom:26px;padding:0 24px;display:flex}.report-doc .section-head .section-index{font-family:var(--font-heading);color:var(--border);flex:none;font-size:1.6rem;font-weight:500;line-height:1}.report-doc .section-head .section-heading{flex:auto;min-width:0}.report-doc .section-head .eyebrow{margin-bottom:.4em;display:block}.report-doc .section-head h2{margin-top:0;padding-bottom:14px;font-size:1.6rem;position:relative}.report-doc .section-head h2:after{content:"";background:var(--brand-blue);border-radius:var(--radius-pill);width:44px;height:3px;position:absolute;bottom:0;left:0}.report-doc .report-section.alt .section-head h2:after{background:var(--brand-orange)}.report-doc .wrap{max-width:780px;margin:0 auto;padding:0 24px}.report-doc .card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:18px;padding:26px 28px;box-shadow:0 1px 2px #00182908}.report-doc .card h3{color:var(--brand-blue-deep);flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:10px;font-size:1.02rem;font-weight:600;display:flex}.report-doc .card p{color:var(--foreground)}.report-doc .card p:last-child{margin-bottom:0}.report-doc .card.tinted{border-color:#cfe3ee;border-left:3px solid var(--brand-blue);background:#f2f8fb}.report-doc .card.tinted h3{color:var(--brand-blue-deep)}.report-doc .graphic-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;margin-bottom:24px;padding:28px 20px 22px;box-shadow:0 2px 6px #0018290a,0 10px 28px #00182908}.report-doc .graphic-card svg{max-width:100%;height:auto}.report-doc .graphic-caption{font-family:var(--font-heading);color:var(--muted-foreground);border-top:1px solid var(--border);margin-top:12px;padding-top:12px;font-size:.85rem;font-style:italic}.report-doc .strength-bars{text-align:left;flex-direction:column;gap:26px;display:flex}.report-doc .strength-bar-header{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.report-doc .strength-bar-label{letter-spacing:.1em;text-transform:uppercase;color:var(--brand-navy);font-size:.74rem;font-weight:700}.report-doc .strength-bar-score{font-family:var(--font-heading);color:var(--brand-orange);font-size:.95rem;font-weight:600}.report-doc .strength-bar-track{border-radius:var(--radius-pill);background:var(--muted);height:14px;position:relative;overflow:hidden}.report-doc .strength-bar-fill{border-radius:var(--radius-pill);position:absolute;inset:0}.report-doc .strength-bar-ticks{height:7px;margin-top:4px;position:relative}.report-doc .strength-bar-tick{background:var(--border);width:1px;height:7px;position:absolute;top:0;transform:translate(-.5px)}.report-doc .strength-bar-scale-labels{color:var(--muted-foreground);justify-content:space-between;margin-top:2px;font-size:.68rem;display:flex}.report-doc .two-triangles{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.report-doc .two-triangles img{max-width:46%;height:auto}.report-doc .reveal{font-family:var(--font-heading);color:var(--brand-navy);border-left:4px solid var(--brand-blue);border-radius:0 var(--radius-md) var(--radius-md) 0;background:linear-gradient(135deg,#f2f8fb 0%,#eef5f9 100%);margin-bottom:16px;padding:22px 26px 22px 30px;font-size:1.18rem;line-height:1.5;position:relative;box-shadow:0 1px 2px #00182908}.report-doc .reveal.secondary{border-left-color:var(--muted-foreground);background:var(--muted);font-size:1.02rem;font-family:var(--font-body);color:var(--foreground);padding:18px 22px 18px 26px;font-style:italic}.report-doc .reveal.drama{border-left-color:var(--brand-orange);background:linear-gradient(135deg,#fdf1ee 0%,#fbebe6 100%)}.report-doc .reveal.drama.secondary{border-left-color:var(--muted-foreground);background:var(--muted)}.report-doc .reveal .role{color:var(--brand-blue-deep);font-weight:600}.report-doc .reveal.drama .role{color:var(--brand-orange)}.report-doc .rank-row{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);align-items:flex-start;gap:18px;margin-bottom:14px;padding:20px 22px;display:flex;box-shadow:0 1px 2px #00182908}.report-doc .rank-num{background:var(--brand-blue-deep);color:#fff;width:36px;height:36px;font-family:var(--font-heading);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1rem;font-weight:600;display:flex;box-shadow:0 0 0 4px #1c487d1a}.report-doc .rank-num.drama{background:var(--brand-orange);box-shadow:0 0 0 4px #dd634b1f}.report-doc .rank-body{flex:auto;min-width:0}.report-doc .rank-body h4{font-size:1rem;font-family:var(--font-body);color:var(--brand-navy);flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 6px;font-weight:700;display:flex}.report-doc .rank-body .band{color:var(--brand-blue-deep);border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase;background:#eaf3f8;padding:3px 10px;font-size:.68rem;font-weight:700}.report-doc .rank-row:has(.rank-num.drama) .rank-body .band{color:var(--brand-orange);background:#fdf1ee}.report-doc .rank-body p{margin:0}.report-doc .trigger-box{border:1px solid #f0d6ac;border-left:3px solid var(--brand-amber);border-radius:var(--radius-md);background:#fdf8f0;margin-bottom:14px;padding:16px 20px;position:relative}.report-doc .trigger-box .tag{letter-spacing:.1em;text-transform:uppercase;color:var(--brand-amber);margin-bottom:8px;font-size:.66rem;font-weight:700;display:block}.report-doc .trigger-box p{color:var(--brand-navy);margin:0}.report-doc .headline-box{font-family:var(--font-heading);color:var(--brand-navy);text-align:center;max-width:620px;margin:0 auto;padding:44px 32px 32px;font-size:1.35rem;font-style:italic;line-height:1.55;position:relative}.report-doc .headline-box:before{content:"“";font-family:var(--font-heading);color:var(--brand-amber);opacity:.55;font-size:4rem;font-style:normal;line-height:1;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.report-doc .report-footer{text-align:center;color:var(--muted-foreground);border-top:1px solid var(--border);margin-top:8px;padding:40px 24px 12px;font-size:.8rem}.report-doc .report-footer>div:first-child{font-family:var(--font-heading);color:var(--brand-blue-deep);letter-spacing:.01em;font-size:.95rem;font-weight:500}.report-doc .report-footer .fine{max-width:520px;margin:10px auto 24px;line-height:1.55}.report-doc .report-actions{text-align:center}@media (width<=600px){.report-doc .cover{padding:48px 18px 38px}.report-doc .cover h1{font-size:1.8rem}.report-doc .cover .meta{flex-direction:column;gap:0;display:inline-block}.report-doc .cover .meta div+div{border-top:1px solid #ffffff29;border-left:none}.report-doc .report-section{padding:36px 0}.report-doc .section-head .section-index{display:none}.report-doc .card{padding:20px 18px}.report-doc .rank-row{gap:14px;padding:16px}.report-doc .two-triangles img{max-width:100%}.report-doc .headline-box{padding:40px 18px 24px;font-size:1.15rem}}
