*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{display:flex;flex-direction:column;font-family:Helvetica,Arial,sans-serif;background:#fff;color:#111}#toolbar{height:40px;flex:none;display:flex;align-items:center;gap:8px;padding:0 12px;border-bottom:1px solid #e2e2e2}#logo{font-weight:700;letter-spacing:.04em}#toolbar .spacer{flex:1}#toolbar button{width:28px;height:28px;border:1px solid #d4d4d4;border-radius:4px;background:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#333}#toolbar button:disabled{opacity:.35;cursor:default}#toolbar button.tool.active{background:#e8f0fa;border-color:#3a7bd5;color:#1f5cb0}#select-wrap{position:relative;display:inline-flex;align-items:center}#select-wrap #tool-select{position:relative}#select-corner{position:absolute;right:2px;bottom:2px;pointer-events:none}#select-menu[hidden]{display:none}#select-menu{position:absolute;top:32px;left:0;z-index:10;background:#fff;border:1px solid #d4d4d4;border-radius:4px;box-shadow:0 4px 12px #0000001f;display:flex;flex-direction:column;min-width:88px}#select-menu button{border:none;background:none;padding:5px 12px 5px 8px;font-size:12px;text-align:left;cursor:pointer;white-space:nowrap;width:100%;display:flex;align-items:center;justify-content:flex-start;gap:7px}#select-menu button svg{flex:none}#select-menu button:hover{background:#f0f4f9}#select-menu button.active-mode{color:#1f5cb0;font-weight:600}#canvas-host{flex:1;min-height:0;touch-action:none;cursor:crosshair;user-select:none;-webkit-user-select:none}#export-wrap{position:relative;display:inline-flex;align-items:center}#export-menu[hidden]{display:none}#export-menu{position:absolute;top:32px;right:0;z-index:10;background:#fff;border:1px solid #d4d4d4;border-radius:4px;box-shadow:0 4px 12px #0000001f;display:flex;flex-direction:column;min-width:124px}#export-menu button{border:none;background:none;padding:6px 12px;font-size:12px;text-align:left;cursor:pointer;white-space:nowrap;width:100%;height:auto;color:#333}#export-menu button:hover{background:#f0f4f9}#canvas-host .canvas{width:100%;height:100%;display:block}#statusline{flex:none;padding:6px 12px;font-size:12px;color:#777;border-top:1px solid #e2e2e2}
