@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--os-bg: #E8E1D3;--os-bg-subtle: #DED7C8;--os-surface: #FFFDF7;--os-surface-raised: #F7F4ED;--os-titlebar: #F0EDE5;--os-titlebar-focused: #EBE7DD;--os-text: #2D2A24;--os-text-secondary: #6B6560;--os-text-muted: #9C958B;--os-border: rgba(93, 83, 71, .2);--os-border-strong: rgba(93, 83, 71, .35);--os-border-focused: rgba(93, 83, 71, .45);--os-accent: #E5A100;--os-accent-hover: #CC8F00;--os-accent-subtle: rgba(229, 161, 0, .12);--os-focus: #D4900A;--os-shadow-sm: 0 1px 3px rgba(60, 50, 30, .1);--os-shadow-md: 0 4px 12px rgba(60, 50, 30, .12);--os-shadow-lg: 0 8px 28px rgba(60, 50, 30, .18);--os-shadow-xl: 0 12px 40px rgba(60, 50, 30, .22);--os-radius-sm: 6px;--os-radius-md: 10px;--os-radius-lg: 14px;--os-font: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--os-font-mono: "IBM Plex Mono", "SF Mono", "Cascadia Code", monospace}.os-desktop{position:fixed;inset:0;overflow:hidden;background:var(--os-bg);font-family:var(--os-font);color:var(--os-text)}.os-desktop__icons{display:grid;grid-template-columns:repeat(auto-fill,88px);gap:4px;padding:20px;align-content:start;max-height:calc(100vh - 80px)}.os-desktop-icon{display:flex;flex-direction:column;align-items:center;gap:4px;width:88px;padding:8px 4px;border:2px solid transparent;border-radius:var(--os-radius-md);background:transparent;cursor:default;-webkit-user-select:none;user-select:none;font-family:var(--os-font);transition:background .15s ease,border-color .15s ease}.os-desktop-icon:hover{background:#0000000a}.os-desktop-icon:focus-visible{outline:none;border-color:var(--os-focus);background:var(--os-accent-subtle)}.os-desktop-icon__image{display:flex;align-items:center;justify-content:center;width:52px;height:52px}.os-desktop-icon__image svg{width:100%;height:100%}.os-desktop-icon__label{font-size:11px;font-weight:500;line-height:1.3;color:var(--os-text);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80px}.os-window{display:flex;flex-direction:column;background:var(--os-surface);border:1px solid var(--os-border);border-radius:var(--os-radius-md);overflow:hidden;box-shadow:var(--os-shadow-md)}.os-window--focused{border-color:var(--os-border-focused);box-shadow:var(--os-shadow-xl)}.os-window__titlebar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--os-titlebar);border-bottom:1px solid var(--os-border);-webkit-user-select:none;user-select:none;cursor:grab;touch-action:none}.os-window--focused .os-window__titlebar{background:var(--os-titlebar-focused)}.os-window--dragging{will-change:transform;-webkit-user-select:none;user-select:none}.os-window--dragging .os-window__titlebar{cursor:grabbing}.os-window__title{font-size:13px;color:var(--os-text);font-weight:600}.os-window__controls{position:relative;z-index:2;display:flex;gap:6px}.os-window__controls button{width:24px;height:24px;border:none;border-radius:var(--os-radius-sm);background:transparent;color:var(--os-text-secondary);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .12s ease,color .12s ease}.os-window__controls button:hover{background:#00000014;color:var(--os-text)}.os-window__controls button:focus-visible{outline:2px solid var(--os-focus);outline-offset:-2px}.os-window__content{flex:1;overflow:auto;padding:16px;color:var(--os-text);font-size:14px;line-height:1.6}.os-window__resize-handle{position:absolute;width:12px;height:12px;z-index:1;touch-action:none}.os-window__resize-handle--se{bottom:0;right:0;cursor:nwse-resize}.os-window__resize-handle--sw{bottom:0;left:0;cursor:nesw-resize}.os-window__resize-handle--ne{top:0;right:0;cursor:nesw-resize}.os-window__resize-handle--nw{top:0;left:0;cursor:nwse-resize}.os-window__resize-handle--se:after{content:"";position:absolute;bottom:3px;right:3px;width:6px;height:6px;border-right:2px solid var(--os-border);border-bottom:2px solid var(--os-border)}.os-window--focused .os-window__resize-handle--se:after{border-color:var(--os-border-strong)}.os-window--resizing{-webkit-user-select:none;user-select:none}.os-dock{position:fixed;bottom:12px;left:50%;transform:translate(-50%);z-index:9000;display:flex;gap:4px;padding:6px 10px;background:#2d2a24d1;border:1px solid rgba(255,255,255,.1);border-radius:var(--os-radius-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--os-shadow-lg)}.os-dock__item{position:relative;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:none;border-radius:var(--os-radius-md);background:#ffffff05;color:#e8e4da;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease,transform .15s ease}.os-dock__item:hover{background:#ffffff1a;transform:translateY(-2px)}.os-dock__item:focus-visible{outline:2px solid var(--os-accent);outline-offset:2px}.os-dock__item-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px}.os-dock__item-icon svg{width:100%;height:100%}.os-dock__indicator{position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:5px;height:5px;border-radius:50%;background:var(--os-accent)}.os-dock__indicator--minimized{background:transparent;border:1.5px solid var(--os-accent)}.os-dock__tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);padding:4px 10px;background:var(--os-surface);color:var(--os-text);font-family:var(--os-font);font-size:12px;font-weight:500;line-height:1.4;white-space:nowrap;border:1px solid var(--os-border-strong);border-radius:var(--os-radius-sm);box-shadow:var(--os-shadow-md);pointer-events:none;opacity:0;transition:opacity .14s ease,transform .14s ease}.os-dock__tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--os-border-strong)}.os-dock__tooltip:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:var(--os-surface);z-index:1}.os-dock__item:hover .os-dock__tooltip{opacity:1;transform:translate(-50%) translateY(0)}.os-window--transitioning{will-change:transform,opacity;pointer-events:none}.os-window--transition-open{transition:transform .28s cubic-bezier(.22,.61,.36,1),opacity .2s ease-out}.os-window--transition-minimize{transition:transform .24s cubic-bezier(.55,0,1,.45),opacity .18s ease-in}@media(prefers-reduced-motion:reduce){.os-window--transitioning{transition:none}}@media(max-width:768px){.os-window{position:fixed!important;inset:0!important;width:100%!important;height:calc(100% - 72px)!important;border-radius:0!important;z-index:auto}.os-window__resize-handle{display:none}.os-window__titlebar{cursor:default;touch-action:auto}.os-dock{bottom:8px;padding:4px 8px;border-radius:var(--os-radius-md);gap:2px}.os-dock__item{width:44px;height:44px}.os-dock__item-icon{width:28px;height:28px}.os-dock__tooltip{display:none}.os-desktop__icons{grid-template-columns:repeat(auto-fill,76px);gap:2px;padding:12px}.os-desktop-icon{width:76px;padding:6px 2px}.os-desktop-icon__image{width:44px;height:44px}.os-desktop-icon__label{font-size:10px;max-width:68px}}.boot-screen{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:var(--os-bg);font-family:var(--os-font)}.boot-screen__content{display:flex;flex-direction:column;align-items:center;gap:14px;z-index:1;transition:opacity .4s ease-out}.boot-screen__avatar{width:300px;height:300px;border-radius:50%;border:3px solid #5C5347;overflow:hidden;box-shadow:0 0 0 6px var(--os-bg),var(--os-shadow-lg);background:var(--os-bg-subtle)}.boot-screen__video{width:100%;height:100%;object-fit:cover;object-position:20% 50%;transform:scale(1.55);transform-origin:38% 30%;display:block}.boot-screen__title{font-size:28px;font-weight:700;color:var(--os-text);letter-spacing:-.02em}.boot-screen__progress-track{width:360px;height:8px;background:var(--os-bg-subtle);border-radius:2px;overflow:hidden}.boot-screen__progress-fill{height:100%;background:var(--os-accent);border-radius:2px;transition:width .1s linear;min-width:0}.boot-screen__status{font-size:13px;font-weight:500;color:var(--os-text-muted);min-height:20px}.boot-screen__circle-expand{position:absolute;top:50%;left:50%;width:220px;height:220px;transform:translate(-50%,calc(-50% - 40px));border-radius:50%;background:var(--os-bg);pointer-events:none;z-index:0;opacity:0}.boot-screen--exiting .boot-screen__content{opacity:0;transition:opacity .3s ease-in}.boot-screen--exiting .boot-screen__circle-expand{opacity:1;transform:translate(-50%,calc(-50% - 40px)) scale(20);transition:transform .7s cubic-bezier(.22,.61,.36,1),opacity .1s ease-out}@media(prefers-reduced-motion:reduce){.boot-screen--exiting .boot-screen__content{transition:opacity .15s ease-in}.boot-screen--exiting .boot-screen__circle-expand{transition:none;transform:translate(-50%,calc(-50% - 52px));opacity:0}.boot-screen__progress-fill{transition:none}}@media(max-width:768px){.boot-screen__avatar{width:160px;height:160px}.boot-screen__circle-expand{width:160px;height:160px;transform:translate(-50%,calc(-50% - 32px))}.boot-screen--exiting .boot-screen__circle-expand{transform:translate(-50%,calc(-50% - 32px)) scale(20)}.boot-screen__title{font-size:24px}.boot-screen__progress-track{width:180px}}.coming-soon{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--os-bg);font-family:var(--os-font)}.coming-soon__content{display:flex;flex-direction:column;align-items:center;gap:8px}.coming-soon__title{font-size:36px;font-weight:700;color:var(--os-text);letter-spacing:-.02em}.coming-soon__subtitle{font-size:15px;color:var(--os-text-secondary)}.coming-soon__divider{width:40px;height:2px;background:var(--os-border-strong);margin:12px 0;border-radius:1px}.coming-soon__status{font-size:13px;font-weight:500;color:var(--os-text-muted)}
