.toast-host[data-v-f9915c56]{position:fixed;top:calc(env(safe-area-inset-top,0px) + 16px);left:50%;transform:translate(-50%);z-index:100;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;width:calc(100% - 32px);max-width:420px}.toast[data-v-f9915c56]{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:0;border:2px solid var(--text);box-shadow:4px 4px 0 var(--text);pointer-events:auto;width:100%;font-size:.9375rem;font-weight:600;animation:toast-in-f9915c56 .22s cubic-bezier(.34,1.1,.64,1)}.toast.info[data-v-f9915c56],.toast.success[data-v-f9915c56]{background:var(--accent);color:#fff}.toast.error[data-v-f9915c56]{background:var(--danger);color:#fff}.toast-icon[data-v-f9915c56]{flex-shrink:0}.toast-msg[data-v-f9915c56]{flex:1}.toast-dismiss[data-v-f9915c56]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:0;color:#ffffffd9;background:none;border:none;cursor:pointer;transition:background .12s}.toast-dismiss[data-v-f9915c56]:hover{background:#00000026;color:#fff}@keyframes toast-in-f9915c56{0%{transform:translateY(-12px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.toast-enter-active[data-v-f9915c56]{transition:all .22s cubic-bezier(.34,1.1,.64,1)}.toast-leave-active[data-v-f9915c56]{transition:all .18s ease}.toast-enter-from[data-v-f9915c56]{opacity:0;transform:translateY(-12px) scale(.96)}.toast-leave-to[data-v-f9915c56]{opacity:0;transform:translateY(-8px) scale(.97)}.offline-banner[data-v-8ccf5563]{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:var(--text);color:var(--bg);font-size:.875rem;font-weight:700;border-bottom:2px solid var(--text)}.banner-icon[data-v-8ccf5563]{flex-shrink:0}.banner-enter-active[data-v-8ccf5563],.banner-leave-active[data-v-8ccf5563]{transition:transform .22s cubic-bezier(.34,1.1,.64,1),opacity .22s ease}.banner-enter-from[data-v-8ccf5563],.banner-leave-to[data-v-8ccf5563]{transform:translateY(-100%);opacity:0}.update-banner[data-v-817b3763]{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 16px;background:var(--accent);color:#fff;font-size:.875rem;font-weight:700}.update-reload[data-v-817b3763]{padding:4px 12px;border:2px solid #fff;background:transparent;color:#fff;font-size:.8125rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.banner-enter-active[data-v-817b3763],.banner-leave-active[data-v-817b3763]{transition:transform .22s cubic-bezier(.34,1.1,.64,1),opacity .22s ease}.banner-enter-from[data-v-817b3763],.banner-leave-to[data-v-817b3763]{transform:translateY(-100%);opacity:0}.call-overlay[data-v-8b48a970]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;background:var(--bg)}.call-avatar[data-v-8b48a970]{width:96px;height:96px;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:900;border:2px solid var(--text);background:var(--accent-tint);color:var(--accent)}.call-name[data-v-8b48a970]{margin:12px 0 0;font-size:1.5rem;font-weight:800;color:var(--text)}.call-status[data-v-8b48a970]{margin:0;font-size:.875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.call-mic-warning[data-v-8b48a970]{margin:4px 0 0;max-width:280px;font-size:.8125rem;font-weight:600;text-align:center;color:#c53030}.call-actions[data-v-8b48a970]{display:flex;gap:40px;margin-top:14vh}.call-btn[data-v-8b48a970]{width:72px;height:72px;display:flex;align-items:center;justify-content:center;border:2px solid var(--text);background:var(--bg);color:var(--text);cursor:pointer}.call-accept[data-v-8b48a970]{background:#2f855a;border-color:#2f855a;color:#fff}.call-hangup-btn[data-v-8b48a970]{background:#c53030;border-color:#c53030;color:#fff}.call-pill[data-v-8b48a970]{position:fixed;top:8px;left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:8px;height:36px;max-width:min(72vw,320px);padding:0 4px;background:var(--bg);border:2px solid var(--text)}.pill-avatar[data-v-8b48a970]{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;background:var(--accent-tint);color:var(--accent)}.pill-name[data-v-8b48a970]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:800;color:var(--text)}.pill-duration[data-v-8b48a970]{flex-shrink:0;font-size:.8125rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--muted)}.pill-btn[data-v-8b48a970]{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:2px solid var(--text);background:var(--bg);color:var(--text);cursor:pointer}.pill-hangup[data-v-8b48a970]{background:#c53030;border-color:#c53030;color:#fff}.call-mute[aria-pressed=true][data-v-8b48a970]{background:var(--accent);border-color:var(--accent);color:#fff}.splash[data-v-87874b14]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--accent);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px}.splash-title[data-v-87874b14]{font-size:3rem;font-weight:900;letter-spacing:-.02em;color:#fff;margin:0}.splash-icon[data-v-87874b14]{width:110px;height:110px}.splash-enter-active[data-v-87874b14],.splash-leave-active[data-v-87874b14]{transition:opacity .25s ease}.splash-enter-from[data-v-87874b14],.splash-leave-to[data-v-87874b14]{opacity:0}.app-bar[data-v-a31e47b5]{position:sticky;top:0;z-index:10;background:var(--accent);border-bottom:2px solid var(--text)}.app-bar-inner[data-v-a31e47b5]{display:flex;align-items:center;gap:10px;padding-top:14px;padding-bottom:14px}.app-bar-logo[data-v-a31e47b5]{display:flex;align-items:center}.app-bar-title[data-v-a31e47b5]{font-size:1.125rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.08em;flex:1}.app-bar-action[data-v-a31e47b5]{min-height:var(--touch-min);min-width:var(--touch-min);display:flex;align-items:center;justify-content:center;color:#fff;margin-right:-8px}.app-bar-action[data-v-a31e47b5]:hover{background:var(--accent-press);color:#fff}.lists-main[data-v-a31e47b5]{padding-top:24px;padding-bottom:40px;display:flex;flex-direction:column;gap:24px}.lists-list[data-v-a31e47b5]{display:flex;flex-direction:column;gap:8px}.list-item[data-v-a31e47b5]{overflow:hidden}.list-item-link[data-v-a31e47b5]{display:flex;align-items:center;gap:10px;padding:14px 16px;min-height:var(--touch-min);text-decoration:none;color:var(--text);transition:background .12s}.list-item-link[data-v-a31e47b5]:hover{background:var(--bg);text-decoration:none}.list-item-icon[data-v-a31e47b5]{flex-shrink:0}.list-item-name[data-v-a31e47b5]{flex:1;font-weight:500}.list-item-role[data-v-a31e47b5]{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);background:var(--accent-tint);padding:2px 8px;border-radius:0;border:1px solid var(--accent);white-space:nowrap}.list-item-chevron[data-v-a31e47b5]{flex-shrink:0}.lists-empty[data-v-a31e47b5]{text-align:center;color:var(--muted);padding:32px 0;font-size:.9375rem}.create-section[data-v-a31e47b5]{display:flex;flex-direction:column;gap:8px}.create-form[data-v-a31e47b5]{display:flex;gap:8px}.create-form .input[data-v-a31e47b5]{flex:1}.create-form .btn[data-v-a31e47b5]{flex-shrink:0}.app-footer[data-v-a31e47b5]{text-align:center;padding:8px 0 20px;font-size:.6875rem;color:var(--muted)}.add-item[data-v-a0f2306b]{position:relative}.add-form[data-v-a0f2306b]{display:flex;gap:8px;align-items:center}.add-input-wrap[data-v-a0f2306b]{flex:1;position:relative;display:flex;align-items:center}.add-icon[data-v-a0f2306b]{position:absolute;left:12px;pointer-events:none;flex-shrink:0}.add-input[data-v-a0f2306b]{width:100%;padding:12px 14px 12px 38px;border:2px solid var(--text);border-radius:0;background:var(--surface);color:var(--text);font-size:1rem;font-weight:600;min-height:var(--touch-min);outline:none;transition:border-color .15s,box-shadow .15s}.add-input[data-v-a0f2306b]:focus{border-color:var(--accent);box-shadow:3px 3px 0 var(--accent)}.add-input[data-v-a0f2306b]::placeholder{color:var(--muted);font-weight:600}.add-btn[data-v-a0f2306b]{flex-shrink:0;width:56px;align-self:stretch;border:2px solid var(--text);box-shadow:3px 3px 0 var(--text);background:#fff;color:var(--text);font-size:1.75rem;font-weight:300;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.suggestions[data-v-a0f2306b]{position:absolute;bottom:calc(100% + 4px);left:0;right:0;z-index:20;overflow:hidden;margin:0}.suggestion-item[data-v-a0f2306b]{padding:12px 16px;cursor:pointer;font-size:.9375rem;color:var(--text);min-height:var(--touch-min);display:flex;align-items:center;transition:background .1s;border-top:1px solid var(--border)}.suggestion-item[data-v-a0f2306b]:first-child{border-top:none}.suggestion-item[data-v-a0f2306b]:hover{background:var(--accent-tint);color:var(--accent)}.item-tile[data-v-35457707]{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;padding:9px;position:relative;min-height:108px;aspect-ratio:1;border-radius:0;border:2px solid var(--text);touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;cursor:pointer;overflow:hidden}.tile--purchase[data-v-35457707]{background:var(--surface);box-shadow:4px 4px 0 var(--accent);transition:background .12s,box-shadow .1s}.tile--purchase[data-v-35457707]:active{background:var(--accent-tint);box-shadow:2px 2px 0 var(--accent)}@media (hover: hover){.tile--purchase[data-v-35457707]:hover{background:var(--accent-tint)}}.tile--recent[data-v-35457707]{background:var(--surface);box-shadow:3px 3px 0 var(--muted);color:var(--muted);transition:box-shadow .1s,background .12s}.tile--recent[data-v-35457707]:active{box-shadow:1px 1px 0 var(--accent);background:var(--accent-tint)}@media (hover: hover){.tile--recent[data-v-35457707]:hover{background:var(--accent-tint);box-shadow:4px 4px 0 var(--accent);border-color:var(--text)}.tile--recent:hover .tile-name[data-v-35457707]{color:var(--text)}}.tile-photo[data-v-35457707]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.tile-scrim[data-v-35457707]{position:absolute;left:0;right:0;bottom:0;height:66%;background:linear-gradient(to top,#fffffff5,#ffffffdb 42%,#fff0);pointer-events:none}.tile--no-photo[data-v-35457707]{align-items:center;justify-content:center;text-align:center}.tile--no-photo .tile-text[data-v-35457707]{align-items:center}.tile-text[data-v-35457707]{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;width:100%}.tile-name[data-v-35457707]{font-size:.8125rem;font-weight:800;color:var(--text);line-height:1.05;letter-spacing:-.01em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.tile--recent .tile-name[data-v-35457707]{color:var(--muted)}.tile-note[data-v-35457707]{font-size:.6875rem;color:var(--muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin-top:2px}@keyframes tile-highlight-35457707{0%,70%{background:color-mix(in srgb,var(--accent) 30%,var(--surface));box-shadow:6px 6px 0 var(--accent)}to{background:var(--surface);box-shadow:4px 4px 0 var(--accent)}}.tile--highlighted[data-v-35457707]{animation:tile-highlight-35457707 2.6s ease-out forwards}.item-qty-badge[data-v-5aba7e7a]{position:absolute;top:0;right:0;font-size:.6875rem;font-weight:800;background:var(--accent);color:#fff;border-left:2px solid var(--text);border-bottom:2px solid var(--text);padding:2px 5px;z-index:2}.recent-plus[data-v-20e339db]{position:absolute;top:0;right:0;width:22px;height:22px;background:var(--bg);border-left:2px solid var(--text);border-bottom:2px solid var(--text);color:var(--accent);font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:2}.list-section.to-purchase-zone[data-v-d669d687]{background:var(--accent-tint);border-bottom:2px solid var(--text);padding:12px 10px 14px}.list-section.recently-used-zone[data-v-d669d687]{background:var(--bg);padding:12px 10px 14px}.zone-head[data-v-d669d687]{display:flex;align-items:center;gap:10px;margin-bottom:10px}.zone-bar[data-v-d669d687]{width:14px;height:22px;flex:0 0 14px}.to-purchase-zone .zone-bar[data-v-d669d687]{background:var(--accent)}.recently-used-zone .zone-bar[data-v-d669d687]{background:var(--text)}.zone-title[data-v-d669d687]{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.to-purchase-zone .zone-title[data-v-d669d687]{color:var(--accent)}.recently-used-zone .zone-title[data-v-d669d687]{color:var(--text)}.zone-count[data-v-d669d687]{margin-left:auto;font-size:11px;font-weight:800;letter-spacing:.06em;color:var(--muted)}.zone-hint[data-v-d669d687]{margin-left:auto;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--text);padding:3px 7px}.purchase-grid[data-v-d669d687],.recent-grid[data-v-d669d687]{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:8px}.list-empty[data-v-d669d687]{color:var(--muted);font-size:.875rem;padding:8px 4px}.paper-row-wrap[data-v-94810320]{position:relative;list-style:none;overflow:hidden;border-bottom:1px solid var(--border, rgba(0, 0, 0, .15))}.paper-row-wrap[data-v-94810320]:last-child{border-bottom:none}.paper-row[data-v-94810320]{position:relative;z-index:1;display:flex;align-items:center;gap:10px;min-height:var(--touch-min);padding:10px 12px;background:var(--surface);cursor:pointer;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:transform .18s cubic-bezier(.2,.7,.2,1),background .15s}@media (hover: hover){.paper-row[data-v-94810320]:hover{background:var(--accent-tint)}}.paper-row[data-v-94810320]:active{background:var(--accent-tint)}.paper-row--revealed[data-v-94810320]{transform:translate(-88px)}.paper-row--struck[data-v-94810320]{background:var(--bg)}.paper-row--struck .paper-row-name[data-v-94810320],.paper-row--struck .paper-row-note[data-v-94810320]{text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:color-mix(in srgb,var(--text) 45%,transparent);color:var(--muted)}.paper-row--struck .paper-row-actor[data-v-94810320]{opacity:.45}.paper-row--struck .paper-row-group[data-v-94810320]{background:transparent;color:var(--muted);box-shadow:inset 0 0 0 2px var(--muted)}@keyframes paper-row-highlight-94810320{0%,60%{background:color-mix(in srgb,var(--accent) 28%,var(--surface));box-shadow:inset 4px 0 0 var(--accent)}to{background:var(--surface);box-shadow:inset 4px 0 0 transparent}}.paper-row--highlighted[data-v-94810320]{animation:paper-row-highlight-94810320 2.4s ease-out forwards}.paper-row-text[data-v-94810320]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.paper-row-name[data-v-94810320]{font-size:.9375rem;font-weight:700;letter-spacing:-.01em;line-height:1.3;color:var(--text);overflow-wrap:anywhere}.paper-row-note[data-v-94810320]{font-size:.75rem;line-height:1.35;color:var(--muted);overflow-wrap:anywhere}.paper-row-group[data-v-94810320]{flex-shrink:0;font-size:.625rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--accent);padding:3px 7px}.paper-row-actor[data-v-94810320]{flex-shrink:0;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:800;color:#fff;background:var(--text)}.paper-row-action[data-v-94810320]{position:absolute;top:0;right:0;bottom:0;width:88px;border:none;border-left:2px solid var(--text);color:#fff;font-weight:800;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.paper-row-action[data-v-94810320]:active{filter:brightness(.88)}.paper-row-remove[data-v-94810320]{background:#c53030}.paper-row-archive[data-v-94810320]{background:var(--text)}.paper-list[data-v-d02e8f41]{display:flex;flex-direction:column;background:var(--accent-tint);padding:0 12px 16px}.paper-list[data-v-d02e8f41]:not(:has(.paper-recent)){border-bottom:2px solid var(--text)}.paper-rows[data-v-d02e8f41]{list-style:none;margin:0;padding:0;background:var(--surface);border:2px solid var(--text);box-shadow:4px 4px 0 var(--accent)}.paper-rows[data-v-d02e8f41]:not(:has(li)){display:none}.paper-head[data-v-d02e8f41]{display:flex;align-items:center;gap:10px;padding:14px 2px 10px}.paper-head-bar[data-v-d02e8f41]{width:14px;height:22px;flex:0 0 14px;background:var(--accent)}.paper-head-title[data-v-d02e8f41]{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.paper-head-count[data-v-d02e8f41]{margin-left:auto;font-size:11px;font-weight:800;letter-spacing:.06em;color:var(--muted);font-variant-numeric:tabular-nums}.paper-filter-wrap[data-v-d02e8f41]{display:flex;align-items:center;gap:10px;padding:0 2px 12px}.paper-filter-label[data-v-d02e8f41]{font-size:.6875rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.paper-filter[data-v-d02e8f41]{flex:1;min-height:40px;border:2px solid var(--text);border-radius:0;background:var(--surface);color:var(--text);font-weight:700;padding:4px 10px}.paper-empty[data-v-d02e8f41]{background:var(--surface);border:2px dashed var(--muted);color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;text-align:center;padding:26px 16px}.paper-recent[data-v-d02e8f41]{margin:18px -12px -16px;background:var(--bg);border-top:2px solid var(--text);padding:14px 12px 16px}.paper-recent-head[data-v-d02e8f41]{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text)}.paper-recent-head[data-v-d02e8f41]:before{content:"";width:14px;height:22px;flex:0 0 14px;background:var(--text)}.paper-recent .paper-rows[data-v-d02e8f41]{box-shadow:3px 3px 0 var(--muted)}.paper-recent[data-v-d02e8f41] .paper-row-name{color:var(--muted);font-weight:600}.paper-recent[data-v-d02e8f41] .paper-row-actor{background:var(--muted)}.detail-overlay[data-v-8fcbc3ca]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#00000073;display:flex;align-items:flex-end;justify-content:center;padding:0;animation:fade-in-8fcbc3ca .2s ease}@media (min-width: 480px){.detail-overlay[data-v-8fcbc3ca]{align-items:center;padding:24px}}@keyframes fade-in-8fcbc3ca{0%{opacity:0}to{opacity:1}}.item-detail[data-v-8fcbc3ca]{width:100%;max-width:480px;display:flex;flex-direction:column;gap:20px;padding:24px 20px 32px;border-radius:0;animation:slide-up-8fcbc3ca .22s cubic-bezier(.34,1.1,.64,1);max-height:90dvh;overflow-y:auto}@media (min-width: 480px){.item-detail[data-v-8fcbc3ca]{border-radius:0;animation:scale-in-8fcbc3ca .18s cubic-bezier(.34,1.1,.64,1)}}@keyframes slide-up-8fcbc3ca{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scale-in-8fcbc3ca{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.detail-header[data-v-8fcbc3ca]{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.detail-title[data-v-8fcbc3ca]{font-size:1.125rem;font-weight:700;color:var(--text);flex:1}.detail-close[data-v-8fcbc3ca]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:0;color:var(--muted)}.detail-close[data-v-8fcbc3ca]:hover{background:var(--bg);color:var(--text)}.detail-fields[data-v-8fcbc3ca]{display:flex;flex-direction:column;gap:14px}.detail-note[data-v-8fcbc3ca]{resize:vertical;min-height:72px}.photo-section[data-v-8fcbc3ca]{display:flex;flex-direction:column;gap:10px}.photo-preview[data-v-8fcbc3ca]{position:relative;border-radius:0;overflow:hidden;background:var(--bg);border:2px solid var(--text)}.photo-img[data-v-8fcbc3ca]{width:100%;aspect-ratio:1;object-fit:cover;display:block;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.photo-img--dragging[data-v-8fcbc3ca]{cursor:grabbing}.photo-hint[data-v-8fcbc3ca]{position:absolute;left:50%;bottom:8px;transform:translate(-50%);padding:4px 10px;border-radius:999px;background:#0000008c;color:#fff;font-size:.6875rem;font-weight:600;letter-spacing:.01em;pointer-events:none;transition:opacity .15s}.photo-img--dragging+.photo-hint[data-v-8fcbc3ca]{opacity:0}.photo-placeholder[data-v-8fcbc3ca]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;background:var(--bg);border:2px dashed var(--border);border-radius:0;color:var(--muted);font-size:.875rem}.photo-upload-label[data-v-8fcbc3ca]{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:0;border:2px solid var(--text);background:var(--surface);font-size:.875rem;font-weight:600;color:var(--muted);cursor:pointer;transition:border-color .15s,color .15s,background .15s;align-self:flex-start}.photo-upload-label[data-v-8fcbc3ca]:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}.photo-input[data-v-8fcbc3ca]{display:none}.detail-attribution[data-v-8fcbc3ca]{font-size:.75rem;color:var(--muted);margin-top:-8px}.detail-save[data-v-8fcbc3ca]{width:100%}.detail-delete[data-v-8fcbc3ca]{width:100%;background:none;border:2px solid #c53030;color:#c53030;font-weight:700}.detail-delete[data-v-8fcbc3ca]:hover{background:#fff5f5}.share-list[data-v-a95c1f44]{display:flex;flex-direction:column;gap:8px}.share-card[data-v-a95c1f44]{display:flex;flex-direction:column;gap:16px;padding:16px}.share-card-icon[data-v-a95c1f44]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:0;background:var(--accent-tint);border:2px solid var(--text)}.share-form[data-v-a95c1f44]{display:flex;flex-direction:column;gap:12px}.share-field[data-v-a95c1f44]{flex:1}.share-btn[data-v-a95c1f44]{align-self:flex-start}.join-code-card[data-v-a95c1f44]{flex-direction:row;align-items:flex-start;gap:16px;padding:16px}.join-code-body[data-v-a95c1f44]{display:flex;flex-direction:column;gap:10px;flex:1}.join-code-display[data-v-a95c1f44]{font-size:2rem;font-weight:900;letter-spacing:.2em;color:var(--accent);font-variant-numeric:tabular-nums}.join-link-row[data-v-a95c1f44]{display:flex;gap:8px;align-items:center}.join-link-input[data-v-a95c1f44]{flex:1;font-size:.75rem;color:var(--muted);min-width:0}.qr-wrap[data-v-a95c1f44]{width:160px;height:160px;border:2px solid var(--text);padding:6px;background:#fff;flex-shrink:0}.qr-wrap[data-v-a95c1f44] svg{display:block;width:100%;height:100%}.confirm-overlay[data-v-f5b0a466]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px}.confirm-card[data-v-f5b0a466]{width:100%;max-width:340px;background:var(--surface);border:2px solid var(--text);box-shadow:6px 6px 0 var(--text);padding:20px}.confirm-title[data-v-f5b0a466]{font-size:1.0625rem;font-weight:800;color:var(--text);margin:0 0 8px}.confirm-message[data-v-f5b0a466]{font-size:.9375rem;color:var(--muted);margin:0 0 20px;line-height:1.4}.confirm-actions[data-v-f5b0a466]{display:flex;gap:10px;justify-content:flex-end}.confirm-btn[data-v-f5b0a466]{min-height:var(--touch-min);padding:8px 16px;font-size:.875rem;font-weight:800;letter-spacing:.02em;border:2px solid var(--text);cursor:pointer}.confirm-btn--ghost[data-v-f5b0a466]{background:var(--surface);color:var(--text)}.confirm-btn--accent[data-v-f5b0a466]{background:var(--accent);color:#fff}.confirm-btn--danger[data-v-f5b0a466]{background:#c53030;color:#fff}.members-section[data-v-5063bb9e]{background:var(--bg);padding:18px 16px 24px;border-top:2px solid var(--text)}.members-error-msg[data-v-5063bb9e]{font-size:.875rem;color:var(--muted)}.zone-head[data-v-5063bb9e]{display:flex;align-items:center;gap:10px;margin-bottom:14px}.zone-bar[data-v-5063bb9e]{width:14px;height:22px;flex:0 0 14px;background:var(--text)}.zone-title[data-v-5063bb9e]{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--text)}.zone-count[data-v-5063bb9e]{margin-left:auto;font-size:11px;font-weight:800;letter-spacing:.06em;color:var(--muted)}.members-list[data-v-5063bb9e]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.member-row[data-v-5063bb9e]{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--border, #e5e5e5)}.member-row[data-v-5063bb9e]:last-child{border-bottom:none}.member-avatar[data-v-5063bb9e]{width:36px;height:36px;flex:0 0 36px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;border:2px solid var(--text)}.avatar-owner[data-v-5063bb9e]{background:var(--accent);color:#fff}.avatar-member[data-v-5063bb9e]{background:var(--accent-tint);color:var(--accent)}.member-name[data-v-5063bb9e]{flex:1;font-size:.9375rem;font-weight:600;color:var(--text)}.member-badge[data-v-5063bb9e]{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--accent);padding:2px 6px}.member-call[data-v-5063bb9e]{color:var(--accent);padding:6px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer}.member-call[data-v-5063bb9e]:disabled{opacity:.4;cursor:not-allowed}.member-remove[data-v-5063bb9e]{color:#c53030;padding:6px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer}.chat-bubble-root[data-v-0ddf8d74]{position:fixed;bottom:88px;right:16px;z-index:40;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.chat-fab[data-v-0ddf8d74]{position:relative;width:52px;height:52px;border-radius:0;background:var(--accent);border:2px solid var(--text);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:3px 3px 0 var(--text)}.chat-fab[data-v-0ddf8d74]:active{box-shadow:none;transform:translate(3px,3px)}.chat-badge[data-v-0ddf8d74]{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;background:#e53e3e;color:#fff;font-size:10px;font-weight:900;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--text)}.chat-preview[data-v-0ddf8d74]{background:var(--surface, #fff);border:2px solid var(--text);padding:8px 12px;max-width:220px;cursor:pointer;box-shadow:2px 2px 0 var(--text);font-size:.8125rem;line-height:1.4}.preview-sender[data-v-0ddf8d74]{font-weight:800;margin-right:4px;color:var(--accent)}.preview-text[data-v-0ddf8d74]{color:var(--text)}.preview-fade-enter-active[data-v-0ddf8d74],.preview-fade-leave-active[data-v-0ddf8d74]{transition:opacity .2s ease}.preview-fade-enter-from[data-v-0ddf8d74],.preview-fade-leave-to[data-v-0ddf8d74]{opacity:0}.chat-overlay[data-v-03a611a5]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:50;display:flex;align-items:flex-end;justify-content:center}.chat-dialog[data-v-03a611a5]{width:100%;max-width:480px;height:70vh;display:flex;flex-direction:column;overflow:hidden}.chat-header[data-v-03a611a5]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:2px solid var(--text);flex:0 0 auto}.chat-title[data-v-03a611a5]{font-size:1rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.chat-close[data-v-03a611a5]{display:flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;color:var(--text)}.chat-messages[data-v-03a611a5]{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;list-style:none;margin:0}.chat-empty[data-v-03a611a5]{color:var(--muted);font-size:.875rem;text-align:center;margin:auto}.chat-msg[data-v-03a611a5]{display:flex;flex-direction:column;gap:2px;max-width:75%}.msg-own[data-v-03a611a5]{align-self:flex-end;align-items:flex-end}.msg-other[data-v-03a611a5]{align-self:flex-start;align-items:flex-start}.msg-sender[data-v-03a611a5]{font-size:11px;font-weight:800;color:var(--accent);text-transform:uppercase;letter-spacing:.06em}.msg-bubble[data-v-03a611a5]{background:var(--accent-tint);border:2px solid var(--text);padding:8px 12px;font-size:.9375rem;line-height:1.4;word-break:break-word}.msg-own .msg-bubble[data-v-03a611a5]{background:var(--accent);color:#fff}.msg-continuation[data-v-03a611a5]{margin-top:-6px}.msg-time[data-v-03a611a5]{font-size:10px;color:var(--muted);font-weight:600}.item-chip[data-v-03a611a5]{display:inline-block;background:var(--accent);color:#fff;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border:1.5px solid var(--text);vertical-align:baseline;line-height:1.6}.msg-own .item-chip[data-v-03a611a5]{background:#fff;color:var(--accent)}.chat-footer[data-v-03a611a5]{display:flex;gap:8px;padding:12px 16px;border-top:2px solid var(--text);flex:0 0 auto}.chat-input[data-v-03a611a5]{flex:1}.chat-send[data-v-03a611a5]{flex:0 0 auto}.app-bar[data-v-7b7ec40b]{position:sticky;top:0;z-index:10;background:var(--accent);border-bottom:2px solid var(--text)}.app-bar-inner[data-v-7b7ec40b]{display:flex;align-items:center;gap:8px;padding-top:12px;padding-bottom:12px}.app-bar-back[data-v-7b7ec40b]{min-height:var(--touch-min);min-width:var(--touch-min);display:flex;align-items:center;justify-content:center;color:#fff;border-radius:0;margin-left:-8px}.app-bar-back[data-v-7b7ec40b]:hover{background:var(--accent-press);color:#fff}.app-bar-menu-wrap[data-v-7b7ec40b]{position:relative;margin-right:-8px}.app-bar-menu-btn[data-v-7b7ec40b]{min-height:var(--touch-min);min-width:var(--touch-min);display:flex;align-items:center;justify-content:center;color:#fff;border-radius:0}.app-bar-menu-btn[data-v-7b7ec40b]:hover{background:var(--accent-press);color:#fff}.app-bar-dropdown[data-v-7b7ec40b]{position:absolute;top:calc(100% + 4px);right:0;z-index:20;background:var(--surface);border:2px solid var(--text);box-shadow:3px 3px 0 var(--text);min-width:160px}.dropdown-item[data-v-7b7ec40b]{display:block;width:100%;padding:12px 16px;text-align:left;font-size:.875rem;font-weight:700;color:var(--text);background:none;border:none;cursor:pointer;letter-spacing:.02em}.dropdown-item[data-v-7b7ec40b]:hover{background:var(--accent-tint)}.dropdown-item--current[data-v-7b7ec40b]{color:var(--accent)}.dropdown-item--danger[data-v-7b7ec40b]{color:#c53030}.dropdown-item--danger[data-v-7b7ec40b]:hover{background:#fff5f5}.app-bar-title[data-v-7b7ec40b]{font-size:1.125rem;font-weight:800;color:#fff;flex:1;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.list-view[data-v-7b7ec40b]{display:flex;flex-direction:column;gap:0;padding:0 0 100px;max-width:100%}.add-item-wrapper[data-v-7b7ec40b]{position:fixed;bottom:0;left:0;right:0;z-index:30;padding:12px 16px;background:var(--accent);border-top:2px solid var(--text)}.share-overlay[data-v-7b7ec40b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:50;display:flex;align-items:flex-end;justify-content:center}.share-panel[data-v-7b7ec40b]{width:100%;max-width:480px;max-height:80vh;overflow-y:auto;padding:16px;position:relative}.share-panel-close[data-v-7b7ec40b]{position:absolute;top:12px;right:12px;min-height:36px;min-width:36px;display:flex;align-items:center;justify-content:center;color:var(--text)}.passkey-btn[data-v-b0e8d00c]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--surface);color:var(--text);border:2px solid var(--text);box-shadow:3px 3px 0 var(--text);transition:box-shadow .1s,background .1s}.passkey-btn[data-v-b0e8d00c]:hover:not(:disabled){background:var(--bg);box-shadow:4px 4px 0 var(--text)}.passkey-btn[data-v-b0e8d00c]:active:not(:disabled){box-shadow:1px 1px 0 var(--text)}.auth-page[data-v-7af191ea]{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--bg)}.auth-card[data-v-7af191ea]{width:100%;max-width:400px;padding:32px 28px;display:flex;flex-direction:column;gap:24px;border-radius:0}.auth-brand[data-v-7af191ea]{display:flex;flex-direction:column;align-items:center;gap:12px}.auth-logo[data-v-7af191ea]{width:48px;height:48px}.auth-title[data-v-7af191ea]{font-size:1.5rem;font-weight:700;color:var(--text);text-align:center}.auth-form[data-v-7af191ea]{display:flex;flex-direction:column;gap:16px}.auth-error[data-v-7af191ea]{margin-top:-4px}.auth-submit[data-v-7af191ea]{width:100%;margin-top:4px}.auth-footer[data-v-7af191ea]{text-align:center;font-size:.875rem;color:var(--muted)}.auth-footer a[data-v-7af191ea]{font-weight:600}.auth-page[data-v-88ca5a54]{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--bg)}.auth-card[data-v-88ca5a54]{width:100%;max-width:400px;padding:32px 28px;display:flex;flex-direction:column;gap:24px;border-radius:0}.auth-brand[data-v-88ca5a54]{display:flex;flex-direction:column;align-items:center;gap:12px}.auth-logo[data-v-88ca5a54]{width:48px;height:48px}.auth-title[data-v-88ca5a54]{font-size:1.5rem;font-weight:700;color:var(--text);text-align:center}.auth-form[data-v-88ca5a54]{display:flex;flex-direction:column;gap:16px}.input-code[data-v-88ca5a54]{text-transform:uppercase;letter-spacing:.2em;font-size:1.25rem;font-weight:700;text-align:center}.auth-error[data-v-88ca5a54]{margin-top:-4px}.auth-submit[data-v-88ca5a54]{width:100%;margin-top:4px}.auth-footer[data-v-88ca5a54]{text-align:center;font-size:.875rem;color:var(--muted)}.auth-footer a[data-v-88ca5a54]{font-weight:600}.link-btn[data-v-88ca5a54]{background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--accent);cursor:pointer;text-decoration:underline;text-align:center}.auth-page[data-v-ff85a099]{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--bg)}.auth-card[data-v-ff85a099]{width:100%;max-width:400px;padding:32px 28px;display:flex;flex-direction:column;gap:20px;border-radius:0}.auth-brand[data-v-ff85a099]{display:flex;justify-content:center}.auth-logo[data-v-ff85a099]{width:48px;height:48px}.join-intro[data-v-ff85a099]{text-align:center;display:flex;flex-direction:column;gap:4px}.join-label[data-v-ff85a099]{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.join-list-name[data-v-ff85a099]{font-size:1.5rem;font-weight:800;color:var(--text)}.mode-tabs[data-v-ff85a099]{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--text)}.mode-tab[data-v-ff85a099]{padding:10px 12px;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:var(--surface);color:var(--muted);border:none;cursor:pointer;transition:background .1s,color .1s}.mode-tab[data-v-ff85a099]:first-child{border-right:2px solid var(--text)}.mode-tab--active[data-v-ff85a099]{background:var(--accent);color:#fff}.mode-hint[data-v-ff85a099]{font-size:.8125rem;color:var(--muted);margin-top:-4px}.auth-form[data-v-ff85a099]{display:flex;flex-direction:column;gap:14px}.auth-error[data-v-ff85a099]{margin-top:-4px}.auth-submit[data-v-ff85a099]{width:100%;margin-top:4px}.join-state[data-v-ff85a099]{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.join-heading[data-v-ff85a099]{font-size:1rem;font-weight:700;color:var(--text)}.join-sub[data-v-ff85a099]{font-size:.9375rem;color:var(--muted)}.join-full-btn[data-v-ff85a099]{width:100%}.auth-footer[data-v-ff85a099]{text-align:center;font-size:.875rem;color:var(--muted)}.link-btn[data-v-ff85a099]{background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--accent);cursor:pointer;text-decoration:underline}.app-bar[data-v-52158bb2]{position:sticky;top:0;z-index:10;background:var(--accent);border-bottom:2px solid var(--text)}.app-bar-inner[data-v-52158bb2]{display:flex;align-items:center;gap:8px;padding-top:12px;padding-bottom:12px}.app-bar-back[data-v-52158bb2]{min-height:var(--touch-min);min-width:var(--touch-min);display:flex;align-items:center;justify-content:center;color:#fff;border-radius:0;margin-left:-8px}.app-bar-back[data-v-52158bb2]:hover{background:var(--accent-press);color:#fff}.app-bar-title[data-v-52158bb2]{font-size:1.125rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.08em}.settings-main[data-v-52158bb2]{padding-top:24px;padding-bottom:40px;display:flex;flex-direction:column;gap:12px}.theme-grid[data-v-52158bb2]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.theme-card[data-v-52158bb2]{width:100%;display:flex;align-items:center;gap:12px;padding:14px 16px;min-height:var(--touch-min);background:var(--surface);color:var(--text);text-align:left}.theme-card-active[data-v-52158bb2]{box-shadow:4px 4px 0 var(--accent)}.theme-swatch[data-v-52158bb2]{display:flex;width:36px;height:36px;border:2px solid var(--text);flex-shrink:0;overflow:hidden}.theme-swatch-half[data-v-52158bb2]{width:50%;height:100%}.theme-name[data-v-52158bb2]{flex:1;font-weight:600}.theme-check[data-v-52158bb2]{flex-shrink:0}.logout-btn[data-v-52158bb2]{display:flex;align-items:center;gap:10px;width:100%;padding:14px 16px;min-height:var(--touch-min);background:var(--surface);color:var(--text);font-weight:600;text-align:left}.logout-btn[data-v-52158bb2]:hover{box-shadow:4px 4px 0 var(--text)}.notif-note[data-v-52158bb2]{color:var(--text);opacity:.8;font-size:.95rem;padding:4px 2px}.notif-row[data-v-52158bb2]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 16px;min-height:var(--touch-min);background:var(--surface);color:var(--text);font-weight:600;text-align:left}.notif-row[data-v-52158bb2]:disabled{opacity:.5}.notif-sub[data-v-52158bb2]{margin-left:12px}.notif-state[data-v-52158bb2]{font-weight:700;color:var(--accent)}.notif-subheader[data-v-52158bb2]{font-size:.8125rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:8px 0 0 12px}.admin-page[data-v-b75c6816]{min-height:100dvh;background:var(--bg);padding:16px}.admin-inner[data-v-b75c6816]{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.admin-head[data-v-b75c6816]{display:flex;align-items:center;gap:12px}.admin-back[data-v-b75c6816]{font-weight:600;color:var(--accent)}.admin-title[data-v-b75c6816]{font-size:1.125rem;font-weight:800;color:var(--text)}.admin-search[data-v-b75c6816]{display:flex;gap:8px}.admin-search .input[data-v-b75c6816]{flex:1}.admin-results[data-v-b75c6816]{display:flex;flex-direction:column;gap:16px}.admin-card[data-v-b75c6816]{padding:16px;border-radius:0}.admin-card--alert[data-v-b75c6816]{border:2px solid var(--danger, #c0392b)}.admin-hint[data-v-b75c6816]{font-size:.8125rem;color:var(--muted);margin-bottom:10px}.reject-code[data-v-b75c6816]{display:inline-block;padding:1px 8px;font-size:.75rem;font-weight:700}.reject-forbidden[data-v-b75c6816]{background:#b8860b;color:#fff}.reject-invalid[data-v-b75c6816]{background:var(--danger, #c0392b);color:#fff}.admin-h2[data-v-b75c6816]{font-size:.9375rem;font-weight:800;margin-bottom:10px;color:var(--text)}.admin-kv[data-v-b75c6816]{display:grid;grid-template-columns:120px 1fr;gap:4px 12px;font-size:.875rem}.admin-kv dt[data-v-b75c6816]{color:var(--muted);font-weight:600}.admin-kv dd[data-v-b75c6816]{color:var(--text);word-break:break-all}.admin-table[data-v-b75c6816]{width:100%;border-collapse:collapse;font-size:.8125rem}.admin-table th[data-v-b75c6816],.admin-table td[data-v-b75c6816]{text-align:left;padding:6px 8px;border-bottom:1px solid var(--border, #e5e5e5);vertical-align:top}.admin-table th[data-v-b75c6816]{color:var(--muted);font-weight:700}.mono[data-v-b75c6816]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.payload[data-v-b75c6816]{max-width:260px;overflow-wrap:anywhere}.role-badge[data-v-b75c6816]{display:inline-block;padding:1px 8px;font-size:.75rem;font-weight:700;text-transform:uppercase}.role-owner[data-v-b75c6816]{background:var(--accent);color:#fff}.role-member[data-v-b75c6816]{background:var(--surface);color:var(--muted);border:1px solid var(--muted)}.op-type[data-v-b75c6816]{font-weight:700}.admin-empty[data-v-b75c6816]{color:var(--muted);font-size:.875rem}:root{--bg: #F4F1EC;--surface: #ffffff;--text: #1A1614;--muted: #8A817C;--border: #E4DFD7;--accent: #6E7B4B;--accent-press: #4C5630;--accent-tint: #EBEDDF;--danger: #dc2626;--radius-sm: 0;--radius-md: 0;--radius-pill: 0;--radius-lg: 0;--shadow-sm: 3px 3px 0 var(--muted);--shadow-md: 4px 4px 0 var(--accent);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--touch-min: 44px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.5;min-height:100dvh;-webkit-font-smoothing:antialiased}ul,ol{list-style:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea{font-family:inherit;font-size:1rem}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}.page-shell{display:flex;flex-direction:column;min-height:100dvh}.content-column{width:100%;max-width:480px;margin-inline:auto;padding:0 16px}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:.875rem;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.08em}.input{width:100%;padding:12px 14px;border:2px solid var(--text);border-radius:0;background:var(--surface);color:var(--text);font-size:1rem;transition:border-color .15s,box-shadow .15s;outline:none;min-height:var(--touch-min)}.input:focus{border-color:var(--accent);box-shadow:3px 3px 0 var(--accent)}.input::placeholder{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--touch-min);padding:0 20px;border-radius:0;font-size:1rem;font-weight:700;transition:background .15s,opacity .15s,transform .1s;white-space:nowrap;cursor:pointer;border:2px solid var(--text)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);color:#fff;border-color:var(--text);box-shadow:3px 3px 0 var(--text)}.btn-primary:hover:not(:disabled){background:var(--accent-press)}.btn-primary:active:not(:disabled){background:var(--accent-press);box-shadow:1px 1px 0 var(--text);transform:translate(2px,2px)}.btn-secondary{background:var(--surface);color:var(--text);border:2px solid var(--text);box-shadow:3px 3px 0 var(--text)}.btn-secondary:hover:not(:disabled){background:var(--bg)}.btn-secondary:active:not(:disabled){box-shadow:1px 1px 0 var(--text);transform:translate(2px,2px)}.btn-ghost{background:transparent;color:var(--muted);padding:0 10px;border:none;box-shadow:none}.btn-ghost:hover{color:var(--text)}.card{background:var(--surface);border-radius:0;box-shadow:3px 3px 0 var(--text);border:2px solid var(--text)}.section-header{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:0 4px;margin-bottom:8px}.error-text{color:var(--danger);font-size:.875rem}
