:root{--revival-orange:#ff5500;--revival-panel:rgba(255,85,0,.14);--revival-panel-border:#ff5500;--revival-button-text:#ffffff;font-family:"Segoe UI",system-ui,sans-serif;color:#f3f6fc;background:#030303;line-height:1.65;color-scheme:dark}
body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 80% 0,rgba(255,255,255,.045),transparent 50%),linear-gradient(145deg,#0e0e0e,#020202 65%)}
button,select,textarea{font:inherit}button{min-height:44px;border:1px solid var(--revival-orange);border-radius:9px;background:var(--revival-orange);color:var(--revival-button-text);font-weight:650;padding:10px 18px;cursor:pointer;transition:background .15s}
button:hover{filter:brightness(1.07)}button.secondary{background:var(--revival-orange);color:var(--revival-button-text);border-color:var(--revival-orange)}button.small{font-size:.87rem;padding:7px 13px}button.text-button{background:transparent;border:0;color:var(--revival-orange);padding:6px 0;text-align:left;font-size:.87rem}
button:focus-visible,a:focus-visible,summary:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ffc5a8;outline-offset:4px}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}
.preview-banner{padding:9px 24px;text-align:center;color:#d4c4ef;background:#292239;border-bottom:1px solid #463957;font-size:.72rem;font-weight:700;letter-spacing:.07em}.preview-banner span{font-weight:400;letter-spacing:0;margin-left:14px;color:#e2d9ef}
.app-shell{max-width:1420px;margin:auto;padding:0 36px}.brand-header{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px 0 25px}.brand{display:flex;align-items:center;gap:15px}.brand-scene{position:relative;width:148px;height:126px;flex:none;isolation:isolate}.scene-bookshelf,.scene-ghost{position:absolute;object-fit:contain;pointer-events:none}.scene-bookshelf{width:148px;height:126px;left:0;bottom:0;z-index:0;transform:scale(1.2);transform-origin:50% 100%}.scene-ghost{width:88px;height:88px;left:30px;bottom:-5px;z-index:1;filter:drop-shadow(0 4px 8px #0008)}.brand-line{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.brand-name{font-size:1.28rem;font-weight:700;letter-spacing:-.02em}.theme-note{font-size:.57rem;letter-spacing:.16em;color:#cbb8e7}.brand p{margin:3px 0 0;font-size:.86rem;color:#aebbd1}
.project-chip{display:flex;align-items:center;gap:10px;font-size:.84rem;color:#e3e9f4}.status-dot{width:6px;height:6px;border-radius:50%;background:#a8e8df}.example-tag{font-size:.68rem;font-weight:600;background:#151515;border:1px solid #454545;border-radius:5px;color:#c9d4e9;padding:2px 7px;white-space:nowrap}
.tabs{display:flex;gap:28px;border-bottom:1px solid #343434;margin-bottom:32px}.tabs button{position:relative;min-height:52px;padding:10px 3px 15px;background:transparent;border:0;border-radius:0;color:#aebbd1;font-size:.95rem;font-weight:500}.tabs button[aria-selected=true]{color:var(--revival-orange)}.tabs button[aria-selected=true]:after{content:"";height:3px;border-radius:2px;position:absolute;bottom:-1px;left:0;right:0;background:var(--revival-orange)}.tab-count{font-size:.68rem;margin-left:6px;background:#1a1a1a;color:#cad7e9;border-radius:4px;padding:1px 6px}
.view-heading{margin:0 0 26px;max-width:1000px}.eyebrow{font-size:.65rem;letter-spacing:.13em;color:#c9b7e5;font-weight:650;margin:0 0 8px}h1{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.3;letter-spacing:-.025em;margin:0 0 8px}.view-heading>p:last-child,.view-heading>div>p:last-child{color:#b4c0d5;font-size:.93rem;margin:0}.surface{border:1px solid var(--revival-panel-border);border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.018) 44%,rgba(0,0,0,.12) 78%),var(--revival-panel);backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(255,255,255,.025),0 16px 38px rgba(0,0,0,.28)}h2{font-size:1.13rem;margin:0 0 12px;line-height:1.4}
.project-card{max-width:980px;padding:28px 30px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-title h2{margin:0}.folder-row{display:flex;align-items:center;gap:15px;padding:19px 20px;background:linear-gradient(125deg,rgba(255,255,255,.045),transparent 62%),#060606;border:1px solid #343434;border-radius:10px}.folder-icon{font-size:2.2rem;line-height:1;color:var(--revival-orange)}.folder-name{flex:1}.folder-name strong{display:block;font-size:1rem}.folder-name span{display:block;color:#aebbd1;font-size:.8rem}.folder-row button{font-size:.86rem}
.file-review{margin:16px 0 0;border-bottom:1px solid #343434;padding-bottom:12px}.file-review summary{font-size:.87rem;cursor:pointer;color:#d7e2f4;min-height:36px}.file-review summary span{font-size:.76rem;color:#aebbd1;margin-left:12px}.file-review ul{padding:0 0 0 17px;list-style:none;font-size:.83rem}.file-review li{display:flex;justify-content:space-between;padding:7px 0;color:#cbd8eb}.file-review li span:first-child{font-family:Consolas,monospace}.file-review li span:last-child{color:#9fadc4}.privacy-note{font-size:.77rem;color:#aebbd1;margin:10px 0 25px}.goal-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 10px}.goal-heading label{font-size:.95rem;font-weight:600}textarea{display:block;width:100%;padding:12px 14px;resize:vertical;border:1px solid #505050;border-radius:9px;background:linear-gradient(125deg,rgba(255,255,255,.035),transparent 60%),#050505;color:#f1f5fc;font-size:.93rem;line-height:1.6}.project-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:24px}.project-footer p{color:#aebbd1;font-size:.78rem;margin:0;max-width:330px}.project-footer button{font-size:.9rem;white-space:nowrap}.project-footer button span{margin-left:14px}
.plan-heading{display:flex;justify-content:space-between;align-items:start;gap:24px;max-width:none}.version-control{display:grid;gap:5px;min-width:200px}.version-control label{font-size:.75rem;color:#b4c0d5}select{min-height:44px;background:linear-gradient(125deg,rgba(255,255,255,.035),transparent 60%),#050505;border:1px solid #505050;border-radius:8px;color:#ecf2fc;padding:8px 12px;font-size:.88rem}.plan-layout{display:block}.plan-layout .report{padding:27px 30px;max-width:1020px}.plan-layout.has-source{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);gap:22px}.plan-layout.has-source .report{max-width:none}.plan-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.plan-tools span{font-size:.75rem;color:#aebbd1}#preview-report h2{margin:26px 0 12px;font-size:1.13rem}#preview-report h2:first-child{margin-top:0}.report p,.report li{font-size:.94rem;line-height:1.8}.report .references{font-size:.85em}.report code{background:#080808}.citation{color:#9fe6db}
.save-row{border-top:1px solid #343434;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px;padding-top:23px}.save-row h2{font-size:1rem;margin:0 0 4px}.save-row p{font-size:.79rem;margin:0;color:#aebbd1}.save-controls{display:flex;gap:10px;align-items:end}.save-controls label{display:grid;gap:4px;color:#b9c6db;font-size:.74rem}.save-controls select{min-width:155px}.save-controls button{white-space:nowrap;font-size:.88rem}.feedback-area{margin-top:25px;padding-top:20px;border-top:1px solid #343434}.feedback-area summary{cursor:pointer;color:#cee0f3;font-size:.9rem;min-height:36px}.feedback-area label{display:block;font-size:.85rem;margin:8px 0}.feedback-area button{margin-top:12px;font-size:.86rem}.feedback-area p{font-size:.77rem;color:#aebbd1;margin:9px 0 0}
.plan-source-host .evidence{position:sticky;top:20px}.source-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px}.source-heading h2{margin:0}.source-heading button{font-size:.76rem}.evidence-heading{padding:22px 24px 17px}.evidence-heading label{font-size:.78rem}.evidence-heading select{font-size:.85rem}.source-scroll{max-height:64vh}#full-source-host .evidence{position:static}#full-source-host .source-scroll{max-height:65vh}.source-lines code{font-size:13px}.preview-status{min-height:1.7em;color:#c4b3e0;font-size:.79rem;margin:24px 0 0}.app-footer{border-top:1px solid #343434;margin-top:28px;padding:22px 0 30px;color:#fff;font-size:.9rem;text-align:center}.footer-heading{margin:0 0 5px;font-size:1rem;font-weight:600;letter-spacing:.025em}.footer-tagline{margin:0;color:#fff}
@media(max-width:1050px){.theme-note{display:none}.project-chip{font-size:.77rem}.plan-layout.has-source{grid-template-columns:minmax(0,1fr)}.plan-source-host .evidence{position:static}.plan-source-host{grid-row:1}.source-scroll{max-height:370px}}
@media(max-width:640px){.app-shell{padding:0 18px}.preview-banner{padding:8px 14px;font-size:.65rem}.preview-banner span{display:block;margin:3px 0 0}.brand-header{padding:22px 0;gap:12px;align-items:start}.brand-scene{width:104px;height:100px}.scene-bookshelf{width:104px;height:100px}.scene-ghost{width:70px;height:70px;left:17px;bottom:-4px}.brand{gap:9px}.brand-name{font-size:1.08rem}.brand p{font-size:.76rem}.project-chip{display:none}.tabs{gap:24px;margin-bottom:24px}.tabs button{font-size:.88rem}.view-heading{margin-bottom:21px}.project-card,.plan-layout .report{padding:21px 19px}.folder-row{padding:15px;flex-wrap:wrap}.folder-row button{width:100%;margin-top:4px}.goal-heading{align-items:start;flex-wrap:wrap}.goal-heading label{font-size:.88rem}.project-footer{flex-direction:column;align-items:stretch}.project-footer p{max-width:none}.project-footer button{white-space:normal}.plan-heading{flex-direction:column}.version-control{width:100%}.save-row{flex-direction:column;align-items:stretch}.save-controls{justify-content:space-between}.save-controls label{flex:1}.save-controls select{min-width:0}.evidence-heading{padding:19px}.plan-tools span{font-size:.68rem}.app-footer{font-size:.86rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.tabs{position:sticky;top:0;z-index:10;background:rgba(3,3,3,.96);padding-top:4px;backdrop-filter:blur(10px)}.folder-icon{width:32px;height:28px;flex:none}.save-controls .format-field{display:grid;gap:4px}.save-controls label{display:block;gap:0}.plan-source-host .evidence{top:80px}
@media(max-width:640px){.save-controls .format-field{flex:1}}
[hidden]{display:none!important}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--revival-orange);border-radius:9px;background:var(--revival-orange);color:var(--revival-button-text);font-weight:650;padding:10px 18px;text-decoration:none;font-size:.88rem;white-space:nowrap}.button:focus-visible,button:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ffd08d;outline-offset:4px}button:disabled{opacity:.48;cursor:default;filter:none}.save-link[aria-disabled=true]{opacity:.48;pointer-events:none}.helper,.individual-files{font-size:.77rem;color:#aebbd1;margin:10px 0}.individual-files summary{cursor:pointer;min-height:36px}.individual-files .button{margin-top:8px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-review li{display:block;overflow-wrap:anywhere}.file-review li label{display:flex;align-items:start;gap:10px;cursor:pointer}.file-review input{margin:5px 0;accent-color:var(--revival-orange);flex:none}.file-review ul{max-height:260px;overflow:auto;padding:0 8px 0 0}.file-review summary{padding:5px 0}.source-actions{margin-top:14px}.source-placeholder{padding:20px;color:#aebbd1}.narration-controls{display:flex;gap:12px;flex-wrap:wrap}audio{width:100%;margin:0 0 20px}#report-content h2{margin:26px 0 12px;font-size:1.13rem}#report-content h2:first-child{margin-top:0}.error{color:#ffb7a3}.plan-layout>*{min-width:0}.report{overflow-wrap:anywhere}.tabs button{flex:none}.brand-header{overflow:visible}.format-field select{width:auto}.save-controls{flex-wrap:wrap}.save-row .button{font-size:.88rem}.source-scroll{max-width:100%}@media(max-width:640px){.plan-tools{flex-wrap:wrap}.save-controls .format-field select{width:100%}.save-controls .button{flex:1}}

.source-scroll{background:#050505}.evidence-heading{border-bottom-color:#343434}.source-lines .selected-line{background:rgba(255,85,0,.16);border-left-color:var(--revival-orange)}.source-lines .selected-line:before{color:#fff}
/* Center the artwork and larger text together, with the artwork on the left. */
.brand-header{position:relative;display:block;padding:28px 0 24px;min-height:282px}.brand{display:flex;justify-content:center;gap:0;align-items:center;width:100%;min-width:0}.brand-copy{flex:0 1 auto;min-width:0;margin-left:-30px;text-align:center}.brand-scene{flex:0 0 230px;width:230px;height:230px}.scene-combined{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;transform:scale(1.08);transform-origin:100% 100%}.scene-bookshelf{width:230px;height:200px}.scene-ghost{width:139px;height:139px;left:46px;bottom:-8px}.brand-line{flex-direction:column;align-items:center;gap:9px}.brand-name{font-size:clamp(2.8rem,5vw,4rem);line-height:1.15}.theme-note{display:block;font-size:clamp(1.2rem,1.8vw,1.5rem);letter-spacing:.075em;line-height:1.45;transform:translateX(-4px)}.brand p{margin-top:12px;font-size:1.08rem;line-height:1.5;transform:translateX(-12px)}.project-chip{position:static;width:fit-content;max-width:100%;margin:14px auto 0;overflow-wrap:anywhere}.project-card{width:100%;max-width:none}.view-heading{max-width:none}.plan-layout:not(.has-source) .report{margin-inline:auto}
@media(max-width:760px){.brand-header{padding:24px 0 22px;min-height:0}.brand{flex-direction:column;gap:17px}.brand-scene{flex-basis:auto;width:170px;height:170px}.scene-combined{transform-origin:50% 100%}.scene-bookshelf{width:150px;height:135px}.scene-ghost{width:98px;height:98px;left:26px;bottom:-5px}.brand-copy{margin-left:0;text-align:center}.brand-line{align-items:center;gap:5px}.brand-name{font-size:clamp(2rem,7.5vw,2.8rem)}.theme-note{font-size:clamp(1rem,3.5vw,1.2rem);letter-spacing:.04em;transform:none}.brand p{font-size:.9rem;margin-top:7px;transform:none}.project-chip{display:none}}

.session-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding-top:18px;border-top:1px solid #343434}.session-controls p{margin:0;color:#aebbd1;font-size:.79rem;max-width:760px}.session-controls button{flex:none}@media(max-width:640px){.session-controls{align-items:flex-start;flex-direction:column;gap:12px}}

.session-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
