@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Crimson+Pro:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap");:root{--ink:#1a1a1a;--muted:#6b7280;--surface:#fff;--border:#e5e7eb;--accent:#2563eb;--accent-2:#7c3aed;--panel:hsla(0,0%,100%,.95);--shadow:0 4px 20px rgba(0,0,0,.08);--page-bg:linear-gradient(180deg,#fafbfc,#f8fafc 60%,#fff);--background:#fff;--section-concepts:#2563eb;--section-notes:#059669;--section-evidence:#dc2626;--section-connections:#7c3aed;--section-activity:#ea580c;--section-research:#0891b2;--academic-blue:#2563eb;--academic-purple:#7c3aed;--academic-green:#059669;--academic-orange:#ea580c;--academic-red:#dc2626;--academic-teal:#0891b2;--font-display:"Inter",system-ui,-apple-system,sans-serif;--font-body:"Inter",system-ui,-apple-system,sans-serif;--font-serif:"Crimson Pro",Georgia,serif;--font-mono:"IBM Plex Mono","SFMono-Regular",Menlo,Consolas,monospace;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px}:root.dark{--ink:#f9fafb;--muted:#9ca3af;--surface:#1f2937;--border:#374151;--accent:#3b82f6;--accent-2:#8b5cf6;--panel:rgba(31,41,55,.95);--shadow:0 4px 20px rgba(0,0,0,.3);--page-bg:linear-gradient(180deg,#111827,#1f2937 60%,#111827);--background:#111827;--section-concepts:#3b82f6;--section-notes:#10b981;--section-evidence:#ef4444;--section-connections:#8b5cf6;--section-activity:#f97316;--section-research:#06b6d4;--academic-blue:#3b82f6;--academic-purple:#8b5cf6;--academic-green:#10b981;--academic-orange:#f97316;--academic-red:#ef4444;--academic-teal:#06b6d4}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;overflow-y:hidden;height:100%}body{color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0;margin:0;text-size-adjust:100%;transition:background .3s ease,color .3s ease;letter-spacing:-.01em}:root.dark body,body{background:var(--page-bg)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.2;letter-spacing:-.02em;color:var(--ink);margin:0}h1{font-size:32px;font-weight:700;line-height:1.1}h2{font-size:24px;line-height:1.25}h2,h3{font-weight:600}h3{font-size:20px;line-height:1.3}h4{font-size:18px;font-weight:600;line-height:1.35}h5{font-size:16px}h5,h6{font-weight:600;line-height:1.4}h6{font-size:14px;text-transform:uppercase;letter-spacing:.05em}p{font-size:15px;line-height:1.7;color:var(--ink);margin:0 0 var(--spacing-md) 0}.section-concepts{border-left:3px solid var(--section-concepts);background:rgba(37,99,235,.04)}.section-notes{border-left:3px solid var(--section-notes);background:rgba(5,150,105,.04)}.section-evidence{border-left:3px solid var(--section-evidence);background:rgba(220,38,38,.04)}.section-connections{border-left:3px solid var(--section-connections);background:rgba(124,58,237,.04)}.section-activity{border-left:3px solid var(--section-activity);background:rgba(234,88,12,.04)}.section-research{border-left:3px solid var(--section-research);background:rgba(8,145,178,.04)}a{color:inherit;text-decoration:none}.app-shell{height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 20% 20%,rgba(17,138,178,.08),transparent 25%),radial-gradient(circle at 80% 10%,rgba(239,71,111,.08),transparent 22%),linear-gradient(180deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.4));transition:background .3s ease;overflow:hidden}@media (max-width:1024px){.app-shell{padding:0}}@media (max-width:768px){.graph-header{flex-direction:column;gap:12px}.node-card{width:calc(100% - 32px)!important;right:16px!important;bottom:16px!important;max-width:none!important}.context-panel{max-width:100%!important;border-left:none!important;border-top:1px solid var(--border)}}.pencil-intent-chip{animation:fadeInUp .25s cubic-bezier(.4,0,.2,1)}@keyframes scaleIn{0%{opacity:0;transform:translateX(-50%) scale(.9)}to{opacity:1;transform:translateX(-50%) scale(1)}}.selection-action-menu{animation:scaleIn .2s cubic-bezier(0,0,.2,1) forwards}:root.dark .app-shell{background:radial-gradient(circle at 20% 20%,rgba(56,189,248,.12),transparent 25%),radial-gradient(circle at 80% 10%,hsla(0,91%,71%,.12),transparent 22%),linear-gradient(180deg,rgba(15,23,42,0),rgba(30,41,59,.4))}.graph-pane{flex:1 1 auto;min-height:0;padding:var(--spacing-lg) var(--spacing-xl) var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);overflow:hidden}.graph-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:0}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;margin-bottom:2px}.title{font-size:24px;font-weight:700;font-family:var(--font-display);color:var(--ink);margin-bottom:var(--spacing-sm);line-height:1.25;letter-spacing:-.02em}.subtitle{color:var(--muted);font-size:14px;line-height:1.5;margin-bottom:0;font-weight:400}.stat-bar{display:flex;gap:8px}.stat-pill{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;padding:var(--spacing-sm) var(--spacing-md);display:flex;flex-direction:column;min-width:80px;gap:var(--spacing-xs)}.stat-label{color:var(--muted);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-weight:700;font-size:18px;font-family:var(--font-display);color:var(--ink);line-height:1.2}.graph-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:6px;gap:6px}.graph-controls--compact{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:4px;margin-top:4px;margin-bottom:4px}.control-card{background:var(--panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;padding:var(--spacing-md);box-shadow:var(--shadow);transition:all .2s ease}.control-card:hover{box-shadow:0 6px 24px rgba(0,0,0,.12);border-color:var(--accent)}.control-card--legend{grid-column:span 2}.control-card--compact{padding:4px 8px;border-radius:8px}.control-card--compact .control-header{font-size:11px;margin-bottom:2px}.control-card--compact .control-value{font-size:11px}.control-card--compact input[type=range]{margin:2px 0;height:4px}.control-card--compact .control-caption{display:none}.control-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:8px}.control-value{color:var(--muted);font-size:13px}.control-caption{color:var(--muted);font-size:12px;margin-top:4px}.legend{display:flex;flex-wrap:wrap;gap:8px}.legend-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.pill{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:8px;background:var(--surface);border:1px solid var(--border);color:var(--ink);cursor:pointer;font-weight:500;font-size:14px;font-family:var(--font-body);transition:all .2s ease;letter-spacing:-.01em}.pill--small{padding:6px 10px;font-size:12px}.pill--active{border-color:var(--accent);color:var(--accent);background:rgba(37,99,235,.08);box-shadow:0 2px 8px rgba(37,99,235,.15);font-weight:600}.pill--ghost{background:rgba(37,99,235,.06);border-color:rgba(37,99,235,.15);color:var(--ink)}.explorer-toolbar{width:100%;background:var(--panel);border-top:1px solid var(--border);border-bottom:1px solid var(--border);border-left:none;border-right:none;border-radius:0;padding:var(--spacing-sm) var(--spacing-md);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);margin:0}.explorer-toolbar__group,.explorer-toolbar__row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.explorer-toolbar__group--right{margin-left:auto}.explorer-toolbar__divider{width:1px;height:30px;background:rgba(15,23,42,.08)}.explorer-toolbar__field{display:flex;align-items:center;gap:8px}.explorer-toolbar__label{font-size:12px;color:var(--muted);font-weight:600}.explorer-toolbar__select{height:32px;border-radius:10px;border:1px solid rgba(15,23,42,.1);background:hsla(0,0%,100%,.75);padding:0 10px;font-size:12px;color:var(--ink);transition:background .3s ease,border-color .3s ease,color .3s ease}:root.dark .explorer-toolbar__select{border:1px solid rgba(148,163,184,.2);background:rgba(30,41,59,.75)}.explorer-toolbar__buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.explorer-btn{border-radius:999px}.explorer-btn--primary{background:var(--accent);border:1px solid var(--accent);color:var(--surface);box-shadow:0 4px 12px rgba(37,99,235,.3);font-weight:600;font-family:var(--font-display)}.explorer-btn--primary:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 6px 16px rgba(37,99,235,.4)}.explorer-btn--ghost{background:rgba(15,23,42,.02);border-color:rgba(15,23,42,.1)}.explorer-btn--disabled{opacity:.55;cursor:not-allowed}.explorer-toolbar__stats{display:flex;gap:10px;align-items:center}.explorer-stat{padding:6px 10px;border-radius:12px;background:rgba(15,23,42,.02);border:1px solid rgba(15,23,42,.08);min-width:72px}.explorer-stat__label{font-size:11px;color:var(--muted);font-weight:600}.explorer-stat__value{font-size:15px;font-weight:700;color:var(--ink);line-height:1.1}.explorer-toolbar__error{margin-top:8px;font-size:12px;color:#ef476f;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.graph-canvas{position:relative;flex:1 1 auto;min-height:380px;background:radial-gradient(circle at 30% 20%,rgba(17,138,178,.08),transparent 40%),radial-gradient(circle at 70% 30%,rgba(239,71,111,.08),transparent 40%),linear-gradient(145deg,#f4f7fb,#eef4ff 50%,#fbfdff);border-radius:20px;box-shadow:var(--shadow);overflow:hidden;transition:background .3s ease}:root.dark .graph-canvas{background:radial-gradient(circle at 30% 20%,rgba(56,189,248,.12),transparent 40%),radial-gradient(circle at 70% 30%,hsla(0,91%,71%,.12),transparent 40%),linear-gradient(145deg,#1e293b,#0f172a 50%,#1e293b)}.focus-hint{position:absolute;left:16px;bottom:16px;padding:8px 10px;border-radius:12px;background:hsla(0,0%,100%,.85);border:1px solid rgba(15,23,42,.1);color:rgba(15,23,42,.82);font-size:12px;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 30px rgba(15,23,42,.1);pointer-events:none;transition:background .3s ease,border-color .3s ease,color .3s ease}:root.dark .focus-hint{background:rgba(30,41,59,.85);border:1px solid rgba(148,163,184,.2);color:rgba(241,245,249,.82);box-shadow:0 10px 30px rgba(0,0,0,.3)}.graph-mini-map{position:absolute;top:14px;right:14px;opacity:.7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 10px 26px rgba(15,23,42,.1);border-radius:12px}.graph-canvas canvas{background:transparent!important}.node-card{position:absolute;right:var(--spacing-lg);bottom:var(--spacing-lg);width:min(400px,45vw);background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:var(--spacing-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.node-card__header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.node-card__header h3{margin:0;font-size:20px;font-weight:600;font-family:var(--font-display);color:var(--ink);line-height:1.25;letter-spacing:-.02em}.node-card__meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.node-card__id{font-family:IBM Plex Mono,SFMono-Regular,Menlo,Consolas,monospace;color:var(--muted);font-size:12px}.badge{display:inline-flex;padding:var(--spacing-xs) var(--spacing-sm);border-radius:6px;font-weight:500;font-size:12px;font-family:var(--font-body);letter-spacing:.02em}.badge--soft{background:rgba(37,99,235,.1);color:var(--accent);border:1px solid rgba(37,99,235,.2)}.node-tag{position:absolute;transform:translate(-50%,-50%);background:hsla(0,0%,100%,.95);border:1px solid var(--border);border-radius:14px;padding:10px 12px;box-shadow:var(--shadow);pointer-events:none;min-width:200px;transition:background .3s ease,border-color .3s ease}:root.dark .node-tag{background:rgba(30,41,59,.95)}.node-tag__title{font-weight:700;font-size:15px;color:var(--ink)}.node-tag__meta{display:flex;gap:8px;margin:6px 0}.node-tag__context{font-size:13px;color:var(--muted)}.chat-pane{flex:0 0 auto;background:var(--surface);border-top:1px solid var(--border);border-radius:26px 26px 0 0;padding:10px 16px 12px;display:flex;flex-direction:column;gap:2px;box-shadow:0 -18px 50px rgba(15,23,42,.1);overflow:hidden;min-height:30vh;transition:min-height .4s cubic-bezier(.4,0,.2,1),flex-basis .4s cubic-bezier(.4,0,.2,1);max-height:100vh}.chat-pane--collapsed{min-height:30vh!important}.chat-pane--expanded{min-height:45vh!important;flex-basis:50%!important}.chat-pane--maximized{min-height:75vh!important;flex-basis:75%!important}.chat-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:0;flex-shrink:0}.chat-header h2{font-size:20px;font-weight:600;font-family:var(--font-display);margin-bottom:var(--spacing-sm);color:var(--ink);letter-spacing:-.02em}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border-radius:999px;border:1px solid var(--border);padding:9px 12px;background:rgba(17,138,178,.04);color:var(--ink);cursor:pointer;font-weight:600;transition:all .2s ease}.chip:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(15,23,42,.12)}.chip--warning{background:rgba(255,183,3,.1);border-color:#ffb703;color:#92400e}.chat-stream{flex:1 1 auto;display:flex;flex-direction:column;gap:10px;padding:0;overflow-y:auto;overflow-x:hidden;min-height:0;margin:0}.chat-empty{padding:12px;border:1px dashed var(--border);border-radius:12px;color:var(--muted);font-size:14px}.chat-error{padding:10px 12px;background:rgba(239,71,111,.1);border:1px solid rgba(239,71,111,.3);color:var(--accent-2);border-radius:10px;font-weight:600}.chat-bubble{background:var(--panel);border:1px solid var(--border);padding:var(--spacing-md) var(--spacing-lg);border-radius:16px;max-width:75%;box-shadow:var(--shadow);line-height:1.7}.chat-bubble--user{align-self:flex-end;background:rgba(37,99,235,.1);border-color:rgba(37,99,235,.25);color:var(--ink)}.chat-role{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px}.chat-text{font-size:15px;color:var(--ink);line-height:1.7;font-family:var(--font-body)}.chat-input-row{display:flex;align-items:flex-end;gap:10px;min-height:0;margin-top:0;flex-shrink:0}.splitter{height:10px;cursor:row-resize;background:linear-gradient(90deg,rgba(17,138,178,.1),rgba(239,71,111,.1));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.chat-input{flex:1 1;border:1px solid var(--border);border-radius:16px;padding:8px 12px;font-family:IBM Plex Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.5;resize:none;min-height:52px;box-shadow:var(--shadow)}.chat-input:focus{outline:2px solid rgba(17,138,178,.35)}.field-label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--ink)}.field-label input,.field-label textarea{margin-top:0}.send-btn{background:var(--accent);color:var(--surface);border:none;border-radius:10px;padding:var(--spacing-md) var(--spacing-lg);font-weight:600;font-family:var(--font-display);cursor:pointer;box-shadow:0 4px 12px rgba(37,99,235,.3);font-size:14px;transition:all .2s ease;letter-spacing:-.01em}.send-btn:hover{background:#1d4ed8;box-shadow:0 6px 16px rgba(37,99,235,.4);transform:translateY(-1px)}.loader{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:linear-gradient(145deg,#eef6ff,#fdf7ec);color:var(--ink);font-weight:700;transition:background .3s ease,color .3s ease}:root.dark .loader{background:linear-gradient(145deg,#1e293b,#0f172a)}.skeleton{position:relative;overflow:hidden;background:linear-gradient(110deg,rgba(17,24,39,.06) 8%,rgba(17,24,39,.12) 18%,rgba(17,24,39,.06) 33%);background-size:200% 100%;animation:skeleton-shimmer 1.2s ease-in-out infinite}.skeleton-line{height:10px;border-radius:999px}.skeleton-card{border-radius:8px;border:1px solid var(--border);background:var(--surface)}.fade-in{animation:fade-in .22s ease-out}@keyframes skeleton-shimmer{0%{background-position:-60% 0}to{background-position:120% 0}}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.loader__ring{width:54px;height:54px;border-radius:50%;border:4px solid rgba(17,138,178,.2);border-top:4px solid var(--accent);animation:spin 1s linear infinite}.loader__text{font-size:16px}input[type=range]{width:100%;accent-color:var(--accent)}button{font-family:inherit}@media (max-width:900px){.graph-header{flex-direction:column}.control-card--legend{grid-column:span 1}.chat-bubble{max-width:100%}.chip,.explorer-btn,.pill,button{min-height:44px;min-width:44px}.graph-pane{padding:12px 14px 10px}.node-card{width:calc(100% - 36px);max-width:100%;right:18px;left:18px}.chat-pane{padding:8px 12px 10px}.chat-input{font-size:16px;min-height:48px}.title{font-size:18px}.subtitle{font-size:11px}}@media (max-width:480px){.graph-pane{padding:10px 12px 8px;gap:8px}.title{font-size:16px}.subtitle{font-size:10px}.stat-pill{min-width:60px;padding:6px 10px}.stat-value{font-size:14px}.stat-label{font-size:11px}.graph-controls{grid-template-columns:1fr;gap:8px}.node-card{padding:12px 14px;border-radius:12px}.node-card__header h3{font-size:16px}.chat-pane{padding:8px 10px;min-height:35vh}.chat-pane--expanded{min-height:50vh!important}.chat-pane--maximized{min-height:80vh!important}.chat-header h2{font-size:16px}.chat-text{font-size:14px}.chat-input{font-size:16px;padding:10px 12px;min-height:48px}.send-btn{padding:10px 14px;font-size:14px}.explorer-toolbar{padding:8px 10px}.explorer-toolbar__row{flex-direction:column;align-items:stretch;gap:8px}.explorer-toolbar__group{flex-wrap:wrap;gap:8px}.explorer-toolbar__group--right{margin-left:0}.explorer-stat{min-width:60px;padding:4px 8px}.explorer-stat__value{font-size:13px}.explorer-stat__label{font-size:10px}.chips{flex-direction:column;gap:6px}.chip{width:100%;justify-content:center}.home-grid{gap:16px}input[type=email],input[type=search],input[type=tel],input[type=text],select,textarea{font-size:16px!important}.chat-stream,.resource-list{-webkit-overflow-scrolling:touch}.suggestion-card{padding:12px!important;margin-bottom:10px!important}}.lecture-studio-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}@media (max-width:1200px){.lecture-studio-grid{grid-template-columns:1fr}}.chat-text,.node-card,.node-tag__context{word-break:break-word}.chat-bubble{max-width:min(70%,640px)}.node-card__section{margin-top:12px;padding-top:8px;border-top:1px solid var(--border,rgba(148,163,184,.4))}.node-card__hint{font-size:12px;color:var(--muted,#6b7280);margin-top:4px}.node-card__error{font-size:12px;color:var(--accent-2)}.resource-list{display:flex;flex-direction:column;gap:8px;margin-top:6px;max-height:200px;overflow-y:auto}.resource-item{border-radius:10px;border:1px solid var(--border,rgba(148,163,184,.4));padding:8px;background:rgba(15,23,42,.03)}.resource-item__header{display:flex;align-items:center;gap:6px;margin-bottom:4px}.resource-item__title{font-size:13px;font-weight:500;color:var(--ink)}.resource-item__preview img{max-width:100%;border-radius:8px;margin-top:4px}.resource-item__link{font-size:12px;color:var(--accent);text-decoration:underline}.resource-item__audio{width:100%;margin-top:4px}.resource-item__caption{font-size:12px;color:var(--muted,#6b7280);margin-top:4px}@keyframes pulse-highlight{0%{background-color:var(--background);box-shadow:0 0 0 0 rgba(17,138,178,0)}50%{background-color:rgba(17,138,178,.1);box-shadow:0 0 0 4px rgba(17,138,178,.2)}to{background-color:var(--background);box-shadow:0 0 0 0 rgba(17,138,178,0)}}.resource-item.pulse-highlight{animation:pulse-highlight 1.2s ease-in-out;transition:background-color .3s ease}.resource-upload{margin-top:8px}.resource-upload__label{cursor:pointer}.home-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-gap:var(--spacing-xl);gap:var(--spacing-xl)}@media (max-width:968px){.home-grid{grid-template-columns:1fr}}.study-section{padding:var(--spacing-lg);border-radius:12px;margin-bottom:var(--spacing-md);transition:all .2s ease}.study-section:hover{box-shadow:var(--shadow)}.study-header{font-family:var(--font-display);font-weight:600;font-size:18px;margin-bottom:var(--spacing-md);color:var(--ink);letter-spacing:-.02em}.study-content{font-family:var(--font-body);font-size:15px;line-height:1.7;color:var(--ink)}.study-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:var(--spacing-lg);box-shadow:var(--shadow);transition:all .2s ease}.study-card:hover{box-shadow:0 6px 24px rgba(0,0,0,.12);transform:translateY(-2px)}.concept-wiki{background:var(--panel);border-left:4px solid var(--section-concepts);padding:var(--spacing-xl);border-radius:12px;margin-bottom:var(--spacing-lg)}.concept-wiki h1{color:var(--section-concepts);margin-bottom:var(--spacing-md)}.notes-section{border-left:4px solid var(--section-notes)}.evidence-section,.notes-section{background:var(--panel);padding:var(--spacing-lg);border-radius:12px}.evidence-section{border-left:4px solid var(--section-evidence)}.connections-section{border-left:4px solid var(--section-connections)}.connections-section,.research-section{background:var(--panel);padding:var(--spacing-lg);border-radius:12px}.research-section{border-left:4px solid var(--section-research)}.ai-assistant-bubble{background:linear-gradient(135deg,rgba(37,99,235,.05),rgba(124,58,237,.05));border:1px solid var(--border);border-left:3px solid var(--accent);padding:var(--spacing-lg);border-radius:12px;margin-bottom:var(--spacing-md)}.academic-content{max-width:800px;margin:0 auto;padding:var(--spacing-xl)}.academic-content h1,.academic-content h2,.academic-content h3{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md)}.academic-content p{margin-bottom:var(--spacing-md)}.academic-content ol,.academic-content ul{margin:var(--spacing-md) 0;padding-left:var(--spacing-xl)}.academic-content li{margin-bottom:var(--spacing-sm);line-height:1.7}.timeline-item{border-left:2px solid var(--section-activity);padding-left:var(--spacing-lg);margin-bottom:var(--spacing-lg);position:relative}.timeline-item:before{content:"";position:absolute;left:-6px;top:0;width:12px;height:12px;border-radius:50%;background:var(--section-activity);border:2px solid var(--surface)}input[type=search],input[type=text],textarea{font-family:var(--font-body);font-size:15px;line-height:1.6;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink);transition:all .2s ease}input[type=search]:focus,input[type=text]:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(37,99,235,.1)}button{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;transition:all .2s ease}button:not(.pill):not(.chip):not(.badge){padding:var(--spacing-sm) var(--spacing-md);border-radius:8px;font-size:14px}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.lecture-editor-content{background-image:radial-gradient(#e5e7eb .5px,transparent 0),radial-gradient(#e5e7eb .5px,transparent 0);background-size:20px 20px;background-position:0 0,10px 10px;box-shadow:0 10px 30px rgba(0,0,0,.05)}.pencil-active .lecture-editor-content{cursor:crosshair}.paper-texture{position:relative;background-color:#fff!important;color:#000!important}.paper-texture:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url(https://www.transparenttextures.com/patterns/clean-gray-paper.png);opacity:.05;pointer-events:none;z-index:0}.paper-ruled{background-image:linear-gradient(var(--border) 1px,transparent 1px);background-size:100% 32px}.paper-grid{background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px)}.paper-dot,.paper-grid{background-size:30px 30px}.paper-dot{background-image:radial-gradient(var(--border) 1.5px,transparent 1.5px)}.paper-split{background:linear-gradient(90deg,#fff 50%,#f7f7f5 0)!important;position:relative}.paper-split:after{left:50%;width:1px;background:var(--border)}.paper-margin:after,.paper-split:after{content:"";position:absolute;top:0;bottom:0;z-index:1}.paper-margin:after{left:80px;width:2px;background:rgba(220,38,38,.2)}.paper-cream{background-color:#fbf5e9!important}.paper-cream:before{opacity:.12}.paper-dark{background-color:#1a1a1a!important;background-image:linear-gradient(hsla(0,0%,100%,.05) 1px,transparent 0)}.paper-dark .ProseMirror{color:#eee!important}.paper-dark:before{filter:invert(1);opacity:.05}.page-transitioning{cursor:wait!important}.page-transitioning *{pointer-events:none!important}.nav-link{position:relative;display:inline-flex;align-items:center;padding:8px 16px;border-radius:8px;color:var(--ink);text-decoration:none;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);min-height:44px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.nav-link:hover{background-color:var(--surface);color:var(--accent);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.nav-link:active{transform:translateY(0);transition:transform .1s}.nav-link.active{background-color:var(--accent-bg);color:var(--accent);font-weight:600}.nav-link.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background-color:var(--accent);border-radius:0 2px 2px 0}.quick-action-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);min-height:44px;min-width:44px;position:relative;overflow:hidden}.quick-action-btn:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.quick-action-btn:active{transform:translateY(-1px);transition:transform .1s}.quick-action-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transition:left .5s}.quick-action-btn:hover:before{left:100%}.secondary-action-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--ink);font-weight:500;font-size:14px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);min-height:40px}.secondary-action-btn:hover{background:var(--surface);border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.secondary-action-btn:active{transform:translateY(0);transition:transform .1s}.nav-section{padding:16px;border-bottom:1px solid var(--border)}.nav-section:last-child{border-bottom:none}.nav-section-header{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.nav-section-content{display:flex;flex-direction:column;gap:4px}.session-item{display:flex;align-items:center;padding:12px 16px;border-radius:8px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);border:1px solid transparent;min-height:48px}.session-item:hover{background:var(--surface);border-color:var(--border);transform:translateX(4px)}.session-item:active{transform:translateX(2px);transition:transform .1s}.session-item-content{flex:1 1;min-width:0}.session-item-title{font-weight:500;color:var(--ink);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-item-subtitle{font-size:12px;color:var(--muted)}.session-item-time{font-size:11px;color:var(--muted);margin-left:8px;flex-shrink:0}.nav-loading{display:flex;align-items:center;justify-content:center;padding:20px;color:var(--muted)}.nav-loading-spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite;margin-right:8px}.nav-link:focus-visible,.quick-action-btn:focus-visible,.secondary-action-btn:focus-visible,.session-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:768px){.nav-link,.quick-action-btn,.secondary-action-btn,.session-item{min-height:48px}.nav-link{padding:12px 20px}.session-item{padding:16px 20px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:fadeInUp .3s cubic-bezier(.4,0,.2,1) both}.route-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:9999;background:linear-gradient(90deg,#118ab2,#06d6a0 50%,#f4a261);transform:scaleX(0);transform-origin:left;opacity:0;transition:transform .48s ease,opacity .18s ease}.route-progress.is-active{opacity:1;transform:scaleX(1)}.fab-nav{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--accent);border:none;color:#fff;font-size:20px;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.15);transition:all .2s cubic-bezier(.4,0,.2,1);z-index:1000}.fab-nav:hover{transform:scale(1.1);box-shadow:0 6px 20px rgba(0,0,0,.2)}.fab-nav:active{transform:scale(1.05)}@media (max-width:768px){.fab-nav{bottom:80px}}.context-menu{position:fixed;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:4px 0;min-width:160px;box-shadow:0 8px 32px rgba(0,0,0,.12);z-index:10000;opacity:0;transform:scale(.95);transition:all .15s cubic-bezier(.4,0,.2,1)}.context-menu.open{opacity:1;transform:scale(1)}.context-menu-item{display:flex;align-items:center;padding:8px 16px;cursor:pointer;font-size:14px;color:var(--ink);transition:background-color .15s}.context-menu-item:hover{background:var(--surface)}.context-menu-item.disabled{color:var(--muted);cursor:not-allowed}.context-menu-item.disabled:hover{background:transparent}.context-menu-divider{height:1px;background:var(--border);margin:4px 0}:root{--breakpoint-ipad:1024px;--breakpoint-mobile:768px}.explorer-overlay-container{position:absolute;inset:0;z-index:100;display:flex;flex-direction:column;pointer-events:none}.custom-scrollbar-hide::-webkit-scrollbar{display:none}.custom-scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.explorer-toolbar-container{padding:12px 16px;background:var(--background);z-index:100;pointer-events:auto}.explorer-panels-layout{display:flex;flex:1 1;overflow:hidden;gap:16px;padding:0 16px 16px;pointer-events:none;justify-content:flex-end}.explorer-panels-group{display:flex;gap:16px;align-items:flex-start;pointer-events:auto;max-width:100%}.responsive-panel{width:100%;height:85vh;flex-shrink:1;min-width:0;border-radius:20px;box-shadow:0 20px 50px rgba(0,0,0,.1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s cubic-bezier(.4,0,.2,1)}.page-container{max-width:1200px;margin:0 auto;padding:var(--spacing-lg);width:100%}.content-padding{padding:24px 32px}@media (max-width:1024px){.explorer-panels-layout{gap:12px;padding:0 12px 12px}.explorer-panels-group{gap:12px}}@media (max-width:768px){.page-container{padding:var(--spacing-md)}.content-padding{padding:16px}.explorer-panels-layout{flex-direction:column;justify-content:flex-end;overflow-y:auto;padding:8px;pointer-events:auto}.explorer-panels-group{flex-direction:column;width:100%;align-items:stretch;height:auto;max-height:100%}.responsive-panel{height:auto;max-height:80vh;width:100%!important;max-width:none!important}.explorer-toolbar__row{gap:8px!important}.explorer-toolbar__group{width:100%;justify-content:space-between}}@media (max-height:600px){.responsive-panel{height:90vh}}@media (max-width:768px){h1{font-size:24px}h2{font-size:20px}h3{font-size:18px}.responsive-header-stack{flex-direction:column!important;align-items:flex-start!important;gap:16px!important}.btn,.pill,a.btn,button,input,select{min-height:44px!important;min-width:44px}}@media (min-width:769px) and (max-width:1024px){.btn,.nav-link,.pill,.session-item,a.btn,button,input,select{min-height:44px!important}}.transition-overlay{position:fixed;inset:0;background:hsla(0,0%,100%,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;pointer-events:none;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center}.page-transitioning .transition-overlay{opacity:1;pointer-events:auto}.transition-spinner{width:40px;height:40px;border:3px solid rgba(37,99,235,.1);border-top:3px solid var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}