:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e9f2f4;background:#071116;font-synthesis:none;text-rendering:geometricPrecision;--bg: #071116;--panel: #0b181f;--panel2: #10222b;--panel3: #132a34;--line: #27424d;--lineSoft: rgba(115, 157, 173, .19);--text: #edf5f7;--muted: #9ab0b9;--faint: #68838e;--cyan: #36d7ff;--orange: #ff9b42;--green: #69e7a8;--red: #ff766d;--yellow: #f5c866;--topbar: 68px;--palette: 286px;--inspector: 420px}*{box-sizing:border-box}html,body,#root{width:100%;min-width:1120px;height:100%;min-height:100%;margin:0}body{overflow:hidden;background:radial-gradient(circle at 20% -20%,rgba(54,215,255,.07),transparent 30%),var(--bg)}button,input,select,textarea{font:inherit}button{color:inherit}.app{width:100vw;height:100vh}.topBar{height:var(--topbar);padding:0 20px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);background:#061015f5}.topBrand{min-width:240px;display:flex;gap:11px;align-items:center}.topBrandMark,.brandMark{display:grid;place-items:center;border:1px solid rgba(54,215,255,.55);color:var(--cyan);font-weight:1000;letter-spacing:-.06em}.topBrandMark{width:38px;height:38px;font-size:22px}.topBrand strong,.topBrand span{display:block}.topBrand strong{font-size:15px;letter-spacing:.05em}.topBrand span{margin-top:2px;color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.11em}.topSpacer{flex:1}.localeSwitch{display:flex;padding:3px;gap:3px;border:1px solid var(--line);background:#08151b}.localeSwitch button{width:38px;height:30px;border:0;color:var(--muted);background:transparent;cursor:pointer;font-size:12px;font-weight:900}.localeSwitch button.active{color:#071116;background:var(--cyan)}.userChip{min-width:160px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--line);background:#0a171d}.userChip span{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:750}.userChip button{border:0;color:var(--cyan);background:transparent;cursor:pointer;font-size:12px;font-weight:900}.primaryButton,.secondaryButton,.ghostButton,.dangerButton,.miniButton{min-height:40px;padding:0 15px;border:1px solid transparent;cursor:pointer;font-size:13px;font-weight:950;letter-spacing:.035em}.primaryButton{color:#041116;border-color:var(--cyan);background:var(--cyan)}.secondaryButton{color:var(--cyan);border-color:#36d7ff6b;background:#36d7ff14}.ghostButton{color:var(--text);border-color:var(--line);background:#0b181f}.dangerButton{color:#ffc4bf;border-color:#ff766d6b;background:#ff766d14}.miniButton{min-height:30px;padding:0 10px;color:var(--cyan);border-color:#36d7ff4d;background:#36d7ff0f;font-size:11px}button:disabled{opacity:.45;cursor:not-allowed}.wide{width:100%}.iconButton{width:34px;height:34px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--line);color:var(--text);background:#0b181f;cursor:pointer;font-size:21px;line-height:1}.iconButton.danger{color:var(--red);border-color:#ff766d59}.eyebrow{color:var(--cyan);font-size:12px;font-weight:950;letter-spacing:.13em}.fullCenter{height:calc(100vh - var(--topbar));display:grid;place-items:center;align-content:center;gap:15px;color:var(--muted)}.loadingMark{width:54px;height:54px;display:grid;place-items:center;border:1px solid var(--cyan);color:var(--cyan);font-size:30px;font-weight:1000}.loginScreen{width:100vw;height:100vh;display:grid;place-items:center;background:linear-gradient(#040c10c2,#040c10eb),radial-gradient(circle at center,rgba(54,215,255,.11),transparent 55%)}.loginCard{width:470px;padding:44px;border:1px solid var(--line);background:#08161df0;box-shadow:0 28px 80px #0006}.brandMark{width:64px;height:64px;margin-bottom:28px;font-size:38px}.loginCard h1{margin:7px 0 12px;font-size:54px;line-height:.92;letter-spacing:-.035em}.loginCard p{margin:0 0 30px;color:var(--muted);font-size:17px;line-height:1.5}.errorBox{margin-bottom:18px;padding:12px 14px;color:#ffc1bb;border:1px solid rgba(255,118,109,.35);background:#ff766d14;font-size:14px}.globalError{position:fixed;z-index:100;top:82px;left:50%;transform:translate(-50%);width:min(720px,70vw);padding:14px 16px;display:flex;gap:18px;justify-content:space-between;border:1px solid rgba(255,118,109,.6);background:#301719;box-shadow:0 20px 50px #00000073}.globalError strong,.globalError span{display:block}.globalError strong{font-size:14px}.globalError span{margin-top:4px;color:#ffd0cc;font-size:13px}.globalError button{border:0;color:#fff;background:transparent;cursor:pointer;font-size:24px}.caseListPage{height:calc(100vh - var(--topbar));padding:34px 38px;overflow:auto}.pageHero{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-bottom:28px;border-bottom:1px solid var(--line)}.pageHero h1{margin:6px 0 8px;font-size:46px;line-height:.95}.pageHero p{max-width:720px;margin:0;color:var(--muted);font-size:16px;line-height:1.45}.caseGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:18px;margin-top:24px}.caseCard{min-height:240px;padding:20px;display:flex;flex-direction:column;border:1px solid var(--line);color:inherit;background:linear-gradient(155deg,rgba(54,215,255,.025),transparent 40%),#0a171d;cursor:pointer;text-align:left}.caseCard:hover{border-color:#36d7ff80;background:#0d1c23}.caseCardTop{display:flex;justify-content:space-between;align-items:center;color:var(--faint);font-size:12px;font-weight:800}.caseCard>strong{margin-top:22px;color:var(--text);font-size:24px;line-height:1.1}.caseCard>p{flex:1;margin:10px 0 18px;color:var(--muted);font-size:14px;line-height:1.45}.caseMeta{display:flex;gap:14px;color:var(--cyan);font-size:12px;font-weight:850}.caseCode{margin-top:12px;padding-top:11px;border-top:1px solid var(--lineSoft);color:var(--faint);font-size:11px;font-weight:850;letter-spacing:.07em}.status{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border:1px solid var(--line);font-size:11px;font-weight:950;letter-spacing:.07em}.status-draft{color:#d5e0e4}.status-review{color:var(--yellow);border-color:#f5c86659}.status-staging{color:var(--cyan);border-color:#36d7ff59}.status-published{color:var(--green);border-color:#69e7a859}.emptyState{text-align:center;color:var(--muted)}.emptyState.large{width:min(700px,90%);margin:80px auto 0;padding:48px;border:1px dashed var(--line);background:#0b181f73}.emptyState h2{margin:12px 0 8px;color:var(--text);font-size:26px}.emptyState p{margin:0 auto 24px;max-width:520px;font-size:15px;line-height:1.5}.emptyIcon{color:var(--cyan);font-size:42px}.modalBackdrop{position:fixed;z-index:200;inset:0;display:grid;place-items:center;background:#010608c7;backdrop-filter:blur(8px)}.modal{width:min(850px,90vw);max-height:90vh;padding:26px;overflow:auto;border:1px solid var(--line);background:#0a171d;box-shadow:0 30px 90px #0000008c}.modalHeader{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.modalHeader h2{margin:5px 0 0;font-size:30px}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.formGrid .full{grid-column:1 / -1}.modalActions{margin-top:22px;padding-top:18px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line)}.builderShell{height:calc(100vh - var(--topbar))}.caseBuilderHead{height:78px;padding:0 18px;display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);background:#08151b}.caseBuilderHead h1{margin:3px 0 0;font-size:24px;line-height:1}.builderHeadActions{margin-left:auto;display:flex;align-items:center;gap:8px}.builderWorkspace{height:calc(100% - 78px);display:grid;grid-template-columns:var(--palette) minmax(500px,1fr) var(--inspector);overflow:hidden}.palette,.inspector{min-width:0;background:#09161c}.palette{border-right:1px solid var(--line)}.inspector{border-left:1px solid var(--line)}.panelTitle,.inspectorHead{height:66px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.panelTitle span,.panelTitle strong,.inspectorHead span,.inspectorHead strong{display:block}.panelTitle span,.inspectorHead span{color:var(--faint);font-size:10px;font-weight:900;letter-spacing:.1em}.panelTitle strong,.inspectorHead strong{margin-top:3px;font-size:15px}.searchInput{width:calc(100% - 24px);height:40px;margin:12px;padding:0 12px;border:1px solid var(--line);outline:0;color:var(--text);background:#0d1b22;font-size:14px}.searchInput:focus{border-color:var(--cyan)}.paletteScroll{height:calc(100% - 118px);padding:0 12px 18px;overflow:auto}.paletteGroup h3{margin:16px 4px 8px;color:var(--faint);font-size:11px;letter-spacing:.09em}.activityTile{min-height:62px;margin-bottom:8px;padding:9px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;border:1px solid var(--lineSoft);background:#0d1c23;cursor:grab}.activityTile:hover{border-color:#36d7ff80;background:#10232b}.activityGlyph{width:40px;height:40px;display:grid;place-items:center;color:var(--cyan);border:1px solid rgba(54,215,255,.25);background:#36d7ff0f;font-size:12px;font-weight:950}.activityTile strong,.activityTile span{display:block}.activityTile strong{color:var(--text);font-size:13px;line-height:1.2}.activityTile span{margin-top:3px;color:var(--faint);font-size:10px;font-weight:750}.activityTile>b{color:var(--cyan);font-size:20px}.canvasViewport{position:relative;min-width:0;overflow:auto;background:#061015}.canvasToolbar{position:sticky;z-index:20;top:0;left:0;height:52px;min-width:100%;padding:0 14px;display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);background:#071217f0;backdrop-filter:blur(10px)}.canvasToolbar strong,.canvasToolbar span{display:block}.canvasToolbar strong{font-size:12px;letter-spacing:.07em}.canvasToolbar span{margin-top:2px;color:var(--muted);font-size:11px}.connectMode{margin-left:auto;padding:7px 10px;color:#d6f6ff;border:1px solid rgba(54,215,255,.3);background:#36d7ff12;font-size:12px}.graphCanvas{position:relative;width:2400px;height:1500px}.canvasGrid{position:absolute;inset:0;background-image:linear-gradient(rgba(72,111,125,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(72,111,125,.09) 1px,transparent 1px);background-size:28px 28px}.edgeLayer{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.edgeLayer marker path{fill:#5e8b99}.edge,.edgeHit{fill:none;pointer-events:stroke;cursor:pointer}.edge{stroke:#527986;stroke-width:2}.edge.selected{stroke:var(--cyan);stroke-width:3}.edgeHit{stroke:transparent;stroke-width:18}.edgeLabel{fill:#7ea1ad;pointer-events:none;font-size:10px;font-weight:800}.graphNode{position:absolute;z-index:10;width:264px;min-height:124px;padding:14px;border:1px solid #36525d;background:linear-gradient(145deg,rgba(54,215,255,.035),transparent 55%),#0d1d24;box-shadow:0 14px 30px #00000038;cursor:move;user-select:none;touch-action:none}.graphNode.selected{border-color:var(--cyan);box-shadow:0 0 0 1px #36d7ff33,0 18px 38px #0000004d}.graphNode.connecting{border-color:var(--orange)}.nodeTop,.nodeBottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.nodeTop{color:var(--cyan);font-size:10px;font-weight:950;letter-spacing:.05em}.nodeConnect{width:30px;height:27px;display:grid;place-items:center;color:var(--cyan);border:1px solid rgba(54,215,255,.28);background:#36d7ff0f;cursor:pointer;font-size:16px}.graphNode>strong{display:block;margin:14px 0 16px;color:var(--text);font-size:17px;line-height:1.18}.nodeBottom{padding-top:10px;border-top:1px solid var(--lineSoft);color:var(--faint);font-size:10px;font-weight:800}.canvasEmpty{position:absolute;top:220px;left:50%;transform:translate(-50%);width:520px;padding:38px;text-align:center;color:var(--muted);border:1px dashed #36525d;background:#0a192073}.canvasEmpty div{color:var(--cyan);font-size:48px}.canvasEmpty strong,.canvasEmpty span{display:block}.canvasEmpty strong{margin-top:8px;color:var(--text);font-size:18px}.canvasEmpty span{margin-top:8px;font-size:14px;line-height:1.5}.inspector{min-width:0;overflow:hidden}.inspectorHead{height:66px}.inspectorHead>div:first-child{min-width:0}.inspectorHead strong{max-width:290px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saveState{flex:0 0 auto;padding:6px 8px;border:1px solid var(--line);color:var(--muted);font-size:9px;font-weight:950;letter-spacing:.07em}.saveState.saved{color:var(--green);border-color:#69e7a84d}.saveState.saving,.saveState.dirty{color:var(--yellow);border-color:#f5c8664d}.saveState.error{color:var(--red);border-color:#ff766d4d}.inspectorTabs{height:48px;padding:0 8px;display:grid;grid-template-columns:repeat(4,1fr);gap:3px;border-bottom:1px solid var(--line)}.inspectorTabs button{border:0;border-bottom:2px solid transparent;color:var(--muted);background:transparent;cursor:pointer;font-size:12px;font-weight:850}.inspectorTabs button.active{color:var(--cyan);border-bottom-color:var(--cyan)}.inspectorScroll{height:calc(100% - 114px);padding:14px;overflow:auto}.inspectorEmpty{display:grid;place-items:center;align-content:center;gap:8px;padding:40px;color:var(--muted);text-align:center}.inspectorEmpty strong{color:var(--text);font-size:17px}.inspectorEmpty span{font-size:14px;line-height:1.5}.inspectorSectionStack{display:grid;gap:13px}.inspectorBlock,.schemaGroup{padding:14px;border:1px solid var(--lineSoft);background:#0c1b22}.blockTitle{margin-bottom:14px}.blockTitle strong,.blockTitle span{display:block}.blockTitle strong{font-size:12px;letter-spacing:.08em}.blockTitle span{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.4}.field{display:block;margin-bottom:12px}.field:last-child{margin-bottom:0}.field>span,.localeFieldSet>strong{display:block;margin-bottom:6px;color:#a9bec6;font-size:11px;font-weight:900;letter-spacing:.035em}.field input,.field select,.field textarea{width:100%;min-height:40px;padding:9px 10px;border:1px solid #304c57;outline:0;color:var(--text);background:#07151b;font-size:14px}.field textarea{resize:vertical;line-height:1.45}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--cyan)}.toggleField{min-height:42px;margin-bottom:10px;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--lineSoft);background:#091820}.toggleField span{font-size:13px;font-weight:800}.toggleField input{width:20px;height:20px;accent-color:var(--cyan)}.localeFieldSet{margin-bottom:18px}.localeFieldSet:last-child{margin-bottom:0}.twoCols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.schemaFields{display:grid;gap:11px}.schemaGroup{padding:12px}.schemaGroup>strong{display:block;margin-bottom:10px;color:var(--text);font-size:13px}.schemaGroupHeader{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.schemaGroupHeader strong{font-size:13px}.arrayCards{display:grid;gap:8px}.arrayCard{padding:10px;display:grid;grid-template-columns:28px 1fr 34px;gap:8px;align-items:start;border:1px solid var(--lineSoft);background:#08161c}.arrayCardNumber{width:28px;height:28px;display:grid;place-items:center;color:var(--cyan);border:1px solid rgba(54,215,255,.25);font-size:11px;font-weight:950}.arrayCardFields{min-width:0}.checkGrid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.checkCard{min-height:39px;padding:8px;display:flex;align-items:center;gap:8px;border:1px solid var(--lineSoft);background:#08161c}.checkCard input{width:17px;height:17px;accent-color:var(--cyan)}.checkCard span{color:#c9d7dc;font-size:11px;font-weight:750;line-height:1.2}.emptyMini,.emptyInspector{padding:13px;color:var(--muted);border:1px dashed var(--line);background:#07131980;font-size:12px;line-height:1.45}.weightRow{min-height:42px;display:grid;grid-template-columns:1fr 84px;align-items:center;gap:10px;border-bottom:1px solid var(--lineSoft)}.weightRow span{font-size:12px;font-weight:800}.weightRow input{width:84px;height:32px;padding:0 8px;color:var(--text);border:1px solid var(--line);background:#07151b;text-align:right}.objectiveListEditor{display:grid;gap:7px}.objectiveEditorCard{min-height:54px;padding:9px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--lineSoft);background:#08161c}.objectiveEditorCard strong,.objectiveEditorCard span{display:block}.objectiveEditorCard strong{font-size:12px}.objectiveEditorCard span{margin-top:4px;color:var(--muted);font-size:11px}@media(max-width:1350px){:root{--palette: 250px;--inspector: 370px}.checkGrid{grid-template-columns:1fr}}.lessonEditor{display:grid;gap:16px}.lessonToolbar{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px;border:1px solid var(--line,#29424e);background:#07161dad}.lessonAddButtons{grid-column:1/-1;display:flex;gap:8px}.lessonItems{display:grid;gap:12px}.lessonItem{padding:14px;border:1px solid rgba(76,207,239,.22);background:#030e14b8;cursor:pointer}.lessonItem.selected{border-color:#55dfff;box-shadow:inset 0 0 0 1px #55dfff}.lessonItem>header{display:flex;justify-content:space-between;gap:12px;margin-bottom:13px}.lessonItem>header small{display:block;color:#ff873f;font-size:10px;font-weight:900;letter-spacing:.1em}.lessonItem>header b{display:block;margin-top:4px;color:#fff;font-size:15px}.lessonItemActions{display:flex;gap:5px}.lessonItemActions button{width:32px;height:30px;border:1px solid rgba(84,219,250,.25);background:#071820;color:#fff;cursor:pointer}.lessonItemActions button.danger{color:#ff7b70;border-color:#ff7b7059}.lessonItemActions button:disabled{opacity:.25}.lessonLocaleGroup{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.lessonLocaleGroup>strong{grid-column:1/-1;color:#839aa5;font-size:10px;letter-spacing:.08em}.lessonUpload{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px dashed rgba(84,219,250,.3);background:#54dbfa09}.lessonUpload>span{color:#55dfff;font-size:11px;font-weight:900}.lessonUpload input{width:100%;color:#cbd8dd;font-size:12px}.lessonUpload>small{overflow:hidden;color:#7f969f;font-size:10px;text-overflow:ellipsis}.lessonUploadProgress{height:22px;position:relative;overflow:hidden;border:1px solid rgba(84,219,250,.24);background:#061218}.lessonUploadProgress i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#168eb2,#54dbf8)}.lessonUploadProgress b{position:relative;z-index:2;display:grid;place-items:center;height:100%;color:#fff;font-size:10px}.lessonPreview{padding:14px;border:1px solid rgba(255,135,63,.35);background:#061219}.lessonPreview>header small{display:block;color:#ff873f;font-size:10px;font-weight:900}.lessonPreview>header b{display:block;margin-top:4px;color:#fff;font-size:16px}.lessonPreviewFrame{min-height:260px;margin-top:12px;position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;align-items:stretch;border:1px solid rgba(84,219,250,.25);background:#071b24}.lessonPreviewFrame>img{width:100%;height:100%;min-height:260px;object-fit:cover}.lessonPreviewFrame>div:not(.lessonMediaEmpty){padding:24px;align-self:center}.lessonPreviewFrame h3{margin:0 0 12px;color:#fff;font-size:28px}.lessonPreviewFrame p{color:#cbd8dd;line-height:1.5}.lessonPreviewFrame strong{display:inline-block;margin-top:12px;padding:8px 10px;border:1px solid rgba(84,219,250,.4);color:#55dfff}.lessonPreviewFrame.image-left>img{order:0}.lessonPreviewFrame.image-left>div{order:1}.lessonPreviewFrame.image-right>img{order:1}.lessonPreviewFrame.image-right>div{order:0}.lessonPreviewFrame.image-background{display:block}.lessonPreviewFrame.image-background>img{position:absolute;inset:0;opacity:.3}.lessonPreviewFrame.image-background>div{position:relative;z-index:2}.lessonPreviewFrame.image-full{display:block}.lessonPreviewFrame.image-full>img{position:absolute;inset:0}.lessonPreviewFrame.image-full>div{display:none}.lessonPreviewFrame.image-none{grid-template-columns:1fr}.lessonPreviewFrame.image-none>img{display:none}.lessonPreviewFrame video{width:100%;grid-column:1/-1;max-height:420px;background:#000}.lessonMediaEmpty{grid-column:1/-1;display:grid;place-items:center;min-height:260px;color:#718994;font-size:12px;font-weight:900}@media(max-width:1300px){.lessonToolbar,.lessonLocaleGroup{grid-template-columns:1fr}.lessonAddButtons{grid-column:1}}.studioCompileButton{box-shadow:0 0 0 1px #52ddff38,0 0 22px #52ddff14}.workspaceTabs{display:flex;gap:6px;padding:12px max(24px,calc((100vw - 1500px)/2));border-bottom:1px solid rgba(255,255,255,.08);background:#050a12eb;position:sticky;top:72px;z-index:20;backdrop-filter:blur(18px)}.workspaceTabs button{appearance:none;border:1px solid rgba(255,255,255,.09);background:transparent;color:#ffffff94;border-radius:8px;min-width:110px;padding:10px 18px;font:inherit;font-size:12px;font-weight:800;letter-spacing:.12em;cursor:pointer}.workspaceTabs button:hover{color:#fff;border-color:#fff3}.workspaceTabs button.active{color:#fff;border-color:#32e1ff80;background:#32e1ff14;box-shadow:inset 0 -2px #32e1ffcc}.worldPage{padding-top:34px}.cityGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}.cityCard{min-height:270px;text-align:left;color:inherit;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:22px;background:linear-gradient(145deg,#0c1926f5,#070d17f5);cursor:pointer;display:flex;flex-direction:column;gap:13px;position:relative;overflow:hidden}.cityCard:after{content:"";position:absolute;width:160px;height:160px;right:-70px;bottom:-70px;border:1px solid rgba(50,225,255,.14);border-radius:50%}.cityCard:hover{transform:translateY(-2px);border-color:#32e1ff66}.cityCard>strong{font-size:22px}.cityCard>p{color:#fff9;line-height:1.55;flex:1}.citySequence{color:#32e1ffbf;font-size:11px;font-weight:900;letter-spacing:.16em}.worldEditorHeader{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;margin-bottom:28px}.worldEditorHeader h1{margin:4px 0 0}.worldEditorActions{display:flex;align-items:center;gap:12px}.worldColumns{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.worldPanel{border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#08101cc7;padding:22px}.worldPanelHead{display:flex;gap:18px;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.worldPanel .blockTitle{margin-bottom:18px}.worldPanelHead .blockTitle{margin-bottom:0}.locationList{display:flex;flex-direction:column;gap:10px}.locationRow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:20px;align-items:center;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#ffffff06;padding:16px}.locationRow>div:first-child{display:flex;flex-direction:column;gap:5px}.locationRow>div:first-child span{color:#ffffff6b;font-size:11px;letter-spacing:.08em}.locationCoordinates{display:flex;gap:8px}.locationCoordinates span{border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:7px 9px;color:#ffffff9e;font-size:11px}.locationStats{display:flex;gap:10px;align-items:center}.locationStats small{color:#ffffff73}.worldModal{width:min(760px,calc(100vw - 32px))}.worldEmpty{min-height:190px}.worldInlineLoading{padding:32px 0;color:#ffffff80}.field small{display:block;color:#ffffff6b;font-size:11px;line-height:1.4;margin-top:6px}@media(max-width:860px){.worldEditorHeader{grid-template-columns:1fr}.worldEditorActions{justify-content:space-between}.locationRow{grid-template-columns:1fr}.workspaceTabs{top:64px}}.worldEditorActionsWrap{flex-wrap:wrap;justify-content:flex-end}.worldVersion{color:#ffffff7a;font-size:11px;font-weight:800;letter-spacing:.08em}.worldNotice{border:1px solid rgba(50,225,255,.18);background:#32e1ff0d;border-radius:10px;padding:13px 15px;margin:-10px 0 20px;color:#ffffffb8;font-size:12px;line-height:1.5}.worldStatusBar{display:flex;align-items:center;gap:10px;padding:0 0 18px;margin-bottom:18px;border-bottom:1px solid rgba(255,255,255,.08)}.worldStatusBar>span:not(.status){color:#ffffff73;font-size:11px;font-weight:800}.worldStatusActions{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.locationEditButton{min-height:30px;padding:6px 10px;font-size:10px}.worldDangerActions{display:flex;width:100%;align-items:center}.modalActionSpacer{flex:1}.dangerButton:disabled{opacity:.35;cursor:not-allowed}.field input:disabled,.field textarea:disabled,.field select:disabled{opacity:.58;cursor:not-allowed}@media(max-width:980px){.worldStatusBar{align-items:flex-start;flex-wrap:wrap}.worldStatusActions{width:100%;margin-left:0}.worldDangerActions{flex-wrap:wrap;gap:8px}.modalActionSpacer{display:none}}.hierarchyPanel{margin-top:20px}.hierarchyMap{position:relative;aspect-ratio:16/9;min-height:360px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#09111b;cursor:crosshair}.hierarchyMap>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.68}.hierarchyMap:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#03080e0d,#03080e80)}.hierarchySvg{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.hierarchySvg polyline{fill:none;stroke:#4bdaffb3;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(75,218,255,.35))}.hierarchySvg polyline.editing{stroke:#fff;stroke-width:6;stroke-dasharray:10 8}.hierarchyPin{position:absolute;z-index:4;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;max-width:150px;text-align:center;pointer-events:none}.hierarchyPin i{display:block;width:18px;height:18px;border-radius:50%;border:3px solid #08111b;background:#e7a84b;box-shadow:0 0 0 2px #e7a84b59,0 0 18px #e7a84b80}.hierarchyPin.published i{background:#38d9ff;box-shadow:0 0 0 2px #38d9ff59,0 0 18px #38d9ff80}.hierarchyPin b{margin-top:7px;padding:4px 7px;border-radius:5px;background:#03080ed9;font-size:10px;line-height:1.2;text-transform:uppercase}.hierarchyPin small{margin-top:2px;color:#ffffffb3;font-size:9px}.hierarchyWaypoint{position:absolute;z-index:7;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#050a10;font-size:10px;font-weight:900;box-shadow:0 0 0 4px #fff3;pointer-events:none}.pathEditorBar{display:flex;align-items:center;gap:8px;padding:12px 0 2px;flex-wrap:wrap}.pathEditorBar>div{display:flex;flex-direction:column;gap:3px;min-width:260px;margin-right:auto}.pathEditorBar>div span{font-size:11px;color:#ffffff8c}.hierarchyColumns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-top:24px}.hierarchyColumn{min-width:0;border-top:1px solid rgba(255,255,255,.08);padding-top:18px}.hierarchyAssignBar{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(180px,1.2fr) auto auto;gap:8px;align-items:center;margin-bottom:14px}.hierarchyAssignBar select{min-width:0}.hierarchyCheck{display:flex;align-items:center;gap:7px;padding:0 8px;font-size:10px;font-weight:800;letter-spacing:.08em;color:#ffffffb3}.hierarchyLocationCases{display:flex;flex-direction:column;gap:10px}.hierarchyLocationBlock{border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#ffffff05;overflow:hidden}.hierarchyLocationHead{display:flex;justify-content:space-between;gap:10px;padding:11px 13px;background:#ffffff09;font-size:11px}.hierarchyLocationHead span{color:#ffffff80}.hierarchyCaseRow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:center;padding:11px 13px;border-top:1px solid rgba(255,255,255,.06)}.hierarchyCaseRow>div{display:flex;flex-direction:column;gap:4px}.hierarchyCaseRow small{color:#ffffff73;font-size:9px}.miniFlag{border:1px solid rgba(255,255,255,.12);border-radius:6px;background:transparent;color:#ffffff8c;padding:7px 9px;font-size:9px;font-weight:900;cursor:pointer}.miniFlag.required{border-color:#f4b54873;color:#f4c268;background:#f4b54814}.compactDanger{padding:7px 9px!important;font-size:9px!important}.hierarchyEmpty{padding:13px;color:#ffffff6b;font-size:11px;border:1px dashed rgba(255,255,255,.08);border-radius:8px}.edgeAssignBar{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto}.edgeArrow{font-weight:900;color:#38d9ffbf}.edgeList{display:flex;flex-direction:column;gap:8px}.edgeRow{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:8px;align-items:center;padding:11px 12px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:#ffffff05}.edgeRow>div{display:flex;align-items:center;gap:8px;min-width:0}.edgeRow>div b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.edgeRow>div span{color:#38d9ffb3}.edgeRow small{color:#fff6}.legacyWarning{color:#f4b548!important}.worldVersion{font-size:11px;color:#ffffff73}@media(max-width:1050px){.hierarchyColumns,.hierarchyAssignBar,.edgeAssignBar{grid-template-columns:1fr}.edgeArrow{display:none}.edgeRow,.hierarchyCaseRow{grid-template-columns:1fr}.hierarchyMap{min-height:280px}}.cityMapManagerPanel{overflow:hidden}.cityMapManagerActions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cityMapUploadButton{position:relative;overflow:hidden;cursor:pointer}.cityMapUploadButton.disabled{opacity:.45;pointer-events:none}.cityMapUploadButton input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.cityMapManagerPreview{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#050a11}.cityMapManagerPreview>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cityMapManagerOverlay{position:absolute;left:18px;bottom:18px;display:flex;flex-direction:column;gap:4px;padding:10px 13px;border:1px solid rgba(50,225,255,.28);background:#030a11d1;backdrop-filter:blur(12px)}.cityMapManagerOverlay span{color:#32e1ffcc;font-size:10px;font-weight:900;letter-spacing:.13em}.cityMapManagerOverlay strong{font-size:17px}.cityMapUploadProgress{position:absolute;inset:0;display:grid;place-content:center;gap:12px;padding:30px;text-align:center;background:#02070cd1;backdrop-filter:blur(8px)}.cityMapUploadProgress>div{width:min(420px,55vw);height:8px;overflow:hidden;border:1px solid rgba(50,225,255,.25);background:#ffffff0a}.cityMapUploadProgress>div>i{display:block;height:100%;background:#32e1ff;transition:width .18s ease}.cityMapUploadProgress span{color:#ffffffa3}.cityMapManagerHint{display:flex;gap:12px;margin-top:14px;color:#ffffff80;font-size:12px;line-height:1.5}.cityMapManagerHint strong{color:#32e1ffbf;letter-spacing:.08em}.worldNotice.compact{margin-bottom:14px}.builderShell,.builderWorkspace{min-height:0;overflow:hidden}.palette{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.palette .panelTitle{flex:0 0 66px}.palette .searchInput{flex:0 0 auto}.paletteScroll{flex:1 1 auto;min-height:0;height:auto;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.inspector{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.inspectorHead{flex:0 0 66px}.inspectorTabs{flex:0 0 48px}.inspectorScroll{flex:1 1 auto;min-height:0;height:auto;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.canvasViewport{height:100%;min-height:0;overflow:auto;overscroll-behavior:contain}.canvasToolbar{width:100%}.canvasZoomControls{margin-left:auto;display:flex;align-items:center;flex:0 0 auto;height:34px;border:1px solid rgba(54,215,255,.24);background:#030d12d1}.connectMode+.canvasZoomControls{margin-left:0}.canvasZoomControls button{width:38px;height:32px;padding:0;display:grid;place-items:center;border:0;border-right:1px solid rgba(54,215,255,.17);color:#dff9ff;background:transparent;cursor:pointer;font-size:17px;font-weight:950}.canvasZoomControls button:last-child{border-right:0}.canvasZoomControls button:hover:not(:disabled){color:var(--cyan);background:#36d7ff17}.canvasZoomControls button:disabled{opacity:.28;cursor:default}.canvasZoomControls .canvasZoomValue{width:60px;color:#fff;font-size:11px}.canvasZoomControls .canvasFitButton{color:var(--cyan)}.paletteScroll,.inspectorScroll,.canvasViewport{scrollbar-width:thin;scrollbar-color:rgba(54,215,255,.36) rgba(6,16,21,.65)}.paletteScroll::-webkit-scrollbar,.inspectorScroll::-webkit-scrollbar,.canvasViewport::-webkit-scrollbar{width:9px;height:9px}.paletteScroll::-webkit-scrollbar-thumb,.inspectorScroll::-webkit-scrollbar-thumb,.canvasViewport::-webkit-scrollbar-thumb{background:#36d7ff4d;border:2px solid #071217}.paletteScroll::-webkit-scrollbar-track,.inspectorScroll::-webkit-scrollbar-track,.canvasViewport::-webkit-scrollbar-track{background:#071217}.previewButton{border-color:#ff873f73;color:#ffb07c;background:#ff873f0e}.previewButton:hover:not(:disabled){border-color:#ff873f;color:#ff873f;background:#ff873f1a}.vaeRoot{display:grid;gap:16px}.vaeLocale{display:grid;gap:9px;padding:12px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:#ffffff05}.vaeLocale>strong{font-size:10px;letter-spacing:.12em;color:#ffffff9e}.vaeAssetEditor{display:grid;gap:10px}.blockTitle.compact{margin-bottom:0}.vaeUploadButton{display:flex;align-items:center;justify-content:center;min-height:42px;border:1px dashed rgba(50,225,255,.45);border-radius:8px;background:#32e1ff0d;color:#32e1ff;font-size:11px;font-weight:900;letter-spacing:.08em;cursor:pointer}.vaeUploadButton:hover{background:#32e1ff17}.vaeUploadButton input{display:none}.vaeUploadButton.small{min-height:34px;font-size:10px}.vaeToolbar{display:flex;gap:8px;flex-wrap:wrap}.vaeToolbar .primaryButton,.vaeToolbar .ghostButton{min-height:36px;padding:8px 11px;font-size:10px}.vaeToolbar .ghostButton.active{border-color:#ff7a1a;color:#ff9a54;background:#ff7a1a14}.vaeCanvasWrap{display:grid;gap:8px}.vaeCanvas{position:relative;width:100%;line-height:0;border:1px solid rgba(50,225,255,.22);background:#02080b;overflow:hidden;touch-action:none;user-select:none}.vaeCanvas img{display:block;width:100%;height:auto;max-width:none;pointer-events:none;user-select:none}.vaeCanvas.drawing{cursor:crosshair;box-shadow:0 0 0 1px #ff7a1a61}.vaeCanvas.testing{cursor:crosshair}.vaeCanvas.testing.correct{box-shadow:0 0 0 2px #31d59b99}.vaeCanvas.testing.wrong{box-shadow:0 0 0 2px #ff626299}.vaeRect{position:absolute;z-index:3;border:1px solid rgba(255,196,77,.8);background:#ffc44d14;cursor:move;line-height:1;box-sizing:border-box}.vaeRect:hover{background:#ffc44d24}.vaeRect.selected{z-index:5;border:2px solid #ff7a1a;background:#ff7a1a1f;box-shadow:0 0 18px #ff7a1a33}.vaeRect>b{position:absolute;left:4px;top:4px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border-radius:4px;background:#07121a;color:#fff;font-size:10px;line-height:20px}.vaeHandle{position:absolute;width:11px;height:11px;border:2px solid #ff7a1a;background:#fff;border-radius:50%;z-index:8}.vaeHandle.nw{left:-7px;top:-7px;cursor:nwse-resize}.vaeHandle.ne{right:-7px;top:-7px;cursor:nesw-resize}.vaeHandle.sw{left:-7px;bottom:-7px;cursor:nesw-resize}.vaeHandle.se{right:-7px;bottom:-7px;cursor:nwse-resize}.vaeCanvasHint{padding:9px 11px;border:1px solid rgba(255,255,255,.06);border-radius:7px;background:#ffffff06;font-size:9px;font-weight:900;letter-spacing:.08em;color:#ffffff8f}.vaeTargetList{display:grid;gap:10px}.vaeTargetCard{display:grid;gap:11px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#ffffff06;cursor:pointer}.vaeTargetCard.selected{border-color:#ff7a1a8c;background:#ff7a1a0a}.vaeTargetCard>header{display:flex;justify-content:space-between;gap:10px;align-items:center}.vaeTargetCard>header b{font-size:10px;letter-spacing:.12em;color:#ff9a54}.vaeTargetCard>header span{font-size:9px;color:#ffffff61;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vaeTargetCard>footer{display:flex;gap:7px;justify-content:flex-end;align-items:center}.vaeTargetCard .dangerButton.compact{min-height:30px;padding:6px 9px;font-size:9px}.vaeRectNumbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.vaeFeedbackGrid{display:grid;gap:10px}.vaeSlidePreview{display:grid;gap:8px;padding:8px;border:1px solid rgba(50,225,255,.18);background:#02080b}.vaeSlidePreview img{display:block;width:100%;height:auto;max-height:360px;object-fit:contain;background:#02080b}.vaeSlidePreview>b{padding:4px 3px 2px;font-size:11px;color:#ffffffc7;line-height:1.35}@media(max-width:1180px){.vaeRectNumbers{grid-template-columns:1fr}.vaeToolbar{display:grid;grid-template-columns:1fr}}.caseSystemsDock{display:flex;align-items:center;gap:12px;padding:10px 18px;margin:0 18px 12px;border:1px solid rgba(39,221,251,.2);background:#020f15d1;border-radius:10px}.caseSystemsDock.loading{color:#ffffff8c}.caseSystemsDock>span{min-width:78px;display:flex;flex-direction:column;gap:2px;font-size:10px;letter-spacing:.12em;color:#ffffff7a}.caseSystemsDock>span b{font-size:14px;letter-spacing:.02em;color:#f4f8fa}.caseSystemsDock>span.published b{color:#31d59b}.caseSystemsBackdrop{position:fixed;z-index:4000;inset:0;display:grid;place-items:center;padding:30px;background:#000407db;backdrop-filter:blur(12px)}.caseSystemsModal{width:min(980px,94vw);max-height:90vh;overflow:auto;border:1px solid rgba(39,221,251,.28);border-radius:16px;padding:24px;background:#07171d;box-shadow:0 24px 90px #0000008c}.caseSystemsModal>header{display:flex;justify-content:space-between;gap:24px;margin-bottom:24px}.caseSystemsModal>header small{color:#27ddfb;letter-spacing:.16em}.caseSystemsModal>header h2{margin:6px 0 8px;font-size:26px}.caseSystemsModal>header p{margin:0;max-width:720px;color:#ffffff9e}.caseSystemsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.caseSystemsPublish{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;padding:18px;border:1px solid rgba(255,196,77,.22);border-radius:12px;background:#ffc44d0a}.caseSystemsPublish>div{display:flex;flex-direction:column;gap:4px}.caseSystemsPublish>div:last-child{flex-direction:row;align-items:center}.caseSystemsPublish small{color:#ffc44d;letter-spacing:.14em}.caseSystemsPublish span{color:#ffffff8c;font-size:12px}.caseSystemsHistory{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.caseSystemsHistory span{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:8px;background:#ffffff0a;font-size:11px}.caseSystemsHistory em{font-style:normal;color:#31d59b}.caseSystemsHistory small{color:#ffffff73}.toolkitPricing{margin-top:14px}@media(max-width:820px){.caseSystemsDock{overflow-x:auto}.caseSystemsGrid{grid-template-columns:1fr}.caseSystemsPublish{align-items:stretch;flex-direction:column}}
