div.svelte-clyidt{position:relative;width:100%;height:100%;overflow:hidden}canvas.svelte-clyidt{display:block;position:relative;width:100%;height:100%}:root{font-family:Arial,Helvetica,sans-serif;color:#efece5;background:#d8d4ca;--ease-out: cubic-bezier(.23, 1, .32, 1)}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}html,body{margin:0;width:100%;min-height:100%;overscroll-behavior:none}#app{min-height:100dvh}button,input{font:inherit}input{font-size:16px}button,a{touch-action:manipulation;-webkit-user-select:none;user-select:none}button{cursor:pointer;-webkit-touch-callout:none}button:not(:disabled):active{filter:brightness(.84)}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #d2a96b;outline-offset:3px}a{color:inherit}.immersive-shell{position:fixed;top:0;left:0;width:100%;height:100dvh;overflow:hidden}.scene-wrap{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.scene-wrap canvas{display:block;width:100%;height:100%;touch-action:manipulation}.room-curtain{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;z-index:10;background:#202929;opacity:0;pointer-events:none;transition:opacity .1s var(--ease-out)}.room-curtain.visible{opacity:1}.book-exit{position:fixed;z-index:8;top:calc(16px + env(safe-area-inset-top,0px));left:calc(16px + env(safe-area-inset-left,0px));min-height:44px;border:1px solid #eee7dc9c;background:#242a28d9;color:#f5eee4;padding:12px 16px;font-size:12px;letter-spacing:.025em}.book-exit span{color:#b4afa4;font-size:10px;margin-left:20px}.book-exit:disabled{opacity:.55;cursor:default}.keyboard-navigation{position:fixed;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.keyboard-navigation:focus-within{z-index:12;width:auto;height:auto;margin:0;clip:auto;overflow:visible;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:calc(20px + env(safe-area-inset-left,0px));display:flex;gap:8px}.keyboard-navigation button{padding:10px 14px;border:1px solid #f2efe7;background:#202929;color:#fff}.eyebrow{display:block;text-transform:uppercase;font-size:10px;letter-spacing:.18em;color:#77776e}.editor-toggle{position:fixed;z-index:7;top:calc(18px + env(safe-area-inset-top,0px));right:calc(18px + env(safe-area-inset-right,0px));min-height:44px;border:1px solid #e5ddd0a8;background:#262c2acd;color:#eee8dc;padding:11px 15px;font-size:11px;letter-spacing:.06em}.editor-panel{position:fixed;z-index:6;top:calc(68px + env(safe-area-inset-top,0px));right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));width:min(320px,calc(100vw - 36px));display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain;color:#292b27;background:#efede8f2;border:1px solid #d4d0c7;box-shadow:0 12px 42px #1118;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:22px 20px 8px}.panel-heading h2{font-size:21px;font-weight:400;letter-spacing:-.035em;margin:7px 0 0}.text-button{border:0;padding:4px 0;background:none;font-size:11px;color:#666;text-decoration:underline}.panel-help{font-size:12px;color:#777870;line-height:1.45;padding:0 20px;margin:5px 0 17px}.artwork-list{padding:0 10px}.room-group{border-top:1px solid #d4d0c6;padding:12px 0 10px}.room-group h3{font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:#8a887d;font-weight:500;margin:0 10px 8px}.room-group button{display:flex;align-items:center;width:100%;gap:10px;text-align:left;padding:8px 10px;border:0;background:transparent;font-size:12px;color:#454740}.room-group button.selected{background:#dcd7cb}.room-group button small{margin-left:auto;font-size:10px;color:#8a897e}.swatch{width:17px;height:17px;border:2px solid #f5f1e8;box-shadow:0 0 0 1px #c4bfb4;flex:none}.inspector{border-top:1px solid #d4d0c6;padding:18px 20px}.inspector h3{font-size:18px;font-weight:400;margin:0 0 15px}.inspector label{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:10px 0;font-size:11px;color:#777870}.inspector input{min-width:0;max-width:160px;background:#f8f6f1;border:1px solid #cecac0;padding:8px;color:#30312e}.inspector input[type=color]{width:46px;height:32px;padding:2px}.position-fields{display:flex;gap:8px}.position-fields label{flex:1;display:block}.position-fields input{display:block;width:100%;margin-top:6px}.save-row{margin-top:auto;padding:16px 20px 20px;border-top:1px solid #d4d0c6}.save-row p{font-size:11px;color:#656860;margin:10px 0 0}.primary{display:block;width:100%;padding:13px 20px;border:1px solid #242622;background:#242622;color:#fff;font-size:12px}.primary:disabled{opacity:.55;cursor:default}.login-shell{min-height:100svh;display:flex;flex-direction:column;padding:calc(35px + env(safe-area-inset-top,0px)) calc(35px + env(safe-area-inset-right,0px)) calc(35px + env(safe-area-inset-bottom,0px)) calc(35px + env(safe-area-inset-left,0px));color:#242622;background:#e9e6df}.wordmark{text-decoration:none;font-size:14px;letter-spacing:.15em;font-weight:600}.wordmark span{font-size:9px;font-weight:400;letter-spacing:.2em;margin-left:10px;color:#777870}.login-card{width:min(440px,100%);margin:auto;padding:45px;background:#f4f1eb;border:1px solid #d5d0c6}.login-card h1{font-size:35px;font-weight:400;letter-spacing:-.05em;margin:13px 0}.login-card p{color:#777870;font-size:13px;line-height:1.55}.login-card form{margin-top:25px}.login-card label{display:block;font-size:11px;margin-bottom:8px}.login-card input{width:100%;border:1px solid #c9c5bc;background:#fff;padding:13px;margin-bottom:13px}.login-card .notice{color:#934e41}.mobile-room-controls,.mobile-book-controls,.mobile-book-reader,.mobile-works-backdrop,.mobile-works{display:none}@media(pointer:coarse){.room-group button,.text-button,.primary,.login-card input,.inspector input{min-height:44px}.inspector input[type=color]{height:44px}.wordmark{display:inline-flex;align-items:center;min-height:44px}}@media(hover:hover)and (pointer:fine){.editor-toggle:hover{background:#35403c}.book-exit:not(:disabled):hover{background:#35403c}.room-group button:hover{background:#dcd7cb}}@media(max-width:600px){.editor-toggle{right:calc(10px + env(safe-area-inset-right,0px));top:calc(10px + env(safe-area-inset-top,0px))}.editor-panel{top:calc(62px + env(safe-area-inset-top,0px));right:calc(10px + env(safe-area-inset-right,0px));bottom:calc(10px + env(safe-area-inset-bottom,0px));width:calc(100vw - 20px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px))}.login-shell{padding:calc(22px + env(safe-area-inset-top,0px)) calc(22px + env(safe-area-inset-right,0px)) calc(22px + env(safe-area-inset-bottom,0px)) calc(22px + env(safe-area-inset-left,0px))}.login-card{padding:26px}.login-card h1{font-size:30px}}@media(max-width:680px),(max-height:500px)and (orientation:landscape),(pointer:coarse)and (max-width:950px){.mobile-room-controls,.mobile-book-controls{display:block;position:fixed;z-index:8;left:0;right:0;bottom:0;padding:12px calc(14px + env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) calc(14px + env(safe-area-inset-left,0px));color:#f5eee4;background:#202929ed;border-top:1px solid #ffffff38;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-room-name{display:block;margin:0 0 10px;color:#d4cec2;font-size:11px;letter-spacing:.12em;text-transform:uppercase;text-align:center}.mobile-room-actions,.mobile-book-controls{display:flex;align-items:center;justify-content:space-between;gap:8px}.mobile-room-actions button,.mobile-book-controls button{min-height:48px;border:1px solid #eee7dc68;background:#38423ede;color:#f5eee4;padding:10px 12px;font-size:13px}.mobile-room-actions button{flex:1}.mobile-room-actions .mobile-works-button{flex:1.35;background:#e9e6df;color:#252a28;font-weight:600}.mobile-room-actions button:disabled,.mobile-book-controls button:disabled{opacity:.38}.mobile-book-controls span{flex:1;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}.mobile-book-reader{display:block;position:fixed;z-index:7;top:calc(76px + env(safe-area-inset-top,0px));right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));left:calc(12px + env(safe-area-inset-left,0px));overflow-y:auto;overscroll-behavior:contain;padding:12px 22px;color:#342e2a;background:#e9dfccef;box-shadow:0 12px 48px #201b18a8}.mobile-book-page{position:relative;min-height:240px;padding:20px 0 24px;border-bottom:1px solid #aa9b86}.mobile-book-page:last-child{border-bottom:0}.mobile-book-page .eyebrow{color:#775f51}.mobile-book-page h2{margin:10px 0 18px;font-family:Georgia,serif;font-size:26px;font-weight:600;letter-spacing:-.02em}.mobile-book-copy{padding-bottom:20px;font-family:Georgia,serif;font-size:15px;line-height:1.45}.mobile-book-copy p{margin:0}.mobile-book-space{height:18px}.mobile-book-folio{position:absolute;right:0;bottom:14px;color:#8a7966;font-size:11px;font-variant-numeric:tabular-nums}.mobile-works-backdrop{display:block;position:fixed;z-index:11;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;padding:0;border:0;background:#151d1dac}.mobile-works{display:flex;position:fixed;z-index:12;left:0;right:0;bottom:0;max-height:min(70dvh,620px);flex-direction:column;overflow:hidden;color:#292b27;background:#efede8;border-radius:16px 16px 0 0;padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -16px 48px #1118}.mobile-works-heading{display:flex;align-items:start;justify-content:space-between;gap:14px;padding:22px 20px 16px;border-bottom:1px solid #d4d0c6}.mobile-works-heading h2{margin:6px 0 0;font-size:22px;font-weight:400}.mobile-works-heading button{min-width:64px;min-height:44px;border:0;background:transparent;color:#454740;font-size:13px}.mobile-works-list{overflow-y:auto;overscroll-behavior:contain;padding:8px 12px 16px}.mobile-works-list button{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:9px 12px;border:0;border-bottom:1px solid #d4d0c6;background:transparent;color:#292b27;text-align:left;font-size:15px}.mobile-works-list button small{margin-left:auto;color:#777870;font-size:11px}.mobile-works-list .swatch{width:22px;height:22px}}@media(max-height:500px)and (orientation:landscape){.mobile-book-reader{top:calc(64px + env(safe-area-inset-top,0px));bottom:calc(72px + env(safe-area-inset-bottom,0px))}.mobile-book-page{min-height:0}}@media(prefers-reduced-motion:reduce){.room-curtain{transition-duration:.12s}}
