*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0b;--surface-1: #141416;--surface-2: #1c1c1f;--surface-3: #232327;--chrome: rgba(18, 18, 20, .72);--chrome-blur: blur(20px) saturate(180%);--hairline: rgba(255, 255, 255, .08);--hairline-strong: rgba(255, 255, 255, .14);--text: #f5f5f7;--text-2: rgba(235, 235, 245, .62);--text-3: rgba(235, 235, 245, .32);--accent: #99CC00;--accent-dim: rgba(153, 204, 0, .14);--red: #ff453a;--yellow: #ffd60a;--green: #32d74b;--r-sm: 8px;--r: 12px;--r-lg: 16px;--ease: cubic-bezier(.32, .72, 0, 1);--press: .1s ease-out;--move: .32s var(--ease);--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, sans-serif}html{height:100%;overflow:hidden}body{height:100%;overflow:hidden;font-family:var(--font);font-size:14px;line-height:1.5;letter-spacing:0;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}#root{height:100%;overflow:hidden}.app{height:100%;display:flex;flex-direction:column;overflow:hidden}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}button:active:not(:disabled){transform:scale(.97)}button{transition:transform var(--press),background var(--press),border-color var(--press),color var(--press)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.top-bar,.results-topbar{position:relative;z-index:10;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;background:var(--chrome);backdrop-filter:var(--chrome-blur);-webkit-backdrop-filter:var(--chrome-blur);border-bottom:1px solid var(--hairline);-webkit-app-region:drag}.app-title{display:flex;align-items:center;gap:.5rem;font-size:13px;font-weight:600;letter-spacing:-.01em;color:var(--text-2)}.clap-icon{font-size:15px}.icon-btn{font-size:16px;padding:.375rem;border-radius:var(--r-sm);-webkit-app-region:no-drag}.icon-btn:hover{background:#ffffff12}.upload-screen{display:flex;flex-direction:column;height:100%}.upload-main{flex:1;overflow-y:auto;padding:2.5rem 1.5rem 3rem}.upload-container{width:100%;max-width:60rem;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.project-head{padding-bottom:.25rem}.project-title-input{width:100%;background:none;border:none;outline:none;color:var(--text);font-family:var(--font);font-size:30px;font-weight:650;letter-spacing:-.022em;line-height:1.1;padding:.125rem 0}.project-title-input::placeholder{color:var(--text-3)}.project-subtitle{margin-top:.25rem;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.workflow-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem}@media (max-width: 54rem){.workflow-toggle{grid-template-columns:1fr}}.workflow-tab{display:flex;flex-direction:column;align-items:flex-start;padding:.875rem 1.125rem;border-radius:var(--r);background:var(--surface-1);border:1px solid var(--hairline);text-align:left;transition:all var(--move);position:relative;cursor:pointer}.workflow-tab:hover:not(.workflow-tab--active){border-color:var(--hairline-strong);background:var(--surface-2)}.workflow-tab--active{background:var(--surface-2);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-dim)}.workflow-tab-header{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:.35rem}.workflow-tab-title{font-size:13.5px;font-weight:650;color:var(--text);display:flex;align-items:center;gap:.5rem;letter-spacing:-.01em}.workflow-icon{font-size:15px}.workflow-tab-badge{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 7px;border-radius:999px}.workflow-tab-badge--full{color:#c084fc;background:#a855f71f;border:1px solid rgba(168,85,247,.3)}.workflow-tab-badge--prelim{color:#38bdf8;background:#38bdf81f;border:1px solid rgba(56,189,248,.3)}.workflow-tab-sub{font-size:12px;color:var(--text-3);line-height:1.4}.workflow-tab--active .workflow-tab-sub{color:var(--text-2)}.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media (max-width: 54rem){.source-grid{grid-template-columns:1fr}}.source-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);padding:1.125rem;display:flex;flex-direction:column;gap:.875rem;transition:border-color var(--move)}.source-card--primary{border-color:var(--hairline-strong)}.source-card--single{width:100%;border-color:var(--hairline-strong)}.source-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.source-label{font-size:14px;font-weight:600;letter-spacing:-.01em}.source-tag{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);border:1px solid var(--hairline);padding:.1875rem .4375rem;border-radius:999px;white-space:nowrap}.source-tag--required{color:var(--accent);border-color:#99cc0059}.source-tag--prelim{color:#38bdf8;border-color:#38bdf859}.source-hint{font-size:12px;color:var(--text-3);line-height:1.45;margin-top:-.25rem}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:.125rem;background:#00000052;border-radius:var(--r-sm);padding:.125rem}.segment{padding:.375rem 0;border-radius:6px;font-size:12px;font-weight:550;color:var(--text-3)}.segment:hover:not(.segment--on){color:var(--text-2)}.segment:active:not(:disabled){transform:scale(.98)}.segment--on{background:var(--surface-3);color:var(--text);box-shadow:0 1px 3px #00000073,inset 0 1px #ffffff0f}.dropzone{flex:1;min-height:11rem;border:1px dashed var(--hairline-strong);border-radius:var(--r);background:#ffffff04;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:1.25rem;transition:background var(--press),border-color var(--press),transform var(--press)}.dropzone:hover{background:#ffffff09;border-color:#fff3}.dropzone:active{transform:scale(.995)}.dropzone--drag{border-color:var(--accent);background:var(--accent-dim)}.dropzone-inner{display:flex;flex-direction:column;align-items:center;gap:.4375rem;text-align:center}.upload-icon{font-size:22px;opacity:.75}.drop-label{font-size:13px;color:var(--text-2);letter-spacing:-.005em}.drop-types{font-size:11px;color:var(--text-3);letter-spacing:.03em}.drop-rejected{color:var(--red);font-size:12px;margin-top:.375rem}.browse-btn{margin-top:.375rem;padding:.375rem .875rem;border-radius:999px;background:var(--surface-3);color:var(--text);font-size:12px;font-weight:550}.browse-btn:hover{background:#2c2c31}.dropzone--filled{min-height:11rem;border-style:solid;border-color:var(--hairline);background:var(--surface-2);flex-direction:column;align-items:center;justify-content:center;gap:.5rem;position:relative;cursor:default}.dropzone--filled:hover{background:var(--surface-2);border-color:var(--hairline)}.file-icon{font-size:26px}.file-info{display:flex;flex-direction:column;align-items:center;gap:.125rem;min-width:0}.file-name{font-size:13px;font-weight:550;color:var(--text);max-width:15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{font-size:11px;color:var(--text-3);letter-spacing:.02em}.clear-btn{position:absolute;top:.625rem;right:.625rem;width:1.5rem;height:1.5rem;border-radius:999px;background:#ffffff14;color:var(--text-2);font-size:11px;display:flex;align-items:center;justify-content:center}.clear-btn:hover{background:#ffffff29;color:var(--text)}.paste-area{width:100%;flex:1;resize:none;background:#00000040;border:1px solid var(--hairline);border-radius:var(--r);color:var(--text);padding:.75rem .875rem;font-family:var(--font);font-size:13px;line-height:1.55;outline:none;transition:border-color var(--press)}.paste-area::placeholder{color:var(--text-3)}.paste-area:focus{border-color:#99cc0080}.paste-area--notes{margin-top:.75rem}.notes-block{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r);padding:.875rem 1.125rem}.notes-summary{display:flex;align-items:center;gap:.5rem;cursor:pointer;list-style:none;font-size:13px;font-weight:550;color:var(--text-2);-webkit-user-select:none;user-select:none}.notes-summary::-webkit-details-marker{display:none}.notes-chevron{display:inline-block;color:var(--text-3);transition:transform var(--move)}.notes-block[open] .notes-chevron{transform:rotate(90deg)}.notes-optional{margin-left:auto;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.analyze-row{display:flex;align-items:center;gap:.875rem}.analyze-btn{padding:.75rem 1.75rem;border-radius:999px;background:var(--accent);color:#0f1400;font-size:14px;font-weight:650;letter-spacing:-.01em}.analyze-btn:hover:not(:disabled){background:#a8dd10}.analyze-btn:disabled{background:var(--surface-3);color:var(--text-3);cursor:not-allowed}.analyze-hint{font-size:12px;color:var(--text-3)}.analyze-subhint{font-size:12px;color:#38bdf8}.error-msg{background:#ff453a1a;border:1px solid rgba(255,69,58,.3);color:#ff8a80;border-radius:var(--r);padding:.75rem 1rem;font-size:13px}.loading-screen{flex:1;display:flex;align-items:center;justify-content:center;height:100%}.loading-card{display:flex;flex-direction:column;align-items:center;gap:1.75rem}.spinner{width:2rem;height:2rem;border-radius:999px;border:2px solid rgba(255,255,255,.1);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-stages{display:flex;flex-direction:column;gap:.625rem}.loading-stage{display:flex;align-items:center;gap:.625rem;font-size:13px;color:var(--text-3);transition:color var(--move)}.loading-stage.active{color:var(--text)}.loading-stage.done{color:var(--text-2)}.stage-dot{width:1rem;text-align:center;font-size:11px}.loading-optimizing{width:17.5rem;display:flex;flex-direction:column;gap:.625rem}.optimizing-label{font-size:13px;font-weight:600;color:var(--text);letter-spacing:-.005em;text-align:center}.optimizing-track{height:4px;border-radius:999px;background:#ffffff14;overflow:hidden}.optimizing-fill{height:100%;background:var(--accent);transform-origin:left center;transition:transform var(--move)}.optimizing-meta{font-size:11px;color:var(--text-3);text-align:center;letter-spacing:.02em;font-variant-numeric:tabular-nums}.results-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:var(--bg)}.results-topbar{min-height:54px;padding:.625rem 1.25rem .625rem 5.75rem;position:relative}.results-layout{flex:1;display:grid;grid-template-columns:15rem minmax(0,1fr);min-height:0}.results-rail{border-right:1px solid var(--hairline);padding:1rem .75rem;display:flex;flex-direction:column;gap:.125rem;overflow-y:auto}.rail-doctype{align-self:flex-start;margin-bottom:.625rem;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border:1px solid;border-radius:999px;padding:.1875rem .5rem}.rail-item{text-align:left;padding:.375rem .625rem;border-radius:6px;font-size:12px;font-weight:500;color:var(--text-3);white-space:normal;line-height:1.35;-webkit-hyphens:none;hyphens:none}.rail-item:hover{color:var(--text-2);background:#ffffff09}.rail-item:active:not(:disabled){transform:scale(.98)}.rail-item--on{color:var(--text);background:#ffffff12;font-weight:600}.results-body{overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:.875rem}@media (max-width: 56rem){.results-layout{grid-template-columns:1fr}.results-rail{display:none}}.story-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);overflow:hidden;flex-shrink:0}.card-title{padding:.625rem 1rem;border-bottom:1px solid var(--hairline);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3)}.story-beats{list-style:none;padding:.375rem 0;margin:0}.story-beats li{display:flex;gap:.875rem;padding:.4375rem 1rem;align-items:baseline}.beat-n{color:var(--text-3);font-size:11px;font-weight:700;min-width:1rem;font-variant-numeric:tabular-nums}.beat-t{font-size:14px;color:var(--text);letter-spacing:-.005em;line-height:1.4}.abbrev-block{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r);padding:.75rem 1rem;flex-shrink:0}.abbrev-summary{display:flex;align-items:center;gap:.5rem;cursor:pointer;list-style:none;font-size:12px;font-weight:550;color:var(--text-3);-webkit-user-select:none;user-select:none}.abbrev-summary::-webkit-details-marker{display:none}.abbrev-block[open] .notes-chevron{transform:rotate(90deg)}.abbrev-block .abbrev-key-grid{padding:.875rem 0 .25rem}.results-title-block{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.75rem;min-width:0;max-width:42%}.topbar-logo{height:1.5rem;width:auto;object-fit:contain}.results-title{display:block;font-size:13px;font-weight:600;letter-spacing:-.01em}.results-date{display:block;font-size:11px;color:var(--text-3);letter-spacing:.02em}.back-btn,.export-btn{padding:.4375rem .875rem;border-radius:999px;font-size:12px;font-weight:550;background:var(--surface-3);color:var(--text);-webkit-app-region:no-drag}.back-btn:hover,.export-btn:hover{background:#2c2c31}.export-actions{display:flex;align-items:center;gap:.5rem;-webkit-app-region:no-drag}.export-btn--alt{background:transparent;border:1px solid rgba(153,204,0,.4);color:var(--accent)}.export-btn--alt:hover{background:var(--accent-dim)}.doctype-badge{display:inline-block;align-self:flex-start;padding:.3125rem .75rem;border-radius:999px;border:1px solid;font-size:11px;font-weight:650;letter-spacing:.02em}.glance-card{background:var(--surface-1);border:1px solid rgba(153,204,0,.35);border-radius:var(--r-lg);overflow:hidden;flex-shrink:0}.glance-card-title{background:var(--accent);color:#0f1400;padding:.5rem 1rem;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.glance-table{width:100%;border-collapse:collapse}.glance-table td{padding:.5rem 1rem;border-bottom:1px solid var(--hairline);vertical-align:top}.glance-table tr:last-child td{border-bottom:none}.glance-item{width:9rem;white-space:nowrap;color:var(--text-3);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding-top:.75rem!important}.glance-detail{font-size:15px;color:var(--text);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.table-section{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);overflow:hidden;flex-shrink:0}.table-header{display:flex;align-items:center;justify-content:space-between;padding:.6875rem 1.125rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--press)}.table-header:hover{background:#ffffff06}.table-title{font-size:13px;font-weight:600;letter-spacing:-.01em}.table-meta{display:flex;align-items:center;gap:.75rem}.badge-summary{font-size:11px;color:var(--text-3);letter-spacing:.02em}.collapse-icon{font-size:9px;color:var(--text-3)}.table-wrap{overflow-x:auto}.breakdown-table thead th{position:sticky;top:0;z-index:1}.breakdown-table{width:100%;border-collapse:collapse;font-size:13px}.breakdown-table th{text-align:left;padding:.5rem 1.125rem;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);background:#00000040;border-bottom:1px solid var(--hairline);white-space:nowrap}.breakdown-table td{padding:.4375rem 1.125rem;border-bottom:1px solid rgba(255,255,255,.045);vertical-align:top;color:var(--text-2);line-height:1.45;font-variant-numeric:tabular-nums}.breakdown-table tbody tr:last-child td{border-bottom:none}.row-even td{background:transparent}.row-odd td{background:#ffffff04}.group-separator td{padding:0;height:.375rem;background:#0000004d;border-bottom:none}.badge{display:inline}.table-raw{padding:.875rem 1.125rem;color:var(--text-3);font-size:13px;line-height:1.6}.ep-note{background:#99cc000d;border:1px solid rgba(153,204,0,.2);border-radius:var(--r-lg);padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.375rem}.ep-label{font-size:10px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.07em}.ep-note p{font-size:14px;line-height:1.55;color:var(--text);letter-spacing:-.005em}.abbrev-key-title{padding:.625rem 1rem;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);border-bottom:1px solid var(--hairline)}.abbrev-key-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));padding:.875rem 1rem;gap:.5rem 1.5rem}.abbrev-item{display:flex;align-items:baseline;gap:.5rem}.abbrev-short{font-size:12px;font-weight:650;color:var(--text-2);min-width:2rem}.abbrev-meaning{font-size:12px;color:var(--text-2)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000008c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.modal{width:26.25rem;border-radius:var(--r-lg);overflow:hidden;background:var(--surface-2);border:1px solid var(--hairline-strong);box-shadow:0 24px 64px #0009}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--hairline)}.modal-header h2{font-size:15px;font-weight:600;letter-spacing:-.01em}.close-btn{color:var(--text-3);font-size:14px;padding:.25rem .5rem;border-radius:var(--r-sm)}.close-btn:hover{color:var(--text);background:#ffffff12}.modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.125rem}.field-label{display:block;font-size:10px;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.375rem}.key-input-row{display:flex;gap:.5rem}.key-input{flex:1;background:#0000004d;border:1px solid var(--hairline);border-radius:var(--r-sm);color:var(--text);padding:.625rem .75rem;font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px;outline:none;transition:border-color var(--press)}.key-input:focus{border-color:#99cc0080}.select-input{width:100%;background:#0000004d;border:1px solid var(--hairline);border-radius:var(--r-sm);color:var(--text);padding:.625rem .75rem;font-size:13px;outline:none;transition:border-color var(--press)}.select-input:focus{border-color:#99cc0080}.toggle-btn{padding:0 .75rem;border-radius:var(--r-sm);background:var(--surface-3);font-size:12px;color:var(--text-2)}.toggle-btn:hover{background:#2c2c31;color:var(--text)}.model-info{display:flex;flex-direction:column;gap:.25rem}.model-name{font-size:13px;color:var(--text-2)}.model-name em{color:var(--text-3);font-style:normal}.save-btn{padding:.625rem;border-radius:var(--r-sm);background:var(--accent);color:#0f1400;font-size:13px;font-weight:650}.save-btn:hover{background:#a8dd10}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}button:active:not(:disabled){transform:none}.dropzone:active{transform:none}.spinner{animation:none;border-top-color:var(--accent);opacity:.7}}@media (prefers-reduced-transparency: reduce){.top-bar,.results-topbar{background:var(--surface-1);backdrop-filter:none;-webkit-backdrop-filter:none}.modal-overlay{background:#000000d9;-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-contrast: more){:root{--hairline: rgba(255, 255, 255, .28);--hairline-strong: rgba(255, 255, 255, .42);--text-2: rgba(235, 235, 245, .85);--text-3: rgba(235, 235, 245, .6)}.top-bar,.results-topbar{background:#121214;-webkit-backdrop-filter:none;backdrop-filter:none}.breakdown-table td{color:var(--text)}}@media print{.results-topbar,.top-bar{display:none}}
