:root{color:#1c2b52;font-family:system-ui,sans-serif}body{margin:0}button,.btn,select{font:inherit;color:inherit;cursor:pointer;background:#fff;border:1px solid #b6c1de;border-radius:6px;padding:4px 10px;text-decoration:none}button.primary{color:#fff;background:#2f4a8a;border-color:#2f4a8a}button.danger{color:#b8381a}.home{max-width:760px;margin:0 auto;padding:24px}.bar{gap:8px;margin-bottom:12px;display:flex}.status{color:#5b6b8c;min-height:1.2em}.maps{padding:0;list-style:none}.maps li{border-bottom:1px solid #e3e8f5;align-items:center;gap:8px;padding:10px;display:flex}.maps .title{color:inherit;flex:1;font-weight:600}.maps .date{color:#7b88a8;font-size:12px}.editor{flex-direction:column;height:100vh;display:flex}.toolbar{background:#f3f5fb;border-bottom:1px solid #dbe1f0;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 10px;display:flex}.canvas{flex:1;min-height:0}.icon-picker{background:#fff;border-bottom:1px solid #dbe1f0;flex-wrap:wrap;gap:4px;padding:6px 10px;display:flex}.icon-picker button{width:28px;height:28px;padding:3px}.icon-picker svg{width:100%;height:100%}.hidden{display:none!important}table{border-collapse:collapse;width:100%}td{border-bottom:1px solid #e3e8f5;padding:6px}.combo{min-width:160px;font-family:monospace}.overlay{z-index:50;background:#141e3c73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:#fff;border-radius:10px;width:min(560px,94vw);max-height:88vh;padding:14px 16px;overflow:auto}.dialog.wide{width:min(900px,96vw)}.dialog-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0;display:flex}.row input[type=email],.row input[type=password],.row input[type=text]{font:inherit;border:1px solid #b6c1de;border-radius:6px;flex:1;min-width:160px;padding:6px 8px}.list{margin:8px 0;padding:0;list-style:none}.list li{border-bottom:1px solid #e3e8f5;align-items:center;gap:8px;padding:6px 0;display:flex}.list .grow{flex:1}.banner{background:#eef3ff;border:1px solid #c5d3f5;border-radius:8px;margin:10px 0;padding:10px 12px}.badge{color:#46557a;background:#e3e8f5;border-radius:10px;padding:1px 8px;font-size:11px}.preview{border:1px solid #dbe1f0;border-radius:6px;height:380px;margin-top:8px}.save-state{color:#7b88a8;min-width:70px;font-size:12px}.save-state.error{color:#b8381a}.auth{max-width:380px;margin:40px auto;padding:0 16px}.sync-pill{z-index:40;color:#46557a;background:#e3e8f5;border-radius:12px;padding:3px 10px;font-size:12px;position:fixed;bottom:12px;left:12px;box-shadow:0 1px 4px #141e3c33}.sync-pill[data-kind=offline]{color:#7a5200;background:#fff1d6}.sync-pill[data-kind=error]{color:#b8381a;background:#fde2dc}.toast{z-index:60;color:#fff;background:#1c2b52;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;max-width:min(420px,92vw);padding:10px 12px;display:flex;position:fixed;bottom:12px;right:12px;box-shadow:0 2px 10px #141e3c66}.toast .btn,.toast button{color:#1c2b52}.secret{word-break:break-all;-webkit-user-select:all;user-select:all;background:#fff;border:1px solid #c5d3f5;border-radius:6px;margin:6px 0;padding:6px 8px;display:block}.grow{flex:1}.ai-tokens{margin-top:24px}.install{z-index:40;position:fixed;top:12px;right:12px}.choices{gap:8px;margin:12px 0;display:grid}.choice{border:1px solid #b6c1de;border-radius:6px;align-items:flex-start;gap:8px;padding:8px;display:flex}.warning{color:#7b241c;background:#fdecea;border:2px solid #c0392b;border-radius:6px;padding:.6rem .8rem}
