*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#b9c5bd;color:#263d35;font:14px/1.5 system-ui}button,select,input{font:inherit}button,select{border:1px solid #a5b5a0;background:#f8f5e7;color:#2c493b;border-radius:7px;padding:8px 12px;cursor:pointer}button:hover{background:#e6edda}button:disabled{opacity:.45;cursor:default}button.primary{background:#3f6250;color:#fff8e7;border:0}button:focus-visible{outline:3px solid #c9a957}.card{background:#fbf8eced;border:1px solid #e0e2d1;border-radius:13px;padding:18px;box-shadow:0 8px 25px #233f3417;backdrop-filter:blur(8px)}#world{position:absolute;inset:0}#world canvas{width:100%;height:100%;display:block;touch-action:none}header{position:absolute;top:22px;left:28px;pointer-events:none}header a{pointer-events:auto;font-size:11px;color:#334e40;text-decoration:none;letter-spacing:.13em}h1{font:34px Georgia;margin:5px 0}header p{margin:0}h2{font:23px Georgia;margin:4px 0 12px}p{margin:9px 0}#objective{position:absolute;top:135px;left:25px;width:300px}#expression{font:21px/1.5 Georgia;margin-top:6px;overflow-wrap:anywhere}.eyebrow{font-size:10px;letter-spacing:.14em;color:#6e7e6b}.meter{height:5px;border-radius:3px;background:#d9dfce;margin:12px 0 6px}.meter>div{height:100%;width:0;background:#738e5e;transition:width .4s}#guide{position:absolute;left:25px;bottom:145px;width:300px}#selection{position:absolute;right:25px;top:25px;bottom:145px;width:300px;overflow:auto}#actions button{display:block;width:100%;text-align:left;margin:7px 0}#actions small{display:block;color:#74816c;font-size:11px}.suggested{outline:2px solid #b99b49}#outline button{margin:3px 0;padding:4px 9px;display:block;font-size:12px}details{margin-top:16px}summary{cursor:pointer}#bottom{position:absolute;bottom:20px;left:25px;right:25px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:13px 18px}#bottom>div{margin-left:auto;display:flex;gap:7px}#bottom small{width:100%;color:#6e7e6b}#settings{position:absolute;top:20px;right:25px;bottom:145px;width:300px;overflow:auto;z-index:5}.settingsTitle{display:flex;justify-content:space-between;align-items:start}label{display:flex;flex-direction:column;margin:12px 0;font-size:12px;gap:3px}input{accent-color:#69825b}#loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}[hidden]{display:none!important}a{color:#526e4d}small{font-size:11px}@media (max-width:900px){#objective,#guide{width:235px}#selection,#settings{width:255px;right:12px}header,#objective,#guide{left:12px}#bottom{left:12px;right:12px}#bottom>span{font-size:11px}h1{font-size:28px}}@media (max-height:700px){#objective{top:115px}#guide{bottom:125px;padding:12px}#selection,#settings{bottom:125px}#bottom{bottom:10px}header{top:10px}}#gestureGuide{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}#selection{top:135px;bottom:auto;max-height:410px;width:270px}#selection h2{font-size:19px}#guide{width:300px}#actions button{font-size:12px}#bottom>span{font-weight:600}#settings{z-index:8}#selection{top:115px;bottom:145px;max-height:none;width:275px;padding:15px}#selection h2{font-size:18px}#selection label{margin:8px 0}#spellCount{font-size:11px;color:#667967;margin:6px 0}.spell{font:15px/1.4 Georgia;padding:5px 9px;border-left:3px solid var(--spell);color:var(--spell);margin:4px 0}.spell.active{background:#e9ecdc;font-weight:700}.pinControls{border-top:1px solid #d8dfcb;margin-top:12px;padding-top:10px;display:flex;flex-wrap:wrap;gap:5px}.pinControls button{font-size:12px;padding:6px}.pinControls small{width:100%;line-height:1.4}#spells.above{position:fixed;top:14px;left:350px;right:330px;max-height:90px;overflow:auto;display:flex;flex-wrap:wrap;align-content:start;gap:3px 12px;background:#f7f6e7e8;border-radius:8px;padding:5px 10px}#spells.above .spell{font-size:16px;margin:0}#toolbox{position:absolute;right:25px;top:20px;bottom:145px;width:315px;overflow:auto;z-index:9}#toolbox .rule{flex-direction:row;align-items:center;gap:10px;border-left:3px solid var(--rule);padding:5px 8px;margin:7px 0}#toolbox .rule input{accent-color:var(--rule)}#toolbox .rule small{display:block;color:#77816d}#toolbox p{font-size:12px}#bottom{gap:8px;font-size:12px}#bottom select{padding:8px;font-size:12px}#bottom>div{flex-wrap:wrap}.above:empty{display:none!important}.card{background:#fff;border:0;box-shadow:none;backdrop-filter:none;padding-top:26px}.minimize{position:absolute;top:5px;right:7px;width:25px;height:25px;border:0;border-radius:50%;padding:0;background:#fff;color:#5c7166;font-size:20px;line-height:25px}.minimize:hover{background:#edf1e9}.card.minimized{width:42px!important;height:42px!important;min-height:0!important;max-height:42px!important;bottom:auto;padding:0!important;overflow:hidden!important;border-radius:50%}.card.minimized>:not(.minimize){display:none!important}.card.minimized .minimize{inset:0;width:42px;height:42px;line-height:42px;font-size:21px}#guide.minimized{bottom:145px}#bottom.minimized{bottom:20px;right:auto}#settings.minimized,#toolbox.minimized{bottom:auto}#expression{font:22px/1.55 Georgia;overflow-wrap:normal;text-wrap:pretty}#objective{width:285px}#selection{width:265px}#spells.above{background:white}header h1{font-size:28px}#hudToggle{position:absolute;right:345px;top:24px;width:38px;height:38px;border:0;border-radius:50%;background:white;padding:0;font-size:24px;z-index:20}.clean-view .card,.clean-view header,.clean-view #gestureGuide,.clean-view #spells,.clean-view #hudToggle{display:none!important}#bottom{padding-top:27px}#bottom .minimize{top:1px}#settings .settingsTitle,#toolbox .settingsTitle{padding-right:20px}#world canvas{position:relative}#backdropStatus{display:block;color:#6e7e6b}#catchFeedback{font-weight:600;margin-left:8px;font-size:13px}#gestureGuide{visibility:hidden}header{top:18px;left:22px}header h1{font-size:24px}header p{font-size:12px;margin:4px 0}.dock{position:absolute;width:330px;z-index:12;display:flex;flex-direction:column;align-items:stretch;gap:8px;max-width:calc(50vw - 28px)}#inspectDock{right:18px;top:18px}#encounterDock{left:18px;bottom:18px;flex-direction:column-reverse}#rewriteDock{right:18px;bottom:18px;flex-direction:column-reverse}.dockToggle{align-self:flex-end;min-width:120px;background:#fffffff0;border:0;border-radius:20px;padding:10px 16px;font-size:13px;font-weight:600;box-shadow:0 2px 10px #243b3020}#encounterDock .dockToggle{align-self:flex-start}.dockBody{background:#fffffff5;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #23382c20}.dockTabs{display:flex;gap:6px;padding:9px;border-bottom:1px solid #e4e9e5;align-items:center}.dockTabs button{border:0;background:transparent;padding:6px 10px;font-size:12px}.dockTabs button[aria-pressed=true]{background:#edf1eb;border-radius:6px}.dockPage{max-height:calc(50vh - 145px);overflow:auto;padding:4px 14px 14px;overscroll-behavior:contain}#encounterDock .dockPage{max-height:calc(100vh - 180px)}.dock .card,#objective,#guide,#selection,#bottom,#settings,#toolbox{position:static;inset:auto;width:auto;max-width:none;min-height:0;max-height:none;height:auto;overflow:visible;border-radius:0;box-shadow:none;background:transparent;padding:10px 0;margin:0}.dock .card+.card{border-top:1px solid #e4e9e5}.dock h2{font:18px Georgia;margin:5px 0 10px}.dock p,.dock label{font-size:12px}.dock select{max-width:100%;font-size:12px}.dock a{font-size:12px}.dock summary{font-weight:600;font-size:13px;padding:4px 0}.dock details{margin-top:12px}#bottom{display:block}#bottom>div{margin:10px 0;display:flex;gap:6px;flex-wrap:wrap}#bottom button{font-size:11px;padding:6px 8px}#bottom>span{display:block;font-size:12px}#bottom small{display:block;line-height:1.5}#expression{font-size:20px}#selectedHelp{font-size:12px}#hudToggle{position:static;inset:auto;margin-left:auto;width:28px;height:28px;font-size:20px;padding:0;flex-shrink:0}#spells.above{position:static;inset:auto;display:block;max-height:none;background:transparent;padding:0}.settingsTitle{align-items:center}.settingsTitle button{font-size:11px;padding:5px 8px}#performance dl{display:grid;gap:4px}#performance dt{font-size:11px;color:#60756a;margin-top:9px}#performance dd{margin:0;font:17px ui-monospace,monospace;font-variant-numeric:tabular-nums}.clean-view .dock{display:none!important}@media (max-width:760px){.dock{width:310px;max-width:calc(100vw - 36px)}.dockPage,#encounterDock .dockPage{max-height:calc(100vh - 210px)}header h1{font-size:20px}header p{display:none}}#selection:not([hidden])+#selectionEmpty{display:none}#selectionEmpty{font-size:12px;color:#61756b}#world canvas:focus{outline:none}.dockToggle{min-width:0;width:52px;height:52px;border-radius:50%;padding:11px;display:grid;place-items:center;color:#59615d;background:#fff;transition:background .18s,box-shadow .18s}.dockToggle svg{width:30px;height:30px;display:block}.dockToggle:hover{background:#f0f2ed}.dockToggle[aria-expanded=true]{background:#e9eee6;box-shadow:inset 0 0 0 2px #768274,0 2px 10px #243b3020}header{isolation:isolate;color:#fffdf1;max-width:calc(100vw - 110px);text-shadow:0 2px 5px #18251f,0 0 18px #18251f99}header:before{content:"";position:absolute;z-index:-1;inset:-18px -40px -22px -22px;background:radial-gradient(ellipse at 20% 30%,#1b2b2459,transparent 73%);pointer-events:none}header a{color:#fffdf1;font-size:12px;font-weight:600;letter-spacing:.17em}header h1{font-family:Avenir Next,Avenir,system-ui,sans-serif;font-size:25px;font-weight:400;color:#d9dccb;line-height:1.25;letter-spacing:.025em;margin:7px 0 0;text-shadow:0 1px 5px #18251f99}@media (max-width:760px){header h1{font-size:22px}.dockToggle{width:48px;height:48px;padding:9px}header a{font-size:10px}}.controlLabel{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.controlValue{font:12px ui-monospace,monospace;font-variant-numeric:tabular-nums;color:#58685e;flex-shrink:0}#settingsSnapshot textarea{display:block;width:100%;resize:vertical;font:11px/1.45 ui-monospace,monospace;color:#435147;background:#f3f5f0;border:1px solid #d8ded4;border-radius:6px;padding:9px;margin-top:10px}#settingsSnapshot small{display:block;margin-top:7px;color:#61705f}#idleAnimationTest button{font-size:12px;margin:0 6px 6px 0}#idleAnimationTest small{display:block;line-height:1.5;margin-top:7px;color:#61705f}#idleAnimationTest [role=status]{color:#324d3e}
