:root{color:#e8e2d6;font-synthesis:none;text-rendering:optimizelegibility;--ink:#0e0e0c;--raised:#161613;--ivory:#e8e2d6;--muted:#918c83;--hairline:#e8e2d624;--active:#8c3632;--ease:cubic-bezier(.22, 1, .36, 1);background:#0e0e0c;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,input,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,.world-node:focus-visible{outline:1px solid var(--ivory);outline-offset:5px}.canvas-shell,.canvas-viewport{width:100%;height:100%}.canvas-viewport{touch-action:none;-webkit-user-select:none;user-select:none;background:var(--ink);cursor:grab;isolation:isolate;position:relative;overflow:hidden}.canvas-viewport:active,.canvas-viewport.is-space-held{cursor:grabbing}.canvas-grain{z-index:-1;opacity:.06;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");position:absolute;inset:0}.world-layer{transform-origin:0 0;will-change:transform;width:1px;height:1px;position:absolute;top:0;left:0}.world-layer.is-animating{transition:transform .42s var(--ease)}.world-node{cursor:grab;transition:opacity .36s var(--ease), filter .36s var(--ease);animation:node-enter .48s var(--ease) both;outline:none;margin:0;position:absolute}.world-node:active{cursor:grabbing}.world-node.is-dimmed{filter:saturate(.15)brightness(.55);pointer-events:none;animation:none;opacity:.035!important}.world-node.is-focused{z-index:30}.node-image,.node-text{z-index:1}.node-zone{z-index:0;cursor:default;pointer-events:none;animation:zone-enter .72s var(--ease) both;isolation:isolate;border:1px solid #e8e2d61a;overflow:hidden}.node-zone:before,.node-zone:after{content:"";pointer-events:none;position:absolute}.node-zone:before{z-index:-1;opacity:.16;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");inset:0}.node-zone:after{border:1px solid #e8e2d60f;inset:28px}.zone-graphite{background:radial-gradient(circle at 70% 16%,#746c5d12,#0000 34%),linear-gradient(145deg,#11110f 0%,#0b0b09 100%)}.zone-enamel{background:radial-gradient(circle at 78% 27%,#277f8233,#0000 29%),radial-gradient(circle at 23% 83%,#10424e3d,#0000 36%),linear-gradient(137deg,#071116 0%,#071a20 52%,#081216 100%);border-color:#84c1bc2b;box-shadow:inset 0 0 130px #00000073}.zone-enamel:after{border-color:#8fd3cc14}.zone-lacquer{background:radial-gradient(at 24% 35%,#7c281829,#0000 34%),radial-gradient(circle at 76% 78%,#b97b3d12,#0000 31%),linear-gradient(142deg,#120c0a 0%,#1a0e0b 47%,#0c0b09 100%);border-color:#b8825b2b;box-shadow:inset 0 0 140px #0000007a}.zone-lacquer:after{border-color:#c6916114}.zone-classical{background:radial-gradient(circle at 77% 22%,#1c2d4547,#0000 31%),radial-gradient(at 23% 78%,#77212338,#0000 39%),linear-gradient(137deg,#160d11 0%,#1c1217 44%,#0d1520 100%);border-color:#be9f7133;box-shadow:inset 0 0 145px #00000080,inset 0 0 0 1px #caab7c09}.zone-classical:before{opacity:.12;mix-blend-mode:screen}.zone-classical:after{background:linear-gradient(90deg,#0000 49.94%,#caab7c09 50%,#0000 50.06%),linear-gradient(#0000 49.94%,#caab7c06 50%,#0000 50.06%);border-color:#caab7c17}.zone-archive{color:#27251f;background:linear-gradient(102deg,#ffffff38,#0000 28%),radial-gradient(circle at 78% 16%,#6f5e431f,#0000 38%),#cec6b8;border-color:#302c2638;box-shadow:inset 0 0 120px #473d2f1c}.zone-archive:before{opacity:.11;mix-blend-mode:multiply}.zone-archive:after{border-color:#302c2621}.zone-kicker,.node-zone h2,.node-zone>p{margin:0;position:absolute;left:72px}.zone-kicker{color:#e8e2d66b;letter-spacing:.23em;font-size:11px;top:66px}.node-zone h2{letter-spacing:.09em;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:66px;font-weight:300;line-height:1;top:97px}.node-zone>p{color:#e8e2d67a;letter-spacing:.05em;width:600px;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:14px;line-height:1.7;top:181px}.zone-archive .zone-kicker,.zone-archive>p{color:#27251f91}.zone-register{opacity:.28;border-style:solid;border-color:currentColor;width:10px;height:10px;position:absolute}.zone-register-a{border-width:1px 1px 0 0;top:47px;right:47px}.zone-register-b{border-width:0 0 1px 1px;bottom:47px;left:47px}.artwork-disc{width:100%;height:100%;box-shadow:0 calc(22px * var(--inverse-zoom)) calc(58px * var(--inverse-zoom)) #00000057;transition:transform .28s var(--ease), filter .28s var(--ease), box-shadow .28s var(--ease);background:#11110f;border-radius:50%;position:relative;overflow:hidden}.artwork-disc.presentation-plate{box-shadow:0 calc(18px * var(--inverse-zoom)) calc(45px * var(--inverse-zoom)) #0000003d;background:#ded7ca;border:1px solid #28241e2e;border-radius:2px;padding:12px}.artwork-disc.presentation-plate img{object-fit:contain}.world-node:hover .artwork-disc{filter:brightness(1.035);transform:scale(1.012)}.world-node.is-selected .artwork-disc{transform:translateY(calc(-3px * var(--inverse-zoom)));box-shadow:0 calc(28px * var(--inverse-zoom)) calc(70px * var(--inverse-zoom)) #00000080}.artwork-disc img{object-fit:cover;opacity:0;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;transition:opacity .24s;display:block}.artwork-disc img.is-loaded{opacity:1}.image-fallback{border:1px solid var(--hairline);color:var(--muted);place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.artwork-caption{opacity:0;pointer-events:none;align-items:flex-start;gap:14px;padding-top:20px;transition:opacity .22s,transform .22s;display:flex;transform:translateY(6px)}.artwork-caption.is-visible{opacity:1;transform:none}.artwork-index{color:var(--active);letter-spacing:.18em;font-size:10px;line-height:19px;display:block}.artwork-caption strong,.artwork-caption small{display:block}.reference-badge{color:#756757;letter-spacing:.18em;border-top:1px solid;border-bottom:1px solid;align-self:flex-start;margin-left:auto;padding:4px 0;font-size:8px}.world-node.theme-archive .artwork-caption strong{color:#25231e}.world-node.theme-archive .artwork-caption small{color:#675f53}.world-node.theme-archive .artwork-index{color:#8b3f32}.world-node[data-node-id=archive-note] .text-eyebrow,.world-node[data-node-id=archive-note] .text-artwork p{color:#36322a}.world-node[data-node-id=archive-note] .text-eyebrow:after{background:#302c263d}.artwork-caption strong{letter-spacing:.08em;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:17px;font-weight:400}.artwork-caption small{color:var(--muted);letter-spacing:.22em;margin-top:5px;font-size:9px}.text-artwork{white-space:pre-line;width:100%;height:100%}.text-eyebrow{color:var(--muted);letter-spacing:.22em;padding-bottom:18px;font-size:10px;display:block}.text-eyebrow:after{content:"";background:var(--hairline);width:64px;height:1px;margin-top:17px;display:block}.text-artwork p{margin:0;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-weight:300}.text-title p{letter-spacing:.04em;font-size:52px;line-height:1.22}.text-quote p{letter-spacing:.06em;font-size:28px;line-height:1.55}.text-note p{color:#d2ccc0;font-size:22px;line-height:1.6}.selection-corners{inset:calc(-9px * var(--inverse-zoom));pointer-events:none;position:absolute}.corner{width:calc(18px * var(--inverse-zoom));height:calc(18px * var(--inverse-zoom));border:0 solid #e8e2d6b3;position:absolute}.corner-nw{border-left-width:calc(1px * var(--inverse-zoom));border-top-width:calc(1px * var(--inverse-zoom));top:0;left:0}.corner-ne{border-right-width:calc(1px * var(--inverse-zoom));border-top-width:calc(1px * var(--inverse-zoom));top:0;right:0}.corner-sw{border-left-width:calc(1px * var(--inverse-zoom));border-bottom-width:calc(1px * var(--inverse-zoom));bottom:0;left:0}.corner-se{border-right-width:calc(1px * var(--inverse-zoom));border-bottom-width:calc(1px * var(--inverse-zoom));bottom:0;right:0}.selection-pin{left:50%;top:calc(-4px * var(--inverse-zoom));width:calc(7px * var(--inverse-zoom));height:calc(7px * var(--inverse-zoom));background:var(--active);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.resize-handle{right:calc(-15px * var(--inverse-zoom));bottom:calc(-15px * var(--inverse-zoom));z-index:4;width:calc(28px * var(--inverse-zoom));height:calc(28px * var(--inverse-zoom));cursor:nwse-resize;background:0 0;border:0;border-radius:50%;padding:0;position:absolute}.resize-handle:before{content:"";width:calc(7px * var(--inverse-zoom));height:calc(7px * var(--inverse-zoom));background:var(--ivory);border-radius:50%;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.project-mark,.theme-navigation,.top-actions,.canvas-readout,.tool-rail,.inspector,.focus-caption{z-index:100;position:absolute}.top-actions,.theme-navigation,.canvas-readout,.tool-rail{transition:opacity .22s}.canvas-shell.has-focus .top-actions,.canvas-shell.has-focus .theme-navigation,.canvas-shell.has-focus .canvas-readout,.canvas-shell.has-focus .tool-rail{opacity:0;pointer-events:none}.project-mark{pointer-events:none;top:30px;left:34px}.project-mark span,.project-mark strong,.project-mark small{display:block}.theme-navigation{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0e0e0cb3;border-top:1px solid #e8e2d61f;border-bottom:1px solid #e8e2d61f;align-items:stretch;height:36px;display:flex;top:27px;left:50%;transform:translate(-50%)}.theme-navigation button{color:#a29b90;letter-spacing:.11em;cursor:pointer;background:0 0;border:0;border-right:1px solid #e8e2d614;min-width:78px;padding:0 13px;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:11px;transition:color .16s,background .16s}.theme-navigation button:last-child{border-right:0}.theme-navigation button:hover{color:var(--ivory);background:#e8e2d60d}.theme-navigation button span{color:#68645d;letter-spacing:.1em;margin-right:7px;font-family:Segoe UI,sans-serif;font-size:7px}.project-mark span{color:var(--muted);letter-spacing:.24em;font-size:9px}.project-mark strong{letter-spacing:.16em;margin-top:7px;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:18px;font-weight:400}.project-mark small{color:var(--muted);letter-spacing:.12em;margin-top:5px;font-size:10px}.top-actions{gap:28px;display:flex;top:26px;right:30px}.top-actions button,.focus-caption button,.contact-index header button{color:#c8c1b6;letter-spacing:.14em;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;padding:8px 0;font-size:11px;transition:color .18s,border-color .18s}.top-actions button:hover,.focus-caption button:hover,.contact-index header button:hover{color:var(--ivory);border-color:var(--active)}.canvas-readout{color:var(--muted);letter-spacing:.14em;pointer-events:none;align-items:center;gap:9px;font-size:9px;display:flex;bottom:27px;left:32px}.save-dot{background:#69665f;border-radius:50%;width:4px;height:4px;margin-left:6px}.save-dot.state-saving{background:#a68452}.save-dot.state-error{background:var(--active)}.tool-rail{border:1px solid var(--hairline);background:#0e0e0cf0;align-items:stretch;min-height:47px;padding:0 6px;display:flex;bottom:22px;left:50%;transform:translate(-50%)}.tool-rail>button,.zoom-pair button{min-width:72px;color:var(--muted);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;padding:0 15px;font-size:11px;transition:color .16s,background .16s}.tool-rail>button:hover,.tool-rail>button.active,.zoom-pair button:hover{color:var(--ivory);background:#e8e2d60b}.tool-rail button span{color:#5f5c56;margin-right:8px;font-size:8px}.zoom-pair{border-left:1px solid var(--hairline);margin-left:3px;display:flex}.zoom-pair button{min-width:40px;padding:0 10px;font-size:16px}.inspector{border-left:1px solid var(--hairline);width:min(310px,86vw);height:100%;animation:inspector-enter .3s var(--ease) both;background:#131310;padding:34px 30px;top:0;right:0}.inspector-heading{color:var(--muted);letter-spacing:.18em;justify-content:space-between;padding-bottom:46px;font-size:9px;display:flex}.inspector label{color:var(--muted);letter-spacing:.13em;margin-bottom:25px;font-size:10px;display:block}.inspector input,.inspector textarea{border:0;border-bottom:1px solid var(--hairline);width:100%;color:var(--ivory);resize:none;-webkit-user-select:text;user-select:text;background:0 0;border-radius:0;margin-top:9px;padding:8px 0 10px;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:15px;line-height:1.6;display:block}.inspector-primary{width:100%;color:var(--ivory);letter-spacing:.14em;cursor:pointer;background:0 0;border:1px solid #e8e2d652;margin-top:4px;padding:13px 15px;font-size:11px}.source-link{color:#b9aa96;letter-spacing:.09em;border-bottom:1px solid #e8e2d638;margin-top:17px;padding-bottom:5px;font-size:10px;text-decoration:none;display:inline-block}.source-link:hover{border-color:var(--active);color:var(--ivory)}.inspector-actions{border-top:1px solid var(--hairline);gap:18px;margin-top:32px;padding-top:22px;display:flex}.inspector-actions button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:10px}.inspector-actions button:hover{color:var(--ivory)}.inspector-actions button.danger:hover{color:#bb5b53}.inspector-hint{color:#5f5b54;letter-spacing:.09em;margin:0;font-size:9px;line-height:1.6;position:absolute;bottom:28px;left:30px;right:30px}.focus-caption{border-left:1px solid var(--hairline);width:min(320px,100vw - 68px);animation:focus-copy-enter .42s var(--ease) both;padding-left:22px;bottom:48px;right:34px}.focus-caption>span{color:var(--active);letter-spacing:.2em;font-size:9px}.focus-caption h2{letter-spacing:.08em;margin:15px 0 3px;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:30px;font-weight:400}.focus-caption small{color:var(--muted);letter-spacing:.22em;font-size:9px}.focus-caption p{color:#aaa49a;margin:20px 0 10px;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:13px;line-height:1.8}.contact-index{z-index:300;animation:index-enter .36s var(--ease) both;-webkit-user-select:auto;user-select:auto;background:#11110e;padding:34px 44px 70px;position:absolute;inset:0;overflow:auto}.contact-index header{justify-content:space-between;align-items:flex-start;padding-bottom:60px;display:flex}.contact-index header span{color:var(--muted);letter-spacing:.22em;font-size:9px}.contact-index h2{letter-spacing:.08em;margin:10px 0 0;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:clamp(30px,4vw,52px);font-weight:300}.contact-groups{gap:72px;display:grid}.contact-group-heading{border-bottom:1px solid var(--hairline);letter-spacing:.12em;justify-content:space-between;align-items:baseline;margin-bottom:27px;padding-bottom:12px;font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:18px;display:flex}.contact-group-heading small{color:var(--muted);letter-spacing:.16em;font-family:Segoe UI,sans-serif;font-size:8px}.contact-grid{grid-template-columns:repeat(6,minmax(120px,1fr));gap:clamp(22px,2.5vw,46px);display:grid}.contact-grid>button{text-align:left;cursor:pointer;background:0 0;border:0;min-width:0;padding:0}.contact-image{aspect-ratio:1;transition:transform .28s var(--ease), filter .28s var(--ease);border-radius:50%;display:block;overflow:hidden}.contact-image.presentation-plate{border-radius:2px}.contact-image .artwork-disc{height:100%}.contact-image .artwork-caption{display:none}.contact-grid button:hover .contact-image{filter:brightness(1.07);transform:translateY(-5px)}.contact-meta{gap:14px;margin-top:20px;display:flex}.contact-meta b{color:var(--active);font-size:9px;font-weight:400}.contact-meta>span{font-family:Songti SC,Noto Serif SC,Georgia,serif;font-size:16px}.contact-meta small{color:var(--muted);letter-spacing:.17em;margin-top:5px;font-family:Segoe UI,sans-serif;font-size:8px;display:block}.recovery-message{z-index:150;border-left:2px solid var(--active);background:var(--raised);color:#c9c2b7;max-width:360px;padding:12px 14px;font-size:11px;line-height:1.6;position:absolute;top:92px;left:34px}.drop-registers{z-index:210;opacity:0;pointer-events:none;transition:opacity .16s;position:absolute;inset:18px}.is-dragging-over .drop-registers{opacity:1}.drop-registers i{border-color:var(--active);border-style:solid;border-width:0;width:28px;height:28px;position:absolute}.drop-registers i:first-child{border-top-width:1px;border-left-width:1px;top:0;left:0}.drop-registers i:nth-child(2){border-top-width:1px;border-right-width:1px;top:0;right:0}.drop-registers i:nth-child(3){border-bottom-width:1px;border-left-width:1px;bottom:0;left:0}.drop-registers i:nth-child(4){border-bottom-width:1px;border-right-width:1px;bottom:0;right:0}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:fixed;overflow:hidden}@keyframes node-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes zone-enter{0%{opacity:0;transform:scale(.994)}to{opacity:1;transform:scale(1)}}@keyframes inspector-enter{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes focus-copy-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes index-enter{0%{opacity:0}to{opacity:1}}@media (width<=1100px){.contact-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}}@media (width<=900px){.contact-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}.top-actions{gap:18px}.theme-navigation{top:78px}.tool-rail>button{min-width:48px;padding:0 12px}.tool-rail button span{display:none}}@media (width<=620px){.project-mark{top:20px;left:20px}.project-mark small,.theme-navigation button span,.top-actions button:nth-child(2),.top-actions button:nth-child(3),.canvas-readout span:first-child,.canvas-readout span:nth-child(2){display:none}.top-actions{top:17px;right:20px}.theme-navigation{width:calc(100vw - 40px);top:68px}.theme-navigation button{flex:1;min-width:0;padding:0 7px;font-size:10px}.canvas-readout{bottom:17px;left:18px}.tool-rail{bottom:52px;left:16px;right:16px;transform:none}.tool-rail>button{flex:1}.zoom-pair{display:none}.focus-caption{width:auto;bottom:115px;left:22px;right:22px}.contact-index{padding:24px 22px 70px}.contact-index header{padding-bottom:42px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
