:root{color:oklch(14.5% 0 0);--card:oklch(100% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--border:oklch(92.2% 0 0);--primary:oklch(20.5% 0 0);--radius:10px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:oklch(98.5% 0 0);font-family:Geist,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,.button{border:1px solid var(--border);background:var(--card);color:inherit;cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:9px 13px;font-weight:500;text-decoration:none;display:inline-flex}button:hover,.button:hover{background:var(--muted)}button:disabled{cursor:default;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:2px solid #8b5cf6}button.primary,a.primary{background:var(--primary);border-color:var(--primary);color:#fff}button.primary:hover,a.primary:hover{background:#333}button.destructive{color:#fff;background:#b42318;border-color:#b42318}.icon-button{background:0 0;border:0;border-radius:6px;flex-shrink:0;padding:7px}.danger-hover:hover{color:#b42318;background:#fff1f0}h1,h2,h3,p{margin:0}h1{letter-spacing:-.6px;font-size:25px;font-weight:600}h2{font-size:14px;font-weight:500}p{line-height:1.6}.muted{color:var(--muted-foreground);font-size:13px}.app-shell{min-height:100vh;display:flex}.sidebar{flex-direction:column;flex-shrink:0;gap:25px;width:246px;min-height:100vh;padding:24px 16px 16px;display:flex}.brand{align-items:center;gap:10px;padding:0 6px;display:flex}.brand-symbol{color:#fff;background:linear-gradient(135deg,#8b5cf6,#d946ef);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.brand strong{font-size:16px;font-weight:600;display:block}.brand div>span{color:var(--muted-foreground);margin-top:3px;font-size:11px;display:block}.environment-badge{color:#71717a;align-items:center;gap:7px;margin:-7px 6px 0;font-size:11px;display:flex}.environment-badge>span{background:#f59e0b;border-radius:50%;width:6px;height:6px}.sidebar nav{flex:1}.nav-heading{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:1.2px;margin:8px 10px 12px;font-size:10px}.nav-heading:not(:first-child){margin-top:28px}.nav-item{background:0 0;border:0;justify-content:flex-start;width:100%;margin-bottom:3px;padding:10px;font-size:13px;font-weight:400;display:flex}.nav-item svg{color:#71717a}.nav-item>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav-item.active{background:#ededee;font-weight:500}.nav-item.active svg{color:#52525b}.sidebar-note{border:1px solid var(--border);background:var(--card);border-radius:11px;align-items:flex-start;gap:9px;padding:13px 11px;font-size:12px;display:flex}.sidebar-note svg{color:#8b5cf6;margin-top:2px}.sidebar-note span{color:var(--muted-foreground);font-size:11px}.profile{align-items:center;gap:9px;padding:7px 2px;display:flex}.profile img,.avatar{object-fit:cover;border-radius:50%;width:32px;height:32px}.avatar{color:#7c3aed;background:#ede9fe;justify-content:center;align-items:center;font-size:11px;display:flex}.profile>div{flex:1;min-width:0}.profile strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.profile div>span{color:var(--muted-foreground);margin-top:3px;font-size:11px;display:block}.main-panel{background:var(--card);border:1px solid var(--border);border-radius:13px;flex:1;min-width:0;margin:8px 8px 8px 0;box-shadow:0 1px 2px #00000005}.workspace{min-height:calc(100vh - 18px);position:relative}.workspace-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:67px;padding:15px 24px;display:flex}.breadcrumbs{flex-wrap:wrap;align-items:center;gap:5px;font-size:12px;display:flex}.breadcrumbs>span{color:var(--muted-foreground);align-items:center;gap:5px;display:flex}.breadcrumbs button{background:0 0;border:0;padding:4px;font-size:12px;font-weight:400}.header-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.header-actions .primary{font-size:12px}.workspace-body{flex-direction:column;gap:25px;padding:29px 27px;display:flex}.page-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.page-heading p{color:var(--muted-foreground);margin-top:7px;font-size:13px}.subtle-badge{border:1px solid var(--border);color:#71717a;white-space:nowrap;border-radius:20px;padding:5px 9px;font-size:11px}.browser-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.search-input{border:1px solid var(--border);color:#a1a1aa;border-radius:8px;align-items:center;gap:9px;width:100%;max-width:390px;padding:0 11px;display:flex}.search-input input{color:#27272a;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:10px 0;font-size:12px}.search-input:focus-within{outline-offset:2px;outline:2px solid #8b5cf6}.view-switch{border:1px solid var(--border);border-radius:8px;gap:3px;padding:3px;display:flex}.view-switch button{background:0 0;border:0;padding:6px}.view-switch button[aria-pressed=true]{background:var(--muted)}.folder-section,.files-section{flex-direction:column;gap:14px;display:flex}.folder-section>h2,.section-heading h2{color:var(--muted-foreground)}.folder-section h2>span{color:#a1a1aa;margin-left:10px;font-size:11px;font-weight:400}.folder-grid{flex-wrap:wrap;gap:12px;display:flex}.folder-card{border-radius:12px;flex-direction:column;flex:1 0 155px;align-items:flex-start;gap:10px;min-width:0;max-width:210px;padding:16px}.folder-symbol{border-radius:9px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:4px;display:flex}.tone-0{color:#8b5cf6;background:#f3edff}.tone-1{color:#3b82f6;background:#edf4ff}.tone-2{color:#f59e0b;background:#fff8e9}.tone-3{color:#10b981;background:#eafbf4}.folder-card strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px;font-weight:500;overflow:hidden}.folder-card>span:last-child{color:var(--muted-foreground);align-items:center;gap:3px;font-size:11px;font-weight:400;display:flex}.section-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.section-heading>span{color:#a1a1aa;font-size:11px}.file-table{border:1px solid var(--border);border-radius:12px;overflow:hidden}.file-table-heading,.file-row{align-items:center;gap:16px;padding:12px 16px;display:flex}.file-table-heading{color:var(--muted-foreground);background:#fafafa;font-size:11px}.file-table-heading>span:first-child,.file-open{flex:1;min-width:0}.file-table-heading>span:nth-child(2),.file-size{flex-shrink:0;width:95px}.file-table-heading>span:nth-child(3),.file-modified{flex-shrink:0;width:130px}.file-table-heading>span:last-child,.file-actions{flex-shrink:0;width:65px}.file-row{border-top:1px solid var(--border);padding-top:10px;padding-bottom:10px}.file-row:hover{background:#fafafa}.file-open{text-align:left;background:0 0;border:0;justify-content:flex-start;gap:12px;padding:0}.file-open:hover{background:0 0}.file-open>span:last-child{min-width:0}.file-open strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;display:block;overflow:hidden}.file-symbol{color:#71717a;background:#f4f4f5;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:35px;height:39px;display:flex}.file-symbol.image{color:#8b5cf6;background:#f5f0ff}.file-symbol.audio{color:#ec4899;background:#fdf0f7}.file-symbol.video{color:#f59e0b;background:#fff7e9}.file-symbol.text{color:#3b82f6;background:#eff5ff}.file-size,.file-modified{color:var(--muted-foreground);font-size:12px}.file-actions{justify-content:flex-end;display:flex}.file-grid{flex-wrap:wrap;gap:12px;display:flex}.file-card{border:1px solid var(--border);border-radius:12px;flex:0 200px;min-width:155px;max-width:100%;padding:16px;position:relative}.file-card:hover{background:#fafafa}.file-card .file-open{flex-direction:column;align-items:flex-start;gap:14px;width:100%}.file-card .file-open>span:last-child{width:100%}.file-card .file-symbol{width:42px;height:45px}.file-card small{color:var(--muted-foreground);margin-top:6px;font-size:11px;font-weight:400;display:block}.file-card .file-actions{position:absolute;top:15px;right:9px}.empty-state{text-align:center;color:var(--muted-foreground);flex-direction:column;align-items:center;gap:12px;padding:55px 20px;display:flex}.empty-state>svg{color:#a1a1aa}.empty-state h3{color:#52525b;font-size:16px;font-weight:500}.empty-state p{font-size:13px}.pagination{color:#a1a1aa;justify-content:center;align-items:center;padding:5px;font-size:11px;display:flex}.pagination button{font-size:12px}.notice{color:#6d28d9;background:#faf7ff;border:1px solid #ddd6fe;border-radius:8px;padding:11px 14px;font-size:12px;line-height:1.6}.notice.error{color:#b42318;background:#fff5f5;border-color:#fecaca}.notice.success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.drop-overlay{z-index:5;color:#7c3aed;pointer-events:none;background:#faf7fff2;border:2px dashed #a78bfa;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:8px}.access-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;padding:24px;display:flex}.access-screen .brand-symbol{border-radius:15px;width:56px;height:56px}.access-screen h1{font-size:32px}.access-screen p{color:var(--muted-foreground);max-width:500px}.access-screen small{color:#a1a1aa;font-size:12px}.access-screen a:not(.button){color:#7c3aed;font-size:12px}@media (width<=1000px){.sidebar{width:210px}.workspace-body{padding:24px 20px}.file-modified,.file-table-heading>span:nth-child(3){width:100px}.file-size,.file-table-heading>span:nth-child(2){width:65px}}@media (width<=760px){.app-shell{flex-direction:column}.sidebar{gap:15px;width:100%;min-height:0;padding:16px}.sidebar nav{flex-wrap:wrap;gap:6px;display:flex}.nav-heading,.sidebar-note,.profile{display:none}.nav-item{border:1px solid var(--border);width:auto;margin:0;padding:8px 10px}.environment-badge{margin:0 6px}.main-panel{margin:0 8px 8px}.workspace-header{padding:12px 16px}.workspace-body{gap:22px;padding:24px 16px}.page-heading{align-items:flex-start}.page-heading .subtle-badge,.file-modified,.file-table-heading>span:nth-child(3){display:none}.file-row,.file-table-heading{gap:10px;padding-left:12px;padding-right:12px}.file-open{gap:8px}.folder-card{flex-basis:130px;max-width:none}.file-card{flex:150px}.workspace{min-height:65vh}}@media (width<=430px){.file-size,.file-table-heading>span:nth-child(2){display:none}.header-actions .primary{padding:8px}.breadcrumbs{font-size:11px}.workspace-header{flex-wrap:wrap}.file-open strong{font-size:11px}}.dialog{border:1px solid var(--border);border-radius:15px;width:min(480px,100vw - 32px);max-height:calc(100vh - 40px);padding:23px;box-shadow:0 20px 80px #0002}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#18181b66}.dialog-wide{width:min(940px,100vw - 32px)}.dialog-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.dialog-heading h2{overflow-wrap:anywhere;font-size:17px}.dialog form{flex-direction:column;gap:17px;display:flex}.dialog-footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:22px;display:flex}.dialog-footer>span{color:var(--muted-foreground);margin-right:auto;font-size:12px}.upload-zone{cursor:pointer;text-align:center;background:#fafafa;border:1px dashed #d4d4d8;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:30px 18px;display:flex;position:relative}.upload-zone svg{color:#8b5cf6}.upload-zone span{color:var(--muted-foreground);font-size:11px}.upload-zone strong{overflow-wrap:anywhere;font-size:13px}.upload-zone input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.upload-zone:focus-within{outline-offset:2px;outline:2px solid #8b5cf6}.field{color:#52525b;flex-direction:column;gap:8px;font-size:12px;display:flex}.field input,.field select{border:1px solid var(--border);color:#18181b;background:#fff;border-radius:7px;width:100%;min-width:0;padding:10px 11px}.removal-path{overflow-wrap:anywhere;background:#fafafa;border-radius:7px;margin-bottom:16px;padding:12px;font-family:monospace;font-size:12px}.preview-body{border:1px solid var(--border);background:#fafafa;border-radius:10px;justify-content:center;align-items:center;min-height:220px;max-height:65vh;padding:20px;display:flex;overflow:auto}.preview-body img,.preview-body video{object-fit:contain;max-width:100%;max-height:58vh}.preview-body audio{width:min(100%,550px)}.preview-body pre{white-space:pre-wrap;overflow-wrap:anywhere;align-self:flex-start;width:100%;margin:0;font-size:12px;line-height:1.6}.revision-label{color:#a1a1aa;overflow-wrap:anywhere;font-size:11px}.revision-label code{color:#71717a;font-size:10px}.game-layout{align-items:flex-start;gap:26px;display:flex}.game-files{flex-direction:column;flex:1;gap:24px;min-width:0;display:flex}.catalog-selection{flex-direction:column;gap:15px;display:flex}.catalog-selection .search-input{max-width:none}.catalog-assets{flex-direction:column;gap:13px;display:flex}.catalog-asset{border:1px solid var(--border);border-radius:10px;align-items:center;gap:11px;padding:13px;display:flex}.catalog-asset>div{flex:1;min-width:0}.catalog-asset strong{overflow-wrap:anywhere;font-size:12px;font-weight:500;display:block}.catalog-asset small{color:#a1a1aa;margin-top:4px;font-size:11px;display:block}.catalog-asset a{color:#71717a;display:flex}.catalog-upload{border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:15px;padding:19px;display:flex}.catalog-upload>button{align-self:flex-start}.draft-review{border:1px solid var(--border);background:#fafafa;border-radius:12px;flex-direction:column;flex-shrink:0;gap:17px;width:320px;padding:19px;display:flex}.draft-review>.section-heading svg{color:#a1a1aa}.draft-empty{text-align:center;color:#a1a1aa;flex-direction:column;align-items:center;gap:12px;padding:30px 5px;display:flex}.draft-empty strong{color:#71717a;font-size:13px;font-weight:500}.draft-empty p{font-size:12px}.draft-status{align-items:center;gap:7px;display:flex}.draft-status strong{font-size:12px;font-weight:500}.status-dot{background:#8b5cf6;border-radius:50%;width:7px;height:7px}.status-dot.published{background:#16a34a}.status-dot.recovery-required{background:#f59e0b}.draft-changes{border-top:1px solid var(--border);flex-direction:column;display:flex}.draft-change{border-bottom:1px solid var(--border);align-items:flex-start;gap:11px;padding:14px 0;display:flex}.draft-change>div{min-width:0}.change-tag{color:#7c3aed;background:#ede9fe;border-radius:5px;margin-top:1px;padding:4px 6px;font-size:9px}.change-tag.remove{color:#b42318;background:#fee2e2}.draft-change strong{font-size:12px;font-weight:500;display:block}.draft-change div>span{color:#71717a;overflow-wrap:anywhere;margin-top:4px;font-size:11px;display:block}.draft-change small{color:#a1a1aa;overflow-wrap:anywhere;margin-top:5px;font-size:10px;display:block}.draft-review .notice.success{align-items:center;gap:8px;display:flex}.publication-receipt{border-top:1px solid var(--border);color:#71717a;flex-direction:column;gap:8px;padding-top:15px;font-size:11px;display:flex}.publication-receipt strong{color:#52525b;font-weight:500}.publication-receipt code{overflow-wrap:anywhere;font-size:10px}@media (width<=1100px){.game-layout{flex-direction:column}.game-files,.draft-review{width:100%}.draft-review{flex-shrink:1}}
