@font-face{font-family:Manrope;src:url('assets/Manrope.ttf')}@font-face{font-family:Pixelify;src:url('assets/PixelifySans.ttf')}
*{box-sizing:border-box}body{margin:0;background:#0f141c;color:#e6eaf2;font:12px Manrope,Arial;height:100dvh;display:flex;flex-direction:column;overflow:hidden}button,input,select,summary{font:inherit}button,.file-button,summary{cursor:pointer}button,.file-button{min-height:34px;padding:8px 11px;background:#233247;color:#e6eaf2;border:1px solid #41516a;border-radius:2px;font-weight:700}button:hover,.file-button:hover{background:#30435b;border-color:#8b9db4}button:disabled{opacity:.4;cursor:default}button.primary,.jump-control{background:#ffb17c;color:#211c17;border-color:#ffd0ac;box-shadow:0 2px 0 #85634c}button[aria-pressed=true]{background:#493b36;border-color:#ffb17c;color:#ffcca6}input,select{width:100%;min-width:0;border:1px solid #3c4d63;background:#121c28;color:#e6eaf2;padding:8px;border-radius:2px}input[type=range]{padding:0;accent-color:#ffad75}input[type=checkbox]{width:auto;accent-color:#ffad75}[hidden]{display:none!important}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #9fc9fc;outline-offset:2px}header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;background:#171d27;border-bottom:1px solid #354357;min-height:57px;flex-shrink:0}.brand{display:flex;gap:8px;align-items:center;text-decoration:none;color:inherit;font-size:21px;font-weight:800;letter-spacing:-1px}.brand img{width:31px;height:31px}.brand small{color:#ffb17c;font-size:9px;letter-spacing:1px;margin-left:8px}.header-actions{display:flex;align-items:center;gap:8px}#save-state{font-size:10px;color:#9cb4ab}.file-menu{position:relative}.file-menu>summary{border:1px solid #41516a;padding:9px 12px;list-style:none;background:#202d3e;font-weight:700}.file-panel{position:absolute;right:0;top:44px;z-index:10;background:#192432;border:1px solid #52607a;box-shadow:0 12px 24px #0008;width:290px;padding:16px;display:grid;gap:13px}.file-panel label{display:grid;gap:7px;color:#afbed1}.file-actions{display:flex;gap:6px}.file-button input{position:absolute;clip-path:inset(100%);width:1px;height:1px}.map-bar{display:flex;align-items:center;gap:12px;padding:10px 18px;border-bottom:1px solid #354357;background:#192432;flex-shrink:0}.map-bar label{display:grid;gap:5px;font-size:9px;font-weight:800;letter-spacing:.08em;color:#98acc3;min-width:100px}.map-bar select{width:155px;letter-spacing:0;font-size:12px}.map-bar .name-label{min-width:160px;max-width:340px;flex:1}.map-bar #name{font-size:14px;font-weight:700;letter-spacing:0}.map-bar-note{margin-left:auto;color:#92a5ba;font-size:11px}.category-tabs{display:flex;align-items:stretch;gap:0;background:#171f2b;border-bottom:1px solid #354357;overflow-x:auto;flex-shrink:0;padding:0 12px}.category-tabs button{display:flex;gap:7px;align-items:center;white-space:nowrap;border:0;border-bottom:2px solid transparent;background:none;color:#a6b7cb;min-height:44px;padding:10px 15px;border-radius:0}.category-tabs button[aria-selected=true]{color:#ffb782;background:#362e2c;border-bottom-color:#ffad75}.category-tabs .tab-icon{font-size:16px;line-height:1}.category-tabs button:hover{color:#fff;background:#263448}main{display:grid;grid-template-columns:222px minmax(260px,1fr) 220px;min-height:0;flex:1}.palette,.inspector{background:#192432;padding:17px 13px;overflow:auto;min-width:0}.palette{border-right:1px solid #354357}.inspector{border-left:1px solid #354357}.palette-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:12px}h1{font-size:19px;letter-spacing:-.03em;margin:0}#piece-count{font-size:10px;color:#92a5ba;white-space:nowrap}h2{font-size:17px;line-height:1.5;margin:0 0 12px}.hint,#selection-help{font-size:11px;line-height:1.7;color:#a5b8cb}.palette .hint{min-height:38px;margin:10px 0}.mode-tools{display:flex;gap:6px;margin:12px 0}.mode-tools button{flex:1}.pieces{display:grid;grid-template-columns:1fr 1fr;gap:6px}.piece{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:82px;padding:7px 4px;font-size:10px;line-height:1.4;min-width:0}.piece canvas{height:40px;width:48px;pointer-events:none;image-rendering:pixelated}.no-pieces{grid-column:1/-1;color:#a5b8cb;line-height:1.8}.workspace{display:grid;grid-template-rows:auto minmax(0,1fr) 35px;overflow:hidden;min-width:0}.canvas-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px;padding:9px;background:#202d3e;border-bottom:1px solid #354357}.canvas-toolbar>div{display:flex;gap:4px}.canvas-toolbar button{font-size:10px;padding:6px 8px;min-height:29px}.canvas-toolbar label{display:flex;align-items:center;gap:5px;font-size:10px}.canvas-toolbar input{width:60px}.canvas-toolbar output{width:31px}.canvas-holder{position:relative;overflow:hidden;background:#122a36;min-height:0}canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}#canvas-hint{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);background:#14222bee;border:1px solid #344459;color:#b9ccdc;padding:7px 10px;font-size:10px;max-width:95%;width:max-content;text-align:center;pointer-events:none}footer{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:6px 10px;background:#202d3e;font-size:10px}footer #status{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}footer label{white-space:nowrap}.eyebrow{font-size:9px;letter-spacing:.12em;color:#ffb17c;font-weight:800;margin:0 0 9px}.property-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.property-grid label,.extra-field,.map-size label{display:grid;gap:6px;font-size:10px;color:#b5c5d7}.extra-field{margin-top:14px}.piece-actions{display:flex;gap:7px;margin-top:16px}.piece-actions button{flex:1;font-size:11px}.danger{color:#ffb4a6}.advanced,.map-size{border-top:1px solid #354357;margin-top:17px;padding-top:12px}.advanced summary,.map-size summary{color:#abc0d3;font-size:11px;line-height:1.7}.advanced .property-grid,.map-size label{margin-top:10px}.warnings{font-size:10px;line-height:1.7;color:#efbc89;margin-top:17px}#surface-help{color:#cfccac;padding-left:9px;border-left:2px solid #7c875c}.test-mode .palette,.test-mode .inspector,.test-mode .map-bar,.test-mode .category-tabs,.test-mode .canvas-toolbar,.test-mode .file-menu,.test-mode #save-state{display:none}.test-mode main{display:block;min-height:0}.test-mode .workspace{height:100%;grid-template-rows:minmax(0,1fr) 35px}.test-mode footer label{display:none}.test-mode #canvas-hint{top:10px;bottom:auto}.test-mode canvas:focus{outline:none}#test-message{position:absolute;top:55px;left:50%;transform:translateX(-50%);padding:12px 18px;background:#172534eb;border:1px solid #657b97;color:#ffe1af;max-width:90%;text-align:center}#test-controls{position:absolute;bottom:18px;left:16px;right:16px;display:flex;justify-content:space-between;gap:10px;pointer-events:none}#test-controls>div{display:flex;gap:8px}#test-controls button{pointer-events:auto;touch-action:none;user-select:none;min-width:48px;height:46px;background:#223247ef;font-size:13px;border-color:#788daa;box-shadow:0 3px 0 #0c1728}.jump-control{background:#ffb17c!important;color:#251e19!important}#test-controls button:active{transform:translateY(2px);box-shadow:none}#dash-control:not(:disabled){color:#91edf0;border-color:#6ee4e5}#status.error{color:#ffc59f;white-space:normal;font-weight:700}
@media(max-width:1050px){main{grid-template-columns:186px minmax(220px,1fr) 186px}.map-bar-note{display:none}.brand small{display:none}.category-tabs button{padding:9px 12px}.palette,.inspector{padding:12px 10px}.canvas-toolbar input{width:45px}}
@media(max-width:720px){body{height:auto;min-height:100dvh;overflow:auto}header{padding:9px 10px;gap:6px;flex-wrap:wrap}.brand{font-size:17px}.brand img{width:26px;height:26px}.header-actions{gap:5px;margin-left:auto}#save-state{display:none}.header-actions button,.file-menu>summary{font-size:10px;padding:7px 9px}.map-bar{padding:9px 10px;gap:8px;flex-wrap:wrap}.map-bar .name-label{flex-basis:100%;max-width:none}.map-bar label{flex:1}.map-bar select{width:100%}.category-tabs{padding:0 5px}.category-tabs button{font-size:11px;min-height:42px;padding:8px 11px}main{display:flex;flex-direction:column;flex:none}.palette{padding:10px;display:grid;grid-template-columns:1fr auto;gap:8px;overflow:visible}.palette-heading{display:none}.palette .hint{grid-column:1/-1;min-height:0;margin:0;font-size:10px}.palette .mode-tools{margin:0;grid-row:1;grid-column:2}.palette>input{grid-row:1;grid-column:1}.pieces{grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(77px,1fr));max-height:156px;overflow:auto;gap:5px}.piece{min-height:70px;padding:5px 3px}.piece canvas{height:32px;width:39px}.workspace{height:65dvh;min-height:390px}.inspector{border-top:1px solid #354357;border-left:0}.property-grid{grid-template-columns:1fr 1fr}.inspector .extra-field{max-width:400px}.piece-actions{max-width:400px}.canvas-toolbar{padding:7px}.canvas-toolbar button{font-size:9px}.canvas-toolbar input{width:40px}#canvas-hint{font-size:9px}.test-mode{height:100dvh;overflow:hidden}.test-mode main{flex:1}.test-mode .workspace{min-height:0}.test-mode .header-actions{flex-wrap:wrap}#test-controls{left:9px;right:9px;gap:6px}#test-controls button{font-size:11px;min-width:39px;padding:6px;height:43px}.test-mode footer #status{white-space:normal;font-size:9px}.file-panel{width:270px;max-width:85vw}.test-mode #test-message{font-size:11px}}

.beta-badge{display:inline-block;font:800 10px Manrope,sans-serif;letter-spacing:.13em;color:#ffbe8d;background:#ffad7319;border:1px solid #ffad7355;padding:4px 7px}.brand small .beta-badge{margin-left:6px}#beta-notice{width:min(450px,calc(100vw - 36px));padding:30px;background:#18232e;color:#e4eaf0;border:1px solid #536272;border-top:3px solid #ffb77e;border-radius:2px;box-shadow:0 20px 80px #0008}#beta-notice::backdrop{background:#080e16c9;backdrop-filter:blur(5px)}#beta-notice h2{font-size:25px;line-height:1.2;margin:18px 0}#beta-notice p{font-size:14px;line-height:1.65;color:#bdcbd6}#beta-notice button{width:100%;margin-top:16px;padding:13px}

#beta-notice{max-width:560px}.beta-reward{display:flex;align-items:center;gap:18px;padding:16px 14px;margin:22px 0;background:#1b2a38;border:1px solid #82663b;border-left:3px solid #efc66d}.beta-reward img{width:105px;height:105px;flex:none}.beta-reward strong{color:#f5d58a}.beta-reward p{font-size:13px;line-height:1.65;margin:8px 0!important}.beta-reward small{font-size:11px;color:#a6b3c4}@media(max-width:480px){.beta-reward{display:block}.beta-reward img{display:block;margin:auto}}
