:root{--paper:#f3f1e9;--panel:#e7e5dc;--line:#cbcbbf;--ink:#273b3e;--muted:#6d7876;--teal:#274d52;--highlight:#dce8d5;--blue:#23536c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:13px;height:100dvh;min-height:650px;display:flex;flex-direction:column}button,select,input,textarea{font:inherit}button{cursor:pointer;transition:background .12s,border-color .12s;color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible{outline:3px solid #377c94;outline-offset:2px}button:disabled{opacity:.35;cursor:default}button{border:1px solid #bcbeb2;background:#f8f7f0;padding:8px 12px;border-radius:4px;box-shadow:0 1px 0 #b4b7ad}button:hover:not(:disabled){background:#e3eadc;border-color:#8b9d88}button:active:not(:disabled){transform:translateY(1px);box-shadow:none}.titlebar{height:84px;flex-shrink:0;background:var(--teal);color:#f5f3e9;display:flex;align-items:center;justify-content:space-between;padding:0 26px;border-bottom:4px solid #153b40}.brand{display:flex;align-items:center;gap:13px}.brand h1{font-size:23px;letter-spacing:-.6px;margin:0 0 5px;font-weight:700}.brand p{margin:0;font-size:11px;color:#c5d5cf;letter-spacing:.3px}.compass-icon{display:grid;grid-template-columns:1fr 1fr;gap:3px;width:37px;height:37px}.compass-icon i:nth-child(1){background:#f0aaa7}.compass-icon i:nth-child(2){background:#8bcce3}.compass-icon i:nth-child(3){background:#b7d5a8}.compass-icon i:nth-child(4){background:#f1e796}.header-right{display:flex;align-items:center;gap:20px}.local-badge{display:flex;align-items:center;gap:8px;font-size:11px;color:#d0dfd8}.local-badge b,.tiny-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#aac69d}.help{border:1px solid #73908e;color:#f1f2e7;background:transparent;width:29px;height:29px;padding:0;box-shadow:none;border-radius:50%;font-weight:700}.filebar{padding:11px 20px;display:flex;justify-content:space-between;gap:10px;background:var(--panel);border-bottom:1px solid var(--line)}.file-actions{display:flex;gap:7px;align-items:center}.file-actions button{background:transparent;border-color:transparent;box-shadow:none;font-size:12px}.file-actions button:hover{background:#f8f7f0}.divider{height:22px;border-right:1px solid #babcaf;margin:0 4px}.primary{background:var(--teal);color:#fff;border-color:var(--teal);font-weight:600;box-shadow:0 2px 0 #173a3e;white-space:nowrap}.primary:hover:not(:disabled){background:#37666b;color:white;border-color:#274d52}.primary span{margin-left:16px}.workspace{min-height:0;flex:1;display:grid;grid-template-columns:minmax(0,1fr) 318px;padding:18px 20px 14px;gap:20px}.editor{min-width:0;min-height:0;display:flex;flex-direction:column}.toolstrip{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;background:var(--panel);padding:8px;border:1px solid var(--line);border-radius:5px 5px 0 0}.tools{display:flex;gap:3px}.tools button{padding:6px 9px;font-size:11px;background:transparent;box-shadow:none;border-color:transparent;display:flex;align-items:center;gap:6px}.tools button .tool-icon{font-size:18px;line-height:20px}.tools button.active{border:1px solid #738a78;background:var(--highlight);box-shadow:inset 0 1px 2px #b7c7ad}.stroke-controls{display:flex;align-items:center;gap:12px;font-size:10px;flex-wrap:nowrap}.stroke-controls label{display:flex;align-items:center;gap:5px;white-space:nowrap}.stroke-controls output{font-variant-numeric:tabular-nums;width:17px}input[type=range]{width:68px;accent-color:var(--teal)}input[type=checkbox]{accent-color:var(--teal);margin:0}.canvas-area{flex:1;min-height:0;display:flex;border:1px solid var(--line);border-top:0;background:#d4d6cc}.palette{width:45px;flex-shrink:0;background:#e7e5db;border-right:1px solid #bfc3b8;display:flex;flex-direction:column;align-items:center;padding:10px 6px;gap:9px}.palette #swatches{display:grid;grid-template-columns:1fr 1fr;gap:5px}.palette .color-swatch{width:13px;height:18px;padding:0;border:1px solid #809083;border-radius:1px;box-shadow:none}.palette .color-swatch.active{outline:2px solid #203f44;outline-offset:1px}.custom-color input{display:block;width:28px;height:28px;padding:1px;border:1px solid #9aa89c;border-radius:3px;background:#f3f1e9;cursor:pointer}.history{display:flex;flex-direction:column;gap:6px;margin-top:auto}.history button{font-size:19px;width:28px;height:29px;padding:0;background:#f3f1e9}.stage{flex:1;min-width:0;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;background-image:radial-gradient(#b5bab0 .65px,transparent .65px);background-size:10px 10px;overflow:hidden}.board{width:200px;height:200px;line-height:0;box-shadow:0 4px 18px #263e4025;border:1px solid #465e58;background:white}.board canvas{width:100%;height:100%;touch-action:none;display:block;cursor:default}.canvas-dimensions{position:absolute;bottom:5px;right:8px;color:#717b72;font-size:9px;letter-spacing:.7px;pointer-events:none}.objectbar{min-height:45px;border:1px solid var(--line);border-top:0;display:flex;justify-content:space-between;align-items:center;padding:7px 10px;gap:10px;background:#eeede5;border-radius:0 0 4px 4px}.object-label{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.object-actions{display:flex;gap:4px}.object-actions button{padding:5px 8px;font-size:10px}.object-actions .delete{color:#a8493f}.canvas-hint{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 1px 0;font-size:10px;color:#69766d;line-height:1.5}.canvas-hint b{color:#344e43}.canvas-hint label{display:flex;align-items:center;gap:5px;white-space:nowrap}.bank{min-height:0;display:flex;flex-direction:column;border:1px solid #c5c8ba;background:#f7f6ef;border-radius:6px;overflow:hidden}.bank-heading{display:flex;justify-content:space-between;align-items:center;background:#e9eddf;padding:16px;border-bottom:1px solid #c9d2c0}.eyebrow{font-size:8px;letter-spacing:1.5px;font-weight:700;color:#6c806c}.bank-heading h2{font-size:19px;letter-spacing:-.5px;margin:6px 0 0}.bank-heading h2 span{font-size:10px;letter-spacing:0;font-weight:400;background:#dbe2d1;padding:3px 6px;border-radius:9px;vertical-align:middle;margin-left:5px}.bank-icon{font-size:26px;color:#71866c}.bank-controls{padding:12px 13px 0}.bank-controls select{width:100%;padding:9px 10px;border:1px solid #bbc5b7;border-radius:4px;background:#fffefa;color:#365144;font-size:12px}.search-box{display:flex;align-items:center;margin-top:9px;border:1px solid #c8cec2;background:#fffefa;border-radius:4px;padding:0 10px;gap:7px}.search-box>span{font-size:24px;color:#698477}.search-box input{min-width:0;flex:1;border:0;background:transparent;padding:10px 0;font-size:11px;color:#2a453d;outline:none}.search-box kbd{font-size:9px;border:1px solid #d6ddd1;border-radius:3px;padding:1px 4px;color:#a0ac9c}.bank-meta{display:flex;justify-content:space-between;align-items:center;height:32px;font-size:9px;color:#7c877a}.bank-meta button{padding:0;border:0;box-shadow:none;background:none;text-decoration:underline;font-size:10px}.gallery{overflow-y:scroll;min-height:0;flex:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:9px;padding:0 12px 12px;scrollbar-color:#9faa95 #eef0e6;scrollbar-width:thin}.card{height:145px;min-width:0;display:flex;flex-direction:column;align-items:center;background:#fffefa;border:1px solid #d3d9cb;padding:6px;border-radius:4px;box-shadow:0 1px 1px #253b3810;position:relative}.card:hover:not(:disabled){background:#edf3e4;border-color:#78966f;box-shadow:0 3px 7px #193e3020;transform:translateY(-1px)}.card:hover:after{content:'+';position:absolute;right:6px;top:6px;background:#2c5955;color:white;border-radius:50%;width:19px;height:19px;line-height:19px}.card img{width:100%;height:103px;object-fit:contain;mix-blend-mode:multiply;pointer-events:none}.card span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:center;font-size:10px;line-height:1.3;color:#526252;margin-top:6px}.bank-footer{padding:10px;text-align:center;font-size:9px;color:#778775;background:#e9eddf;border-top:1px solid #d4ddca}.bank-footer .tiny-dot{background:#7c9973;margin-right:5px;width:5px;height:5px}.statusbar{height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 20px;font-size:10px;background:#dfE3d7;border-top:1px solid #c4cebb;color:#6b7a67;gap:12px}.statusbar #status{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.statusbar #autosave{white-space:nowrap}.empty{grid-column:1/-1;padding:40px 10px;text-align:center;color:#758573;line-height:1.8}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}dialog{max-width:470px;width:calc(100% - 32px);border:1px solid #99ac98;border-radius:9px;padding:24px;background:#f7f6ef;color:var(--ink);box-shadow:0 18px 70px #13363640}dialog::backdrop{background:#153c4266;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between}.dialog-head button{font-size:21px;line-height:20px;border:0;padding:0;background:none;box-shadow:none}dialog h2{font-size:24px;letter-spacing:-.7px}dialog p,dialog li{line-height:1.6;font-size:12px}dialog ol{padding-left:20px}dialog li{margin:10px 0}.help-note{color:#768372;font-size:11px!important}.dialog-go{width:100%;margin-top:14px}textarea{width:100%;border:1px solid #b6c4ad;padding:10px;background:#fffefa;border-radius:4px;resize:vertical}.text-size-label{display:flex;gap:14px;align-items:center;margin-top:12px}.text-size-label input{width:80px;padding:7px;border:1px solid #b6c4ad;background:#fffefa;border-radius:3px}
@media(min-width:1450px){.workspace{padding:22px 30px;gap:26px;grid-template-columns:minmax(0,1fr) 350px}.gallery{gap:12px}.card{height:163px}.card img{height:122px}.tools button{padding:7px 12px}}
@media(max-width:1100px){.workspace{grid-template-columns:minmax(0,1fr) 270px;gap:12px;padding:12px}.toolstrip{gap:5px}.tools button{padding:6px}.tools button .tool-name{display:none}.object-label{max-width:100px}.object-actions button{padding:6px}.canvas-hint{align-items:flex-start;flex-direction:column;gap:5px}.card{height:135px}.card img{height:92px}}
@media(max-width:740px){body{height:auto;min-height:100dvh}.titlebar{height:70px;padding:0 14px}.brand h1{font-size:21px}.brand p{font-size:9px}.local-badge{display:none}.header-right{gap:0}.filebar{padding:9px 10px;gap:4px}.file-actions{gap:0;flex-wrap:wrap}.file-actions button{padding:6px;font-size:10px}.divider{display:none}.filebar .primary{font-size:10px;padding:9px}.filebar .primary span{margin-left:3px}.workspace{display:flex;flex-direction:column;gap:16px;padding:12px 10px}.editor{flex:none}.canvas-area{height:calc(100vw - 30px);min-height:300px;max-height:560px}.palette{width:36px;padding:8px 3px}.palette #swatches{gap:4px}.palette .color-swatch{width:11px;height:16px}.stroke-controls{gap:6px;font-size:9px}.stroke-controls input[type=range]{width:45px}.toolstrip{padding:5px}.tools{gap:1px}.tools button{padding:5px}.tools button .tool-icon{font-size:17px}.objectbar{flex-wrap:wrap;padding:8px;gap:7px}.object-label{max-width:100%;width:100%;font-size:10px}.object-actions{width:100%;justify-content:space-between}.object-actions button{padding:7px 9px}.canvas-hint{padding-top:8px;font-size:10px;gap:8px}.bank{height:430px;flex:none}.bank-heading{padding:12px 15px}.bank-heading h2{font-size:18px}.bank-controls{padding-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.bank-controls select{font-size:11px}.search-box{margin-top:0}.search-box kbd{display:none}.bank-meta{grid-column:1/-1;height:24px}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.card{height:125px}.card img{height:84px}.card span{font-size:9px}.statusbar{height:34px;padding:0 10px;font-size:9px}.statusbar #autosave{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.tip-button{background:transparent;color:#f6e2a0;border:1px solid #718d89;box-shadow:none;white-space:nowrap;font-size:11px;padding:8px 10px}.tip-qr{display:block;width:210px;height:210px;max-width:100%;margin:16px auto;background:white;border-radius:4px}.tip-address-label{display:block;font-size:11px;margin:14px 0 7px;color:#526252}.tip-address{width:100%;font:12px monospace;padding:11px 8px;border:1px solid #bbc5b7;background:#fffefa;border-radius:4px;color:#294b44}.tip-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.tip-actions>*{flex:1;text-align:center;white-space:nowrap}.tip-wallet{display:inline-block;text-decoration:none;font-size:12px;padding:10px;border-radius:4px}#tip-message{font-size:11px;color:#526252;min-height:18px}@media(max-width:740px){.header-right{gap:8px}.tip-button{font-size:10px;padding:7px}.brand h1{font-size:18px}.brand p{font-size:8px}}
