:root{--bg: #f5f3f2;--panel: #fff;--ink: #1f1c1d;--muted: #706a69;--line: #e9dedd;--accent: #e83834;--accent-dark: #be2f2b;--success-soft: #eef9f3;--success: #1e7b55;--error-soft: #fff0ee;--error: #b13b36}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{color:var(--ink);font-family:DM Sans,Segoe UI,sans-serif;background:radial-gradient(circle at 80% 18%,rgba(232,56,52,.13),transparent 32%),radial-gradient(circle at 15% 70%,rgba(24,152,122,.08),transparent 30%),var(--bg)}a{color:inherit}button,input,select,textarea{font:inherit}h1,h2,h3,h4{margin:0;letter-spacing:-.02em;font-family:Fraunces,Georgia,serif}h1{font-size:clamp(2rem,5vw,4.35rem);line-height:.95}h2{font-size:clamp(1.25rem,2.6vw,1.9rem)}h3{font-size:1.12rem}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:flex-start;gap:.8rem;border-top:2px solid var(--accent);border-bottom:1px solid var(--line);padding:.9rem 1.2rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f5f3f2f2}.brand{text-decoration:none;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:900;font-family:Fraunces,Georgia,serif}.brand-sub{color:var(--muted);font-size:.9rem}.content{width:min(1260px,calc(100% - 1.4rem));margin:1rem auto 4.8rem}.stack,.stack-lg{display:grid}.stack{gap:1rem}.stack-lg{gap:1.3rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:1.15rem;box-shadow:0 16px 30px #1b0d0d0f}.hero{position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:auto -100px -100px auto;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(232,56,52,.17),transparent 62%)}.hero-content{position:relative;z-index:1;display:grid;gap:1rem;max-width:760px}.hero-content h1 span{display:block;color:var(--accent)}.hero-content p{margin:0;color:var(--muted);font-size:1.06rem;line-height:1.6}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.hero-stats article{border:1px solid var(--line);border-radius:14px;background:#fff;padding:.8rem;display:grid;gap:.2rem}.hero-stats strong{font-size:1.28rem}.hero-stats span{color:var(--muted);font-size:.9rem}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.results-link-panel{background:linear-gradient(180deg,#fff,#fff7f7)}.actions-collapsible>summary{list-style:none}.actions-collapsible>summary::-webkit-details-marker{display:none}.actions-collapsible>summary{cursor:pointer;font-weight:800;color:#423838}.actions-collapsible .actions-content{margin-top:.7rem}.muted{color:var(--muted)}.small{font-size:.88rem}input,select,textarea{width:100%;border:1px solid #dccdca;border-radius:12px;background:#fff;padding:.7rem .8rem}input:focus,select:focus,textarea:focus{outline:2px solid rgba(232,56,52,.22);outline-offset:1px;border-color:#d99a97}button,.button-link{border-radius:12px;border:none;background:var(--accent);color:#fff;text-decoration:none;font-weight:700;padding:.62rem .95rem;cursor:pointer;transition:transform .13s ease,background .13s ease}button:hover,.button-link:hover{background:var(--accent-dark);transform:translateY(-1px)}button:disabled{opacity:.6;cursor:not-allowed;transform:none}.button-link.ghost,button.ghost{background:#fff;color:#564e4e;border:1px solid #e3d1cf}.primary-btn{box-shadow:0 6px 18px #e8383442}.grid-form{display:grid;grid-template-columns:1.3fr 1fr auto;gap:.7rem}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.course-card{border:1px solid var(--line);border-radius:14px;padding:.9rem;text-decoration:none;display:grid;gap:.65rem;transition:transform .13s ease,border-color .13s ease}.course-card p{margin:.35rem 0 0;color:var(--muted)}.course-card span{color:var(--accent-dark);font-weight:700}.course-card:hover{transform:translateY(-2px);border-color:#e8b2b0}.filters-row{display:grid;grid-template-columns:1fr}.lecture-list{display:grid;gap:.6rem}.lecture-row{border:1px solid var(--line);border-radius:14px;padding:.75rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem;text-decoration:none}.lecture-row:hover{border-color:#e3b6b4}.lecture-main{display:grid;gap:.25rem}.lecture-meta{display:grid;gap:.25rem;justify-items:end}.status-badge,.meta-chip{display:inline-flex;align-items:center;border-radius:999px;padding:.26rem .62rem;border:1px solid #e4cfcd;font-size:.84rem;font-weight:700;background:#fff}.meta-chip{font-weight:600}.status-completed,.status-ready{border-color:#b7e1cb;background:var(--success-soft);color:var(--success)}.status-empty{border-color:#dfd3a9;background:#fff8e8;color:#8a6200}.status-failed{border-color:#ecb9b5;background:var(--error-soft);color:var(--error)}.status-transcribing,.status-summary_generating,.status-diagram_generating,.status-running,.status-queued{border-color:#f0d9a9;background:#fff8e8;color:#8a6200}.upload-note{margin-top:0;margin-bottom:.8rem}.inline-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.inline-fields label{display:grid;gap:.35rem}.upload-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.7rem}.upload-summary>div{border:1px solid var(--line);border-radius:12px;padding:.6rem;display:grid;gap:.2rem}.preview-player{display:grid;gap:.4rem}.preview-player audio,.preview-player video{width:100%;border-radius:12px;background:#111}.preview-player video{max-height:420px}.workspace-hero{display:grid;gap:.85rem}.badge-row{display:flex;flex-wrap:wrap;gap:.45rem}.job-progress{display:grid;gap:.36rem}.job-label{font-size:.91rem;font-weight:600;color:#5b5352}.progress-track{width:100%;height:8px;border-radius:999px;background:#eee3e1;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#e83834,#ff7a57)}.button-row{display:flex;gap:.5rem}.button-row.wrap{flex-wrap:wrap}.workspace-grid{display:grid;gap:1rem;grid-template-columns:1.06fr .94fr}.workspace-grid.single-column{grid-template-columns:1fr}.summary-column,.transcript-panel{align-content:start}.transcript-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.transcript-box{min-height:18rem;resize:vertical;font-family:JetBrains Mono,Consolas,monospace;line-height:1.45}.segments summary,details>summary{cursor:pointer;color:#4e4646;font-weight:700}.segment-list{display:grid;gap:.55rem;margin-top:.7rem;max-height:320px;overflow:auto}.segment-item{display:grid;grid-template-columns:auto 1fr;gap:.5rem;align-items:start;border:1px solid var(--line);border-radius:10px;padding:.5rem}.segment-item button{padding:.2rem .45rem;border-radius:8px;font-size:.83rem;background:#fff;color:#514747;border:1px solid #dbc9c8}.segment-item span{font-size:.92rem;color:#4f4646;line-height:1.4}.study-sections{display:grid;gap:.9rem}.study-section{border:1px solid var(--line);border-radius:14px;background:#fff;padding:.8rem}.material-item{gap:.4rem}.study-section-head{margin-bottom:.45rem}.markdown-body{line-height:1.56}.section-markdown h1,.section-markdown h2,.section-markdown h3,.section-markdown h4{margin:1rem 0 .45rem;font-size:1.07rem}.section-markdown>:first-child{margin-top:0}.section-markdown p,.section-markdown ul,.section-markdown ol{margin:.45rem 0}.flashcards-grid{display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr))}.flashcards-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.flashcard{text-align:left;border-radius:14px;border:1px solid #e2d1cf;background:linear-gradient(180deg,#fffdfd,#fff5f4);color:inherit;padding:.95rem;display:grid;gap:.55rem;min-height:170px;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.flashcard:hover{background:linear-gradient(180deg,#fff,#fff1f0);border-color:#e2b1ad;box-shadow:0 10px 20px #33181814;transform:translateY(-2px);color:inherit}.flashcard:focus-visible{outline:2px solid rgba(232,56,52,.3);outline-offset:1px}.flashcard.is-open{border-color:#d69490;background:linear-gradient(180deg,#fff,#ffeeec)}.flashcard-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.flashcard-label{color:#8d5250;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.flashcard-state{font-size:.78rem;color:#6e5857;border:1px solid #dfccca;border-radius:999px;padding:.18rem .55rem;background:#fff}.flashcard-question{font-weight:700;color:#2c2222;line-height:1.4}.flashcard-answer{color:#6a5c5b;font-size:.93rem;border-top:1px dashed #e6d3d1;padding-top:.58rem;line-height:1.45}.flashcard-answer.is-open{color:#2f2828;background:#fff;border:1px solid #e9d8d6;border-radius:10px;padding:.62rem .68rem;font-weight:600}.flashcards-toolbar .button-link.ghost:hover,.flashcards-toolbar button.ghost:hover{background:#f7efee;color:#403535;border-color:#d5c1bf;transform:none}.diagram-panel .mermaid-output{min-height:520px;max-height:76vh}.results-header{position:sticky;top:72px;z-index:5}.results-tabs{display:flex;flex-wrap:wrap;gap:.45rem}.results-tab{background:#fff;color:#514646;border:1px solid #decdcb}.results-tab:hover{background:#fff2f1;color:#463b3b}.results-tab.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.results-tab.is-active:hover{background:var(--accent-dark)}.code-block{background:#fdf8f7;border:1px solid var(--line);border-radius:10px;padding:.75rem;overflow-x:auto}.mermaid-wrapper{border:1px solid var(--line);border-radius:12px;background:#fff;padding:.8rem;display:grid;gap:.6rem}.mermaid-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.mermaid-toolbar-group{display:flex;align-items:center;gap:.4rem}.mermaid-toolbar button{background:#fff;color:#473f3f;border:1px solid #d8c7c5;padding:.3rem .6rem}.mermaid-toolbar button:hover{background:#f7efee;color:#3b3131;border-color:#cbb9b6;transform:none}.mermaid-zoom-label{color:#5b5050;font-size:.9rem;font-weight:700}.mermaid-output{border:1px solid #eadcda;border-radius:10px;background:#fff;padding:1rem;overflow:auto;min-height:420px}.mermaid-canvas{transform-origin:top left;width:max-content;min-width:100%}.mermaid-output svg{width:auto;min-width:100%;max-width:none;height:auto}.mermaid-wrapper.is-fullscreen{border-radius:0;border:none;padding:1rem;background:#f7f2f1}.error-box{border:1px solid #e7b7b3;border-radius:12px;background:var(--error-soft);color:var(--error);padding:.75rem;overflow-x:auto}.empty-box{border:1px dashed #dacbc8;border-radius:12px;background:#fff9f8;color:var(--muted);padding:.9rem}.mobile-actions{display:none}.chat-layout{display:grid;gap:.85rem;grid-template-columns:1.4fr .6fr}.chat-box{border:1px solid var(--line);border-radius:14px;background:#fff;display:grid;gap:.75rem;padding:.75rem}.chat-messages{display:grid;gap:.65rem;max-height:58vh;overflow:auto;padding-right:.25rem}.chat-message{border-radius:12px;padding:.65rem .75rem;border:1px solid #e5d5d3;background:#fff9f8}.chat-message.assistant{border-color:#c9dad4;background:#f2faf7}.chat-message.user{border-color:#e3c9c7;background:#fff4f2}.chat-role{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#6c5958;margin-bottom:.3rem}.chat-form{display:grid;gap:.6rem}.chat-context{align-content:start}.material-list{margin:0;padding-left:1rem;display:grid;gap:.36rem}@media (max-width: 1100px){.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-grid{grid-template-columns:1fr}}@media (max-width: 860px){.topbar{flex-direction:column;align-items:flex-start;gap:.3rem}.content{width:calc(100% - .8rem);margin-top:.6rem}.hero-stats,.cards-grid,.grid-form,.inline-fields,.upload-summary,.transcript-tools,.flashcards-grid{grid-template-columns:1fr}.panel-head,.lecture-row,.lecture-meta{flex-direction:column;align-items:flex-start;justify-items:start}.mobile-actions{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr;gap:.6rem;padding:.6rem;background:#f5f3f2f5;border-top:1px solid var(--line);z-index:30}.mobile-actions button{width:100%}.mobile-actions .button-link{width:100%;text-align:center}.results-header{position:static}.chat-layout{grid-template-columns:1fr}.diagram-panel .mermaid-output{min-height:360px;max-height:62vh}.flashcard{min-height:0}}
