/* VIS workspace foundation. Output themes never change these variables. */
html[data-theme=vision]{--font:Inter,'Pretendard','Noto Sans KR','Noto Sans TC',Arial,sans-serif;--bg:#050505;--surface:#101010;--ink:#f3f3f3;--muted:#a3a3a3;--border:#303030;--primary:#4b94ff;--primary-ink:#050505;--soft:#151515;--sidebar:#090909;--sidebar-ink:#eee;--radius:6px;--hero:#101010;--hero-ink:#f3f3f3}
body{background:var(--bg);font-family:var(--font);font-size:13px}.sidebar{width:104px;padding:22px 6px;background:#090909;border-right:1px solid #303030}.shell{margin-left:104px}.brand{justify-content:center;padding:0;font-size:16px;gap:0}.brand>span:last-child{display:none}.brand-symbol{background:#151515;color:#4b94ff;border:1px solid #303030;border-radius:6px}.workspace,.nav-label,.sidebar-note,.profile{display:none}nav{margin-top:28px}nav a{font-size:9px;line-height:1.5;display:flex;flex-direction:column;justify-content:center;gap:7px;padding:11px 4px;text-align:center;border-radius:5px;margin-bottom:4px;min-height:60px;color:#a3a3a3}nav a .icon{width:19px;height:19px}nav a.active{background:#151515;color:#4b94ff}nav .nav-tag,nav .nav-count{position:absolute;right:5px;top:5px;font-size:7px;padding:1px 4px;background:#202020;color:#a3a3a3}nav a{position:relative}.sidebar-bottom{margin-top:16px}.side-help{font-size:9px;padding:10px 4px;text-align:center;justify-content:center;flex-wrap:wrap;color:#a3a3a3}.topbar{background:#050505;border-color:#303030;padding:0 22px;height:54px}main{max-width:1600px;margin:auto;padding:24px 22px 28px}.page-heading h1{font-size:22px;font-weight:600;letter-spacing:-.025em}.page-heading{margin-bottom:18px}.page-heading p{font-size:13px}.section-head h2{font-size:15px}.panel h3{font-size:15px}.btn{border-radius:5px;background:transparent;border-color:#303030}.btn.primary{background:#4b94ff;color:#050505;border-color:#4b94ff}.btn:hover{border-color:#4b94ff}.pill.active{background:#4b94ff;color:#050505}.hero{border:1px solid #303030;border-radius:6px}.hero h2{font-size:30px}.hero-secondary{background:#151515;color:#f3f3f3}.paper{color:#202d28}.theme-bar{background:#101010;border-color:#303030;border-radius:6px}.search-launch,.avatar,.workspace-mark{background:#151515;color:#a3a3a3}.quick-card,.resource-card,.template-card,.panel{box-shadow:none}.footer{padding:18px 22px;color:#a3a3a3}.toast{left:calc(50% + 52px);background:#171717}.motion-intro{background:#101010;border-color:#303030}.motion-intro .tag{background:#202020}.source-card{background:#101010}.report-canvas,.document-previews,.slide-stage,.motion-stage{background-color:#151515;background-image:radial-gradient(#454545 .6px,transparent .6px)}.empty{background:#101010}.resource-card .use-note{color:#eee}input,textarea,select{background:#101010;border-color:#353535;color:#f3f3f3}.theme-chip.active{color:#4b94ff}.theme-chip{background:transparent}.modal-body th{background:#151515}.top-actions{color:#a3a3a3}
.editor-layout,.studio-layout,.motion-editor-layout{grid-template-columns:minmax(290px,340px) minmax(0,1fr);gap:24px}
.editor-sidebar,.convert-controls,.restyle-controls,.motion-controls,.studio-controls{position:sticky;top:18px;max-height:calc(100dvh - 110px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-padding-top:20px}
.editor-sidebar>.panel{padding:22px}.preview-column,.studio-work,.motion-work{min-width:0;position:sticky;top:18px}
.page-settings{padding-bottom:16px;margin-bottom:14px;border-bottom:1px solid var(--border)}
.page-settings select{font-size:11px}.page-settings .hint{font-size:9px}.studio-controls .theme-buttons{gap:7px}.theme-chip{cursor:pointer}
.slide-stage{padding:22px;min-height:260px;overflow:auto;background-color:#151515;background-image:radial-gradient(#454545 .6px,transparent .6px);background-size:14px 14px;max-height:72dvh}
.slide-stage svg{display:block;width:auto;max-width:100%;height:auto;max-height:65dvh;aspect-ratio:auto;flex-shrink:0}
.slide-stage svg [data-hotspot]:not([data-hotspot=""]){cursor:zoom-in}
.slide-stage svg [data-hotspot]:not([data-hotspot=""]):hover{filter:brightness(.85)}
.slide-reorder{margin-top:15px}.slide-reorder .btn{font-size:10px}.layout-reference a{text-decoration:underline}
.report-canvas{max-height:calc(100dvh - 210px);overflow:auto;padding:20px;background:#151515;border-radius:8px;border:1px solid var(--border);scrollbar-gutter:stable}
.output-paper{background:var(--surface);color:var(--ink);font-family:var(--font);border:0;min-height:0;aspect-ratio:var(--paper-ratio);width:100%;border-radius:0;position:relative}
.output-paper .report-kicker{color:var(--primary)}.output-paper .report-meta{color:var(--muted)}
.company-output-footer{font-size:9px;color:var(--muted);border-top:1px solid var(--soft);padding-top:15px;margin-top:35px;overflow-wrap:anywhere}
.document-previews{max-height:calc(100dvh - 175px);overflow:auto;padding:20px;background:#151515;border:1px solid var(--border);border-radius:8px}.document-preview{margin-bottom:25px}.document-preview svg{width:100%;height:auto;display:block;box-shadow:0 5px 18px #233c2114}.canvas-label{font-size:10px;color:var(--muted);margin-bottom:7px}
.check-row{display:flex;align-items:center;gap:8px;font-size:11px;margin:12px 0;color:var(--ink)}.check-row input{width:auto}
.token-list{display:block;padding:14px;background:var(--soft);color:var(--primary);font-size:11px;line-height:2;white-space:normal;overflow-wrap:anywhere;border-radius:6px}
.research-filters{display:grid;grid-template-columns:180px 180px 1fr;gap:15px;align-items:end;padding:18px;border:1px solid var(--border);background:var(--surface);border-radius:9px;margin:18px 0}.research-filters .label{margin-top:0}
.resource-region{margin:0 0 12px;font-weight:600}.local-pattern{margin-top:16px;justify-content:center}.source-search-controls{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:12px;margin:22px 0 12px;align-items:end}.source-search-controls .label{margin:0 0 7px}.source-search-controls .btn{height:38px}
.live-badge{color:var(--primary);background:var(--soft);padding:9px 12px;border-radius:5px;margin-bottom:18px}
.motion-paper-stage{display:grid;place-items:center;max-height:70dvh}.motion-paper-stage #motionStage{width:100%;max-height:100%;display:grid;place-items:center;overflow:hidden}.motion-paper-stage svg{max-height:64dvh;width:100%;object-fit:contain;box-shadow:none}
.nav-tag{font-variant-numeric:tabular-nums}.sidebar{overflow:auto}.sidebar-bottom{margin-top:20px}.sidebar-note{display:none}
@media(min-width:1500px){.editor-layout,.studio-layout,.motion-editor-layout{grid-template-columns:360px minmax(0,1fr)}.studio-controls{padding:24px}.slide-stage{padding:32px}main{padding:24px 22px 28px}.topbar{padding:0 22px}.hero h2{font-size:30px}}
@media(max-width:1050px){.editor-layout,.studio-layout,.motion-editor-layout{grid-template-columns:280px minmax(0,1fr);gap:16px}.research-filters{grid-template-columns:1fr 1fr}.research-filters>.hint{grid-column:1/-1}.report-canvas{padding:12px}.report-paper{padding:25px}.report-paper h2{font-size:22px}.report-section p{font-size:11px}.source-search-controls{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.editor-layout,.studio-layout,.motion-editor-layout{grid-template-columns:1fr}.editor-sidebar,.studio-controls,.motion-controls,.convert-controls,.restyle-controls,.preview-column,.studio-work,.motion-work{position:static;max-height:none;display:block}.report-canvas,.document-previews{max-height:70dvh}.slide-stage{max-height:70dvh}.research-filters{grid-template-columns:1fr 1fr}.source-search-controls{grid-template-columns:1fr 1fr}.motion-paper-stage{max-height:70dvh}}
@media(min-width:651px) and (max-width:1180px){.sidebar{width:104px;padding:22px 6px}.shell{margin-left:104px}.topbar{padding:0 22px}main{padding:24px 22px}}
@media(max-width:650px){.sidebar{width:104px;padding:22px 6px}.shell{margin-left:0}.toast{left:50%}.hero h2{font-size:25px}.page-heading h1{font-size:22px}main{padding:24px 16px}.research-filters,.source-search-controls{grid-template-columns:1fr}.research-filters>.hint{grid-column:auto}}
@media print{#printArea .report-paper{border:0;box-shadow:none;aspect-ratio:auto;background:var(--surface);color:var(--ink);print-color-adjust:exact;-webkit-print-color-adjust:exact}#printArea .report-section{break-inside:auto}#printArea h3{break-after:avoid}#printArea .report-section p{orphans:3;widows:3}#printArea .company-output-footer{font-size:9pt}#printArea svg{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
