:root{--background:#fff;--foreground:#171717;--font-sans:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"Geist Mono",SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}}body{background:var(--background);color:var(--foreground);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;overflow-y:auto}.home-layout{box-sizing:border-box;justify-content:center;align-items:center;min-height:100dvh;display:flex}.home-mobile{place-items:center;width:100%;max-width:420px;margin:0 auto;display:grid}.home-desktop{place-items:center;width:100%;max-width:980px;margin:0 auto;display:none}@media (min-width:768px){.home-mobile{display:none}.home-desktop{place-items:center;display:grid}}.doc-overlay{z-index:100;background:rgba(0,0,0,.94);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.spotlight-overlay{z-index:120;-webkit-backdrop-filter:blur(18px);background:rgba(4,7,18,.82);justify-content:center;align-items:flex-start;padding:max(48px,min(12vh,140px)) 24px 24px;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.spotlight-shell{color:#e2e8f0;background:rgba(10,12,24,.94);border:1px solid rgba(148,163,184,.32);border-radius:18px;gap:16px;width:min(640px,100%);padding:20px;display:grid;box-shadow:0 40px 120px rgba(15,23,42,.45),inset 0 1px rgba(255,255,255,.08)}.spotlight-input-row{background:rgba(15,23,42,.75);border:1px solid rgba(148,163,184,.28);border-radius:14px;align-items:center;gap:12px;padding:12px 16px;display:flex}.spotlight-leading{color:rgba(226,232,240,.65);font-size:.85rem;font-weight:600}.spotlight-input{color:#f8fafc;background:0 0;border:none;outline:none;flex:1;font-size:1rem}.spotlight-input::placeholder{color:rgba(148,163,184,.6)}.spotlight-results{max-height:320px;padding:4px;overflow-y:auto}.spotlight-stacks{gap:16px;display:grid}.spotlight-stack-grid{flex-wrap:wrap;gap:8px;display:flex}.spotlight-stack-chip{color:rgba(226,232,240,.86);background:rgba(30,41,59,.6);border:1px solid rgba(148,163,184,.3);border-radius:999px;padding:6px 12px;font-size:.85rem;transition:background .15s,border-color .15s,transform .15s}.spotlight-stack-chip:hover{background:rgba(59,130,246,.22);border-color:rgba(148,163,184,.5);outline:none;transform:translateY(-1px)}.spotlight-stack-chip:focus-visible{background:rgba(59,130,246,.22);border-color:rgba(148,163,184,.5);outline:none;transform:translateY(-1px)}.spotlight-empty{text-align:center;color:rgba(226,232,240,.7);margin:0;padding:20px 0;font-size:.92rem}.spotlight-results ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.spotlight-item{width:100%;color:inherit;text-align:left;background:rgba(15,23,42,.65);border:1px solid transparent;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;transition:background .15s,border-color .15s,transform .15s;display:flex}.spotlight-item:hover{background:rgba(79,89,108,.22);border-color:rgba(148,163,184,.45);outline:none;transform:translateY(-1px)}.spotlight-item:focus-visible{background:rgba(79,89,108,.22);border-color:rgba(148,163,184,.45);outline:none;transform:translateY(-1px)}.spotlight-item.active{background:rgba(100,116,139,.28);border-color:rgba(148,163,184,.55);box-shadow:0 12px 36px rgba(15,23,42,.38)}.spotlight-item-main{flex-direction:column;gap:4px;display:flex}.spotlight-item-title{font-size:1rem;font-weight:600}.spotlight-item-slug{letter-spacing:.03em;text-transform:uppercase;color:rgba(148,163,184,.7);font-size:.75rem}.spotlight-chips{flex-wrap:wrap;justify-content:flex-end;gap:6px;min-width:120px;display:flex}.spotlight-chip{color:rgba(226,232,240,.85);background:rgba(148,163,184,.18);border:1px solid rgba(148,163,184,.32);border-radius:999px;padding:4px 10px;font-size:.75rem}.doc-shell{color:#1f2933;background:#f6f7f8;flex:1;grid-template-rows:auto 1fr;width:100%;display:grid;overflow:hidden}.doc-bar{background:#f6f7f8;border-bottom:1px solid rgba(15,23,42,.08);justify-content:space-between;align-items:center;padding:12px 18px;display:flex;position:relative}.doc-bar-title{color:rgba(55,65,81,.9);font-size:.95rem;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.doc-open-link{color:rgba(55,65,81,.85);background:rgba(15,23,42,.06);border:1px solid rgba(148,163,184,.25);border-radius:999px;margin-left:auto;padding:6px 10px;font-size:.8rem;text-decoration:none;transition:background .15s,border-color .15s}.doc-open-link:hover{background:rgba(15,23,42,.12);border-color:rgba(148,163,184,.4)}.doc-open-link:focus-visible{background:rgba(15,23,42,.12);border-color:rgba(148,163,184,.4)}.doc-body{color:#1f2933;gap:max(1.75rem,min(4vw,2.5rem));padding:max(2rem,min(4vw,3rem));display:grid;overflow-y:auto}.doc-page{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:max(1.75rem,min(4vw,2.75rem));box-shadow:0 18px 36px rgba(15,23,42,.15),inset 0 0 0 1px rgba(148,163,184,.12)}.doc-page h1,.doc-page h2,.doc-page h3,.doc-page h4{color:#1f2937}.doc-page p{color:rgba(55,65,81,.92);line-height:1.7}.doc-page a{color:#2563eb}.doc-img{gap:.5rem;margin:max(1rem,min(2vw,1.6rem)) 0;display:grid}.doc-img figcaption{color:rgba(55,65,81,.7);text-align:center;font-size:.85rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes openBook{0%{opacity:0;transform:perspective(1200px)rotateY(-24deg)scale(.92)}to{opacity:1;transform:perspective(1200px)rotateY(0)scale(1)}}@keyframes closeBook{0%{opacity:1;transform:perspective(1200px)rotateY(0)scale(1)}to{opacity:0;transform:perspective(1200px)rotateY(-24deg)scale(.92)}}.animate-fade-in{animation:.25s both fadeIn}.animate-fade-out{animation:.25s both fadeOut}.animate-open-book{animation:.55s cubic-bezier(.2,.8,.2,1) both openBook}.animate-close-book{animation:.35s both closeBook}.shelf{--shelf-gap:18rem;--shelf-thickness:16px;background:radial-gradient(120% 80% at 50% 0,rgba(255,255,255,.06),rgba(0,0,0,.3)),linear-gradient(#1b130d,#120c08 60%,#0e0a06);border-radius:12px;position:relative;box-shadow:inset 0 1px rgba(255,255,255,.04),0 20px 50px rgba(0,0,0,.35)}.shelf:before{content:"";pointer-events:none;background-image:repeating-linear-gradient(to bottom,transparent 0 calc(var(--shelf-gap) - var(--shelf-thickness)),rgba(0,0,0,.35) calc(var(--shelf-gap) - var(--shelf-thickness))calc(var(--shelf-gap) - var(--shelf-thickness) + 2px),#6b4b34 calc(var(--shelf-gap) - var(--shelf-thickness) + 2px)calc(var(--shelf-gap) + 2px),rgba(255,255,255,.08) calc(var(--shelf-gap) + 2px)var(--shelf-gap));filter:saturate(.9);position:absolute;top:0;bottom:0;left:0;right:0}.vignette{position:relative}.vignette:after{content:"";pointer-events:none;background:radial-gradient(120% 120% at 50% 0,transparent 40%,rgba(0,0,0,.35));position:absolute;top:-20px;bottom:-20px;left:-20px;right:-20px}.iphone{justify-content:center;display:flex}.iphone-frame{aspect-ratio:9/19.5;background:#000;border-radius:42px;width:min(90vw,380px);position:relative;box-shadow:0 30px 60px rgba(0,0,0,.5),inset 0 0 0 10px #111}.screen{background:linear-gradient(#111 0%,#0d0f17 100%);border-radius:32px;position:absolute;top:10px;bottom:10px;left:10px;right:10px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}.screen-unsupported{text-align:center;color:#e2e8f0;grid-template-rows:auto 1fr;gap:1.5rem;padding:18px 20px 32px;display:grid}.unsupported-body{align-content:center;gap:1rem;display:grid}.unsupported-emoji{font-size:2.5rem}.unsupported-title{margin:0;font-size:1.1rem;font-weight:700}.unsupported-text{color:rgba(226,232,240,.85);margin:0;font-size:.95rem;line-height:1.6}.notch{background:#000;border-bottom-right-radius:16px;border-bottom-left-radius:16px;width:160px;height:26px;position:absolute;top:6px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px rgba(0,0,0,.6)}.home-indicator{background:rgba(229,231,235,.2);border-radius:4px;width:120px;height:4px;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.statusbar{color:#e5e7eb;justify-content:space-between;padding:10px 14px;font-size:12px;display:flex}.homescreen{grid-template-rows:auto 1fr;height:100%;display:grid}.widgets{grid-template-columns:repeat(4,1fr);gap:12px;padding:12px 14px 26px;display:grid}.widget{color:#e5e7eb;text-align:center;background:linear-gradient(rgba(255,255,255,.06),rgba(0,0,0,.1));border:1px solid rgba(255,255,255,.06);border-radius:16px;place-items:center;gap:6px;height:78px;font-size:12px;transition:transform .15s,background .15s;display:grid}.widget:hover{background:linear-gradient(rgba(255,255,255,.08),rgba(0,0,0,.12));transform:translateY(-2px)scale(1.02)}.widget .label{white-space:nowrap;text-overflow:ellipsis;width:100%;padding:0 6px;display:block;overflow:hidden}.detail{color:#e5e7eb;grid-template-rows:auto 1fr;height:100%;display:grid}.detail-header{border-bottom:1px solid rgba(255,255,255,.06);align-items:center;gap:8px;padding:10px 12px;display:flex}.detail-header .back{color:#e5e7eb;background:0 0;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:2px 10px;font-size:12px}.detail-header .title{text-align:center;flex:1;font-size:14px;font-weight:700}.detail-body{padding:12px 14px 24px;overflow:auto}.detail-text{color:#e5e7eb;gap:.75rem;display:grid}.detail-paragraph{margin:0;font-size:.95rem;line-height:1.6}.detail-links-term{gap:.45rem;margin-top:.75rem;display:grid}.detail-links-title{letter-spacing:.04em;text-transform:none;color:rgba(226,232,240,.68);align-items:center;gap:.4rem;font-size:.84rem;display:flex}.detail-link-line{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.term-link-command{font-size:.85rem;font-family:var(--font-mono);cursor:pointer;border:1px solid transparent;border-radius:6px;justify-content:center;align-items:center;padding:.25rem .65rem;text-decoration:none;transition:transform .12s,background .15s,border-color .15s;display:inline-flex}.term-link-internal{color:#c7d2fe;background:rgba(99,102,241,.2);border-color:rgba(99,102,241,.35)}.term-link-internal:hover{background:rgba(99,102,241,.32);outline:none;transform:translateY(-1px)}.term-link-internal:focus-visible{background:rgba(99,102,241,.32);outline:none;transform:translateY(-1px)}.term-link-external{color:#bfdbfe;background:rgba(59,130,246,.18);border-color:rgba(59,130,246,.32)}.term-link-external:hover{background:rgba(59,130,246,.28);outline:none;transform:translateY(-1px)}.term-link-external:focus-visible{background:rgba(59,130,246,.28);outline:none;transform:translateY(-1px)}.term-link-static{color:#e2e8f0;cursor:default;background:rgba(148,163,184,.16);border-color:rgba(148,163,184,.32)}.term-link-note{color:rgba(148,163,184,.78);font-size:.8rem;font-family:var(--font-mono)}.markdown{color:#e5e7eb}.markdown h1,.markdown h2,.markdown h3{color:#fff;margin:.6em 0 .3em}.markdown p,.markdown ul{margin:.5em 0}.markdown hr{border:0;border-top:1px solid rgba(255,255,255,.08);margin:12px 0}@keyframes slideIn{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.animate-slide-in{animation:.25s both slideIn}.macbook{place-items:center;min-height:0;display:grid}.mb-frame{aspect-ratio:16/10;background:#0a0a0a;border-radius:18px;width:min(95vw,980px);min-height:0;position:relative;box-shadow:0 40px 100px rgba(0,0,0,.55),inset 0 0 0 2px #0f0f10,inset 0 0 0 3px rgba(255,255,255,.02)}.mb-frame:before{content:"";filter:saturate(.8);z-index:-1;background:linear-gradient(#3a3b40,#1e2126 60%,#0f1115);border-radius:24px;position:absolute;top:-6px;bottom:-16px;left:-10px;right:-10px;box-shadow:0 60px 120px rgba(0,0,0,.6)}.mb-notch{pointer-events:none;background:#000;border-bottom-right-radius:14px;border-bottom-left-radius:14px;width:160px;height:26px;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 2px 8px rgba(0,0,0,.6)}.mb-screen{background-image:radial-gradient(80% 60% at 50% 20%,rgba(0,0,0,.25),rgba(0,0,0,.55)),url(/macbook_bg.jpg);background-position:50%,50%;background-size:cover,cover;border-radius:12px;grid-template-rows:auto 1fr auto;min-height:0;display:grid;position:absolute;top:10px;bottom:10px;left:10px;right:10px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}.mb-menubar{color:#cbd5e1;background:linear-gradient(rgba(255,255,255,.06),rgba(0,0,0,.06));border-bottom:1px solid rgba(255,255,255,.06);align-items:center;gap:12px;height:28px;padding:0 12px;font-size:12px;display:flex}.mb-menubar .apple{font-weight:700}.mb-menubar .menu{opacity:.9;font-weight:600}.mb-menubar .status{opacity:.8;margin-left:auto}.mb-menubar .apple{color:transparent;position:relative}.mb-menubar .apple:before{content:"";color:#e5e7eb;font-weight:700}.mb-menubar .status{color:#cbd5e1;content:"11월 10일(일) 오후 11:10";position:relative}.mb-desktop{padding:16px;position:relative;overflow:hidden}.mb-dock{-webkit-backdrop-filter:saturate(180%)blur(12px);background:linear-gradient(rgba(255,255,255,.1),rgba(0,0,0,.1));border:1px solid rgba(255,255,255,.18);border-radius:18px;justify-content:center;align-items:center;gap:14px;width:max-content;height:56px;margin:0 auto 12px;padding:10px 14px;display:flex;position:relative;box-shadow:0 8px 26px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.08)}.dock-reflection{pointer-events:none;border-radius:inherit;background:linear-gradient(transparent,rgba(255,255,255,.08));position:absolute;top:0;bottom:0;left:0;right:0}.dock-item{will-change:transform;background:linear-gradient(rgba(255,255,255,.08),rgba(0,0,0,.2));border:1px solid rgba(255,255,255,.1);border-radius:12px;place-items:center;width:48px;transition:transform 80ms;display:grid;position:relative;box-shadow:0 10px 24px rgba(0,0,0,.4)}.dock-item-inner{justify-content:center;align-items:center;width:100%;height:40px;display:flex}.dock-item img{width:32px;height:32px;display:block}.dock-item.dock-spotlight svg{color:#e5e7eb;width:28px;height:28px}.dock-item.dock-spotlight.active svg{color:#cbd5f5}.dock-spotlight-wrapper{justify-content:center;align-items:center;display:flex;position:relative}.dock-tooltip{white-space:nowrap;color:rgba(226,232,240,.92);pointer-events:none;z-index:50;background:rgba(3,4,10,.96);border:1px solid rgba(71,85,105,.5);border-radius:12px;padding:10px 14px;font-size:.85rem;animation:.25s both tooltipFade;position:absolute;bottom:72px;left:50%;transform:translate(-50%);box-shadow:0 12px 24px rgba(15,23,42,.35),inset 0 1px rgba(255,255,255,.08)}.dock-tooltip:after{content:"";background:inherit;transform-origin:50%;border-bottom:1px solid rgba(148,163,184,.35);border-left:1px solid rgba(148,163,184,.35);width:12px;height:12px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%,-2px)rotate(45deg)}@keyframes tooltipFade{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.dock-item .emoji{font-size:24px}.dock-item.active:after{content:"";background:#e5e7eb;border-radius:50%;width:6px;height:6px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}@keyframes dockBounce{0%{transform:translateY(0)}30%{transform:translateY(-10px)}60%{transform:translateY(0)}80%{transform:translateY(-4px)}to{transform:translateY(0)}}.dock-bounce{animation:.5s dockBounce}.desktop-icons{z-index:0;grid-template-columns:repeat(auto-fill,minmax(88px,0));align-content:start;gap:14px 18px;padding:18px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.desktop-icon{color:#e5e7eb;text-shadow:0 1px 2px rgba(0,0,0,.6);background:0 0;border:1px solid transparent;border-radius:10px;grid-template-rows:56px auto;place-items:center;width:88px;height:96px;transition:background .15s,border-color .15s,transform .1s;display:grid}.desktop-icon:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);transform:translateY(-2px)}.desktop-icon.active,.desktop-icon.selected{background:rgba(99,102,241,.16);border-color:rgba(99,102,241,.35)}.desktop-icon img{filter:drop-shadow(0 6px 12px rgba(0,0,0,.5));width:40px;height:40px}.desktop-icon .emoji{filter:drop-shadow(0 6px 12px rgba(0,0,0,.5));font-size:28px}.desktop-icon .label{-webkit-line-clamp:2;text-overflow:ellipsis;text-align:center;-webkit-box-orient:vertical;padding:0 6px;font-size:12px;line-height:1.2;display:-webkit-box;overflow:hidden}.explorer{width:100%;height:100%}.explorer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;padding:.25rem;display:grid}@media (min-width:640px){.explorer-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (min-width:768px){.explorer-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.explorer-item{color:#e5e7eb;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:10px;grid-template-rows:40px auto;place-items:center;width:76px;height:84px;transition:transform .12s,background .15s,border-color .15s;display:grid}.explorer-item:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);transform:translateY(-1px)}.explorer-item:focus-visible{outline-offset:2px;outline:2px solid #6366f1}.explorer-item .emoji{filter:drop-shadow(0 3px 8px rgba(0,0,0,.45));font-size:22px}.explorer-item .label{font-size:10px}.app-window{background:#0b0c0e;border:1px solid #1f2937;border-radius:10px;grid-template-rows:auto auto 1fr;display:grid;position:absolute;overflow:hidden;box-shadow:0 18px 60px rgba(0,0,0,.55)}.titlebar{cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:#0f1115;border-bottom:1px solid #1f2937;align-items:center;gap:10px;height:32px;padding:0 10px;display:flex}.traffic{gap:8px;display:flex}.traffic .close,.traffic .min,.traffic .max{border:none;border-radius:50%;width:12px;height:12px}.traffic .close{background:#ff5f57}.traffic .min{background:#febc2e}.traffic .max{background:#28c840}.title{text-align:center;color:#e5e7eb;flex:1;font-size:12px;font-weight:700}.title-spacer{width:60px}.content{color:#e5e7eb;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;overflow:auto}.content h1{color:#60a5fa}.content h2{color:#a78bfa}.content a{color:#34d399;text-decoration:underline}@keyframes windowIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.animate-window-in{animation:.25s both windowIn}@keyframes genieIn{0%{transform-origin:var(--origin-x,50%)100%;opacity:0;transform:translateY(16px)scale(.86)}to{transform-origin:var(--origin-x,50%)100%;opacity:1;transform:translateY(0)scale(1)}}@keyframes genieOut{0%{transform-origin:var(--origin-x,50%)100%;opacity:1;transform:translateY(0)scale(1)}to{transform-origin:var(--origin-x,50%)100%;opacity:0;transform:translateY(16px)scale(.86)}}.animate-genie-in{animation:.32s cubic-bezier(.2,.8,.2,1) both genieIn}.animate-genie-out{animation:.28s both genieOut}.terminal{display:none!important}@keyframes genieMin{0%{transform-origin:var(--origin-x,50%)100%;clip-path:inset(0% round 12px);opacity:1;transform:translateY(0)scale(1)}40%{clip-path:inset(8% 26% round 12px);transform:translateY(8px)scaleY(.88)}70%{clip-path:inset(36% 44% round 12px);transform:translateY(12px)scaleY(.22)scaleX(.82)}to{clip-path:inset(46% 49% round 12px);opacity:0;transform:translateY(18px)scaleY(.06)scaleX(.55)}}.animate-genie-min{animation:.42s cubic-bezier(.22,.72,.12,1) both genieMin}@keyframes fadeInK{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@keyframes fadeOutK{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-8px)}}.fade-in{animation:.18s both fadeInK}.fade-in.delayed{animation-delay:60ms}.fade-out{pointer-events:none;animation:.18s both fadeOutK}.resize-handle{opacity:0;background:0 0;position:absolute}.resize-handle.se{cursor:nwse-resize;width:16px;height:16px;bottom:0;right:0}.resize-handle.ne{cursor:nesw-resize;width:16px;height:16px;top:0;right:0}.resize-handle.nw{cursor:nwse-resize;width:16px;height:16px;top:0;left:0}.resize-handle.sw{cursor:nesw-resize;width:16px;height:16px;bottom:0;left:0}.resize-handle.n{cursor:ns-resize;height:8px;top:0;left:12px;right:12px}.resize-handle.s{cursor:ns-resize;height:10px;bottom:0;left:12px;right:12px}.resize-handle.e{cursor:ew-resize;width:8px;top:12px;bottom:12px;right:0}.resize-handle.w{cursor:ew-resize;width:8px;top:12px;bottom:12px;left:0}.tabbar{background:linear-gradient(rgba(255,255,255,.04),rgba(0,0,0,.06));border-bottom:1px solid rgba(255,255,255,.06);align-items:center;gap:6px;padding:6px 8px;display:flex}.tab{color:#e5e7eb;cursor:pointer;background:rgba(255,255,255,.04);border-radius:8px;align-items:center;gap:8px;padding:4px 10px;display:flex}.tab.active{background:rgba(255,255,255,.1)}.tab-title{white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:12px;overflow:hidden}.tab-close{color:#cbd5e1;opacity:.9;background:0 0;border:none;font-size:14px;line-height:1}.tab-close:hover{color:#fff}.terminal{background:#0b0c0e;border:1px solid #1f2937;border-radius:10px;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.02)}.terminal-header{background:#0f1115;border-bottom:1px solid #1f2937;align-items:center;gap:6px;height:28px;padding:0 10px;display:flex;position:relative}.terminal-header .light{border-radius:999px;width:10px;height:10px;display:inline-block}.terminal-header .light.red{background:#ff5f57}.terminal-header .light.yellow{background:#febc2e}.terminal-header .light.green{background:#28c840}.terminal-header .term-title{color:#94a3b8;font-size:12px;position:absolute;left:50%;transform:translate(-50%)}.terminal-body{color:#e5e7eb;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.terminal .prompt{color:#e5e7eb;margin:0 0 8px}.terminal .prompt .at{color:#94a3b8}.terminal .prompt .path{color:#60a5fa}.terminal .prompt .sig{color:#10b981}.stack-line{flex-wrap:wrap;gap:8px;display:flex}.stack-chip{border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:4px 8px;font-size:12px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}.chip-0{color:#e5e7eb;background:#1f2937}.chip-1{color:#e5e7eb;background:#0f766e}.chip-2{color:#e5e7eb;background:#1e3a8a}.chip-3{color:#fef3c7;background:#7c2d12}.chip-4{color:#e9d5ff;background:#3f1f6b}.chip-5{color:#d1fae5;background:#065f46}.term-stack{margin-bottom:10px}.term-line{color:#e5e7eb;font-size:.875rem;line-height:1.5}.term-line .user{color:#e5e7eb;font-weight:600}.term-line .at{color:#94a3b8}.term-line .host{color:#e5e7eb}.term-line .path{color:#60a5fa}.term-line .sig{color:#10b981}.term-output{flex-wrap:wrap;gap:10px;display:flex}.ansi.c0{color:#93c5fd}.ansi.c1{color:#a78bfa}.ansi.c2{color:#34d399}.ansi.c3{color:#fca5a5}.ansi.c4{color:#f59e0b}.ansi.c5{color:#22d3ee}.live-term{margin-bottom:12px}.term-input-wrap{flex-direction:column;align-items:flex-start;margin-left:8px;display:inline-flex}.term-input{color:#e5e7eb;font:inherit;caret-color:#10b981;background:0 0;border:none;outline:none;flex:1;min-width:200px}.term-input::placeholder{color:#64748b}.term-echo{width:100%;margin:6px 0 0}.ppt-shell{box-sizing:border-box;width:100%;height:100%;min-height:0;margin:0;position:relative}.ppt-content{grid-template-columns:220px 1fr;width:100%;height:100%;min-height:0;display:grid}.ppt-thumbs{-webkit-overflow-scrolling:touch;pointer-events:auto;z-index:1;background:rgba(255,255,255,.03);border-right:1px solid rgba(255,255,255,.12);height:100%;min-height:0;padding:10px 8px;overflow-y:auto}.ppt-thumb{aspect-ratio:16/9;color:#e5e7eb;cursor:pointer;background:#0a0a0a;border:1px solid rgba(255,255,255,.12);border-radius:8px;place-items:center;width:100%;margin-bottom:10px;display:grid;position:relative;overflow:hidden}.ppt-thumb img{object-fit:cover;opacity:.9;width:100%;height:100%}.ppt-thumb.active{outline:2px solid #60a5fa}.ppt-thumb-ind{color:#e5e7eb;background:rgba(0,0,0,.4);border-radius:4px;padding:0 4px;font-size:11px;position:absolute;bottom:4px;right:6px}.ppt-stage{height:100%;min-height:0;position:relative;overflow:hidden}.ppt-slide{background:#000;width:100%;height:100%;position:relative;overflow:hidden}.ppt-title{color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.6);margin:0;font-size:28px;font-weight:800;position:absolute;top:6%;left:50%;transform:translate(-50%)}.ppt-image{object-fit:contain;background:#000;width:100%;position:absolute;top:0;bottom:0;left:0;right:0}.ppt-body{color:#e5e7eb;text-shadow:0 2px 10px rgba(0,0,0,.6);background:rgba(0,0,0,.25);border-radius:8px;padding:8px 12px;font-size:16px;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}.ppt-controls{justify-content:center;align-items:center;gap:10px;display:flex}.ppt-controls button{color:#e5e7eb;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:4px 8px}.ppt-ind{color:#94a3b8;font-size:12px}.ppt-overlay{z-index:100;background:rgba(0,0,0,.95);flex-direction:column;align-items:stretch;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.ppt-overlay.ppt-immersive .ppt-content{grid-template-columns:1fr;height:100vh}.ppt-overlay.ppt-immersive .ppt-thumbs{display:none}.ppt-overlay.ppt-immersive .ppt-bar{opacity:0!important}.ppt-bar{color:#e5e7eb;opacity:0;z-index:4;pointer-events:none;background:rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.12);justify-content:space-between;align-items:center;width:100%;height:44px;padding:0 12px;transition:opacity .2s;display:flex}.ppt-bar-left{flex:1;align-items:center;gap:10px;display:flex}.ppt-bar-icon{color:#e5e7eb;cursor:pointer;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:6px;place-items:center;height:28px;display:grid}.ppt-bar-title{font-weight:600}.ppt-close{color:#e5e7eb;opacity:0;cursor:pointer;z-index:5;background:0 0;border:1px solid rgba(255,255,255,.2);border-radius:999px;place-items:center;height:28px;transition:opacity .2s;display:grid;position:absolute;top:8px;right:10px}.ppt-close.always{opacity:1!important;pointer-events:auto!important}.ppt-nav{color:#e5e7eb;opacity:0;cursor:pointer;z-index:4;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:999px;place-items:center;width:52px;height:52px;transition:opacity .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.ppt-nav-left{left:16px}.ppt-nav-right{right:16px}.ppt-hint{color:#94a3b8;opacity:0;font-size:12px;transition:opacity .2s}.ppt-overlay:hover .ppt-nav,.ppt-overlay:hover .ppt-hint,.ppt-overlay:hover .ppt-close,.ppt-overlay:hover .ppt-bar,.ppt-overlay.show-ui .ppt-nav,.ppt-overlay.show-ui .ppt-hint,.ppt-overlay.show-ui .ppt-close,.ppt-overlay.show-ui .ppt-bar{opacity:1;pointer-events:auto}.ppt-embed{border:1px solid rgba(255,255,255,.12);border-radius:8px;grid-template-columns:180px 1fr;gap:10px;margin-bottom:12px;display:grid;overflow:hidden}.ppt-embed-thumbs{background:rgba(255,255,255,.04);padding:8px;overflow-y:auto}.ppt-embed-thumb{aspect-ratio:16/9;color:#e5e7eb;background:#0a0a0a;border:1px solid rgba(255,255,255,.12);border-radius:6px;place-items:center;width:100%;margin-bottom:8px;display:grid;position:relative;overflow:hidden}.ppt-embed-thumb img{object-fit:cover;opacity:.9;width:100%;height:100%}.ppt-embed-thumb.active{outline:2px solid #60a5fa}.ppt-embed-ind{color:#e5e7eb;background:rgba(0,0,0,.4);border-radius:4px;padding:0 4px;font-size:11px;position:absolute;bottom:4px;right:6px}.ppt-embed-stage{background:#000;place-items:center;min-height:320px;display:grid;position:relative}.ppt-embed-slide{width:100%;height:100%;position:relative}.ppt-embed-slide img{object-fit:contain;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.ppt-embed-title{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5);font-weight:700;position:absolute;top:10px;left:10px}.ppt-embed-body{color:#e5e7eb;background:rgba(0,0,0,.35);border-radius:6px;padding:6px 10px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.ppt-start-embed{color:#e5e7eb;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:6px;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:10px;left:10px}.ppt-start{color:#e5e7eb;opacity:0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 14px;font-size:13px;transition:opacity .2s;position:absolute;bottom:12%;left:50%;transform:translate(-50%)}.ppt-overlay:hover .ppt-start,.ppt-overlay.show-ui .ppt-start{opacity:1}.ppt-nav:focus-visible{opacity:1;outline:2px solid rgba(229,231,235,.267)}.ppt-close:focus-visible{opacity:1;outline:2px solid rgba(229,231,235,.267)}.ppt-hint:focus-visible{opacity:1;outline:2px solid rgba(229,231,235,.267)}
