.overlay[data-v-89dfc0ea]{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0006;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;inset:0}.modal[data-v-89dfc0ea]{background:var(--card-gradient);border:1px solid var(--border);border-top:1px solid var(--border-light);border-radius:12px;flex-direction:column;gap:1rem;min-width:min(300px,100%);padding:1.5rem;display:flex;box-shadow:0 7px 15px #00000026,0 15px 30px #0000004d}.page[data-v-af9c40fc]{flex-direction:column;align-items:center;gap:2rem;max-width:min(100rem,100%);margin:0 auto;padding:1.5rem;display:flex}@media (width<=700px){.page[data-v-af9c40fc]{padding:0}.page-header[data-v-af9c40fc]{padding:1.5rem 1.5rem 0}}.page-header[data-v-af9c40fc]{justify-content:space-between;align-items:center;width:100%;display:flex}.page-header p[data-v-af9c40fc]{color:var(--muted);margin:0}.create-button[data-v-af9c40fc]{box-shadow:var(--highlight-m);border-radius:.375rem;padding:.75rem 1rem;font-size:1rem}.card[data-v-af9c40fc]{flex-direction:column;align-items:center;gap:2rem;width:100%;display:flex}.routes[data-v-af9c40fc]{flex-direction:column;gap:1.5rem;width:100%;padding:0;display:flex}.filtering[data-v-af9c40fc]{flex-direction:column;justify-content:center;gap:.5rem;width:100%;display:flex}.sorting[data-v-af9c40fc]{flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;display:flex}.filter-label[data-v-af9c40fc]{color:var(--muted);font-size:1rem}.search[data-v-af9c40fc]{flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;display:flex}@media (width<=500px){.search[data-v-af9c40fc]{flex-direction:column}.search>span[data-v-af9c40fc],.search-button[data-v-af9c40fc],.clear-button[data-v-af9c40fc]{width:100%}}.search>span[data-v-af9c40fc]{align-items:center;gap:.5rem;display:flex}.search-bar[data-v-af9c40fc],.search-input[data-v-af9c40fc]{width:100%}.search-button[data-v-af9c40fc],.clear-button[data-v-af9c40fc]{border-radius:.375rem;height:2.5rem}.route-list[data-v-af9c40fc]{width:100%;box-shadow:var(--shadow-s);border:1px solid var(--border);border-top:1px solid var(--border-light);border-radius:.75rem;overflow:auto hidden}table[data-v-af9c40fc]{border-collapse:collapse;background:var(--surface);width:100%}th[data-v-af9c40fc],td[data-v-af9c40fc]{border-bottom:1px solid var(--border);text-align:left;padding:.25rem .5em;line-height:1.5}th[data-v-af9c40fc]{background:var(--table-header);margin:0;padding:0;font-weight:700}th button[data-v-af9c40fc]{background:var(--table-header);width:100%;height:100%;box-shadow:none;white-space:nowrap;border:none;border-radius:0;justify-content:space-between;align-items:center;gap:1rem;padding:.25rem .5em;line-height:1.5;display:flex}th button[data-v-af9c40fc]:hover{background:var(--table-header-hover)}.img-warning[data-v-af9c40fc]{color:red}.direction-glyph[data-v-af9c40fc]{width:.75rem}img[data-v-af9c40fc]{width:100%}tbody tr:last-child td[data-v-af9c40fc]{border-bottom:none}tbody tr[data-v-af9c40fc]:hover{background:var(--table-hover);cursor:pointer}.edit-link[data-v-af9c40fc]{color:var(--text);font-weight:600;text-decoration:none}.edit-link[data-v-af9c40fc]:hover{color:var(--muted)}.page-footer[data-v-af9c40fc]{flex-direction:column;justify-content:space-between;align-items:center;gap:.5rem;display:flex}select[data-v-af9c40fc]{border-radius:.275rem}.page-selection[data-v-af9c40fc]{flex-direction:row;gap:.5rem;display:flex}.page-button[data-v-af9c40fc]{width:1.5rem;height:1.5rem}.frame[data-v-7ee2c439]{background:var(--card-bg);width:100%;min-height:300px;box-shadow:var(--recess-l);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex;overflow:hidden}.image-gallery[data-v-7ee2c439]{flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:flex}.gallery-controls[data-v-7ee2c439]{flex-direction:row;justify-content:center;align-items:center;gap:.5rem;display:flex}.gallery-arrow[data-v-7ee2c439]{width:1.5rem;height:1.5rem;font-size:1.25rem}.img-wrapper[data-v-7ee2c439]{width:100%;max-width:100%;height:max-content;max-height:70vh;box-shadow:var(--shadow-m);border-radius:6px;overflow:hidden}img[data-v-7ee2c439]{object-fit:contain;width:100%;display:block}.button-row[data-v-7ee2c439]{align-items:center;gap:1rem;display:flex}.file-input[data-v-7ee2c439]{display:none}.file-controls[data-v-7ee2c439]{justify-content:center;width:100%;display:flex}.no-no-files[data-v-7ee2c439]{min-height:0}.no-no-files>.file-controls[data-v-7ee2c439]{justify-content:flex-start}.table-wrapper[data-v-7ee2c439]{width:100%;box-shadow:var(--shadow-s);border:1px solid var(--border);border-top:1px solid var(--border-light);box-shadow:var(--shadow-m);border-radius:6px;overflow:auto hidden}table[data-v-7ee2c439]{border-collapse:collapse;background:var(--surface);width:100%}.table-header[data-v-7ee2c439]{border-bottom:1px solid var(--border);text-align:left;background-color:var(--table-header);padding:.5rem .75rem;font-weight:700}.table-row[data-v-7ee2c439]{justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.row-controls[data-v-7ee2c439]{gap:.8rem;display:flex}.expense-create[data-v-e89de2b6]{justify-content:flex-start;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.expense-create button[data-v-e89de2b6]{height:2rem}.expense-input[data-v-e89de2b6]{align-content:left;flex-direction:column;gap:.5rem;display:flex}.expense-input input[data-v-e89de2b6]{max-width:100%}.amount-wrapper[data-v-e89de2b6],.description-wrapper[data-v-e89de2b6]{align-items:center;gap:.5rem;display:flex}.char-count[data-v-e89de2b6]{width:3.5rem}@media (width<=700px){.expense-input input[data-v-e89de2b6]{width:70%}}.table-wrapper[data-v-e89de2b6]{border:1px solid var(--border);border-top:1px solid var(--border-light);width:100%;height:max-content;max-height:min(500px,45vh);box-shadow:var(--shadow-s);background-color:var(--surface);border-radius:10px;overflow:hidden auto}table[data-v-e89de2b6]{border-collapse:collapse;background:var(--surface);table-layout:fixed;width:100%}tbody tr[data-v-e89de2b6]{cursor:default}tbody tr:last-child td[data-v-e89de2b6]{border-bottom:none}thead[data-v-e89de2b6]{background-color:var(--table-header);font-weight:700}th[data-v-e89de2b6],td[data-v-e89de2b6]{border-bottom:1px solid var(--border);text-align:left;padding:.5rem .75rem}.amount[data-v-e89de2b6]{white-space:nowrap;width:100px}table th[data-v-e89de2b6]:last-child,table td[data-v-e89de2b6]:last-child{width:2.5rem}.delete-button[data-v-e89de2b6]{padding:.2rem .3em}.search-select[data-v-29551b58]{position:relative}input[data-v-29551b58]{width:100%}.dropdown[data-v-29551b58]{background-color:var(--surface);border:1px solid var(--border);z-index:1000;border-radius:6px;width:100%;max-height:250px;padding:.25rem;line-height:1.5;position:absolute;top:110%;overflow:hidden auto;box-shadow:0 0 4px 2px #0000001a}.option[data-v-29551b58]{cursor:pointer;border-radius:4px;padding:0 .75rem;font-weight:500}.create.create-margin[data-v-29551b58]{margin-top:.25rem}.option[data-v-29551b58]:hover,.highlighted[data-v-29551b58]{background-color:var(--primary);color:#fff}.toggle[data-v-2383bde5]{width:calc(1rem * var(--scale));height:calc(.5rem * var(--scale));display:inline-block;position:relative}.slider[data-v-2383bde5]{background:var(--card-bg);box-shadow:var(--recess-s);border-radius:999px;position:absolute;inset:0}.slider[data-v-2383bde5]:before{content:"";aspect-ratio:1;height:calc(.39rem * var(--scale));inset:calc(.055rem * var(--scale));background:var(--card-gradient);border-radius:50%;transition:transform .2s,background-color .15s;position:absolute;box-shadow:2px 2px 4px #0003,inset -2px -2px 4px #0006,inset 2px 2px 4px #ffffff12,inset 1px 1px #ffffff12}.checkbox[data-v-2383bde5]{opacity:0;width:0;height:0}.checkbox:checked+.slider[data-v-2383bde5]{background:color-mix(in oklab, var(--primary) 85%, var(--card-bg));box-shadow:var(--recess-s-nh)}.checkbox:checked+.slider[data-v-2383bde5]:before{transform:translateX(calc(.5rem * var(--scale)))}.checkbox:focus-visible+.slider[data-v-2383bde5]{outline:2px solid var(--primary);outline-offset:2px}.form[data-v-1ad89134]{grid-template-columns:repeat(2,max-content);align-items:center;gap:.5rem;display:grid}.buttons[data-v-1ad89134]{justify-content:space-between;align-items:center;display:flex}button[data-v-1ad89134]{padding:.5rem}.close-button[data-v-b7885635]{aspect-ratio:1;border-top:1px solid var(--border);border-radius:50%;width:2.5rem;margin:1rem;padding:0;position:fixed}.close-link[data-v-b7885635]{color:var(--text);justify-content:center;align-items:center;width:100%;height:100%;text-decoration:none;display:flex}.page[data-v-b7885635]{flex-direction:column;align-items:center;gap:1.5rem;padding:1.5rem 0;display:flex}.card[data-v-b7885635]{flex-direction:column;gap:1.5rem;width:min(1000px,100%);display:flex}@media (width>=2400px){.card[data-v-b7885635]{width:1200px}}@media (width>=3600px){.card[data-v-b7885635]{width:1500px}}.form-grid[data-v-b7885635]{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:.5rem;display:grid}.form-grid>div[data-v-b7885635]{flex-direction:column;justify-content:center;gap:.35rem;display:flex}.form-input[data-v-b7885635],.form-grid input[data-v-b7885635],.filtered-select[data-v-b7885635]{width:100%}#distance-input[data-v-b7885635]{width:calc(100% - 2rem)}.actions[data-v-b7885635]{gap:.5rem;display:flex}.buttons[data-v-1cb5a60c]{justify-content:space-between;align-items:center;display:flex}button[data-v-1cb5a60c]{padding:.5rem}.page[data-v-45a6f62b]{align-items:center;display:flex}.grid[data-v-45a6f62b]{grid-template-columns:repeat(auto-fit,min(100%,400px));justify-content:center;gap:3rem;padding-top:1.5rem;display:grid}p[data-v-45a6f62b]{margin:.5rem 1rem}.card[data-v-45a6f62b]{flex-direction:column;align-items:stretch;gap:1.5rem;width:min(31.25rem,100%);height:max-content;display:flex}.toolbar[data-v-45a6f62b]{flex-direction:column;gap:.5rem;display:flex}.buttons[data-v-45a6f62b]{justify-content:flex-start;gap:.8rem;width:100%;display:flex}.search-bar[data-v-45a6f62b]{align-items:center;gap:.5rem;display:flex}.checkbox-wrapper[data-v-45a6f62b]{align-items:center;gap:.5rem;width:max-content;height:2.5rem;display:flex}.table-wrapper[data-v-45a6f62b]{border:1px solid var(--border);border-top:1px solid var(--border-light);width:100%;height:max-content;max-height:min(41.25rem,45vh);box-shadow:var(--shadow-s);background-color:var(--surface);border-radius:.625rem;overflow:hidden auto}table[data-v-45a6f62b]{border-collapse:collapse;background:var(--surface);table-layout:fixed;width:100%}th[data-v-45a6f62b],td[data-v-45a6f62b]{border-bottom:1px solid var(--border);text-align:left;padding:.5rem .75rem}tbody tr[data-v-45a6f62b]:hover{background:var(--table-hover)}.selected[data-v-45a6f62b]:hover,.selected[data-v-45a6f62b]{background:var(--table-select)}.carrier-table th[data-v-45a6f62b]:last-child,.carrier-table td[data-v-45a6f62b]:last-child{width:5rem}tbody tr[data-v-45a6f62b]{cursor:default}tbody tr:last-child td[data-v-45a6f62b]{border-bottom:none}thead[data-v-45a6f62b]{background-color:var(--table-header);font-weight:700}.page[data-v-588cbc7b]{flex-direction:column;align-items:center;gap:3rem;padding:3rem;display:flex}.card[data-v-588cbc7b]{flex-direction:column;gap:1.5rem;width:25rem;display:flex}.tabs[data-v-588cbc7b]{background:var(--card-bg);box-shadow:var(--recess-m);border-radius:999px;justify-content:flex-start;align-self:center;align-items:center;gap:1.4rem;width:max-content;margin:0;padding:.5rem;list-style:none;display:flex;position:relative}.tab[data-v-588cbc7b]{z-index:999;color:var(--muted);box-shadow:none;background:0 0;border:none;padding:.7rem 1.4rem;transition:color .15s}.tab.active[data-v-588cbc7b],.tab[data-v-588cbc7b]:hover{color:var(--text)}.indicator[data-v-588cbc7b]{transform-origin:0;content:"";box-shadow:var(--tab-shadow);background:var(--card-gradient);border-radius:999px;transition:transform .3s,width .3s;position:absolute;inset:.5rem 0}.input-list[data-v-588cbc7b]{flex-direction:column;gap:.75rem;display:flex}.date-selection[data-v-588cbc7b]{border-left:3px solid var(--border);padding-left:.75rem}.field[data-v-588cbc7b]{flex-direction:column;gap:.35rem;display:flex}.field>input[data-v-588cbc7b]{width:100%}.field>select[data-v-588cbc7b]{height:2.5rem;box-shadow:var(--shadow-s);border-radius:.375rem;padding:0 .75rem;font-size:1rem}.generate-button[data-v-588cbc7b]{border-radius:.375rem;height:2.5rem;margin-top:.875rem}.page[data-v-596f5da2]{justify-content:center;padding-top:3rem;display:flex}.card[data-v-596f5da2]{flex-direction:column;gap:1.25rem;width:min(25rem,100%);font-size:1.125rem;display:flex}section[data-v-596f5da2]{flex-direction:column;gap:.5rem;display:flex}.statistic[data-v-596f5da2]{align-items:center;gap:.25rem;display:flex}.statistic>label[data-v-596f5da2]{font-size:1rem}.statistic>p[data-v-596f5da2]{font-size:1rem;font-weight:500}.table-wrapper[data-v-596f5da2]{border:1px solid var(--border);border-top:1px solid var(--border-light);width:100%;box-shadow:var(--shadow-s);background-color:var(--surface);border-radius:10px;overflow:hidden}table[data-v-596f5da2]{border-collapse:collapse;background:var(--surface);table-layout:fixed;width:100%}th[data-v-596f5da2],td[data-v-596f5da2]{border-bottom:1px solid var(--border);text-align:left;padding:.5rem .75rem}tbody tr:last-child td[data-v-596f5da2]{border-bottom:none}thead[data-v-596f5da2]{background-color:var(--table-header);font-weight:700}.error-msg[data-v-596f5da2]{color:var(--danger)}.page[data-v-954264cd]{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.card[data-v-954264cd]{flex-direction:column;gap:1rem;display:flex}form[data-v-954264cd]{flex-direction:column;gap:.5rem;display:flex}.form-input[data-v-954264cd]{flex-direction:column;gap:.25rem;display:flex}.password-toggle[data-v-954264cd]{align-items:center;gap:.25rem;display:flex}.password-toggle>input[data-v-954264cd]{height:auto}.primary-button[data-v-954264cd]{border-radius:.25rem;margin-top:.875rem}.primary-button[data-v-954264cd]:focus{outline:2px solid var(--primary);outline-offset:2px}p[data-v-954264cd]{color:var(--danger);width:max-content}.buttons[data-v-2485d0ff]{justify-content:flex-end;align-items:center;display:flex}button[data-v-2485d0ff]{padding:.5rem}.page[data-v-d46955f8]{flex-direction:column;align-items:center;padding-top:3rem;display:flex}.card[data-v-d46955f8]{flex-direction:column;gap:1.5rem;width:min(30rem,100%);display:flex}section[data-v-d46955f8]{flex-direction:column;gap:1rem;display:flex}.search[data-v-d46955f8]{align-items:center;gap:.5rem;display:flex}.actions[data-v-d46955f8]{gap:.5rem;display:flex}.actions button[data-v-d46955f8]{white-space:nowrap}.table-wrapper[data-v-d46955f8]{border:1px solid var(--border);border-top:1px solid var(--border-light);box-shadow:var(--shadow-s);background-color:var(--surface);border-radius:10px;max-height:24rem;overflow:hidden auto}table[data-v-d46955f8]{border-collapse:collapse;background:var(--surface);table-layout:auto;width:100%}thead[data-v-d46955f8],tr[data-v-d46955f8]{border-bottom:1px solid var(--border)}tr[data-v-d46955f8]:hover{background:var(--table-hover)}tr.selected[data-v-d46955f8],tr:hover.selected[data-v-d46955f8]{background:var(--table-select)}td[data-v-d46955f8],th[data-v-d46955f8]{text-align:left;padding:.5rem .75rem}tbody tr[data-v-d46955f8]:last-child{border-bottom:none}thead[data-v-d46955f8]{background-color:var(--table-header);font-weight:700}.role-column[data-v-d46955f8]{width:7.5rem}.page[data-v-973908da]{justify-content:center;padding-top:3rem;display:flex}.card[data-v-973908da]{flex-direction:column;gap:1.5rem;display:flex}.user-info[data-v-973908da]{flex-direction:column;gap:.5rem;display:flex}dl[data-v-973908da]{grid-template-columns:auto 1fr;gap:.5rem 1rem;margin:0;display:grid}dt[data-v-973908da]{color:var(--muted);font-weight:600}dd[data-v-973908da]{margin:0}.actions[data-v-973908da]{gap:.4rem;display:flex}.danger-button[data-v-973908da]{width:max-content}header[data-v-8e57d4bd]{z-index:1000;background:var(--surface);width:100%;box-shadow:var(--shadow-m);flex-direction:row-reverse;justify-content:space-between;gap:1rem;padding:0 .5rem;display:flex;position:sticky;top:0}header[data-v-8e57d4bd] *{white-space:nowrap}nav[data-v-8e57d4bd]{display:flex;overflow-x:auto}.nav-link[data-v-8e57d4bd]{color:var(--muted);padding:.5rem 1rem;text-decoration:none}.nav-link[data-v-8e57d4bd]:hover{background:var(--hover)}.active[data-v-8e57d4bd]{color:var(--text);box-shadow:inset 0 -3px var(--primary)}header button[data-v-8e57d4bd]{color:var(--muted);box-shadow:none;background:0 0;border:none;border-radius:0;padding:.5rem 1rem;font-size:1rem;font-weight:400}header button[data-v-8e57d4bd]:hover{background:var(--hover);color:var(--text)}.settings-menu[data-v-8e57d4bd]{position:relative}.dropdown[data-v-8e57d4bd]{background:var(--surface);border:1px solid var(--border);border-top:1px solid var(--border-light);min-width:10rem;box-shadow:var(--shadow-m);border-radius:8px;flex-direction:column;padding:.5rem;display:flex;position:absolute;top:calc(100% + .5rem);right:0}.user-display[data-v-8e57d4bd]{border-bottom:2px solid var(--border);margin-bottom:.5rem;padding:.25rem;font-size:1.125rem}:root{--surface:#fff;--card-bg:#eaecf0;--bg:#eaecf0;--hover:#e8eaee;--border:#c4c9d4;--border-light:#c4c9d4;--table-header:#f0f2f4;--table-header-hover:#f9fafb;--text:#0d0d0d;--muted:#666;--primary:#2466eb;--primary-hover:#1f5cd6;--primary-disabled:#5c8df0;--danger:#eb2424;--danger-hover:#d61f1f;--danger-disabled:#f05c5c;--table-hover:#f6f7f8;--table-select:#e9edf2;--card-gradient:linear-gradient(to top, #f0f2f4, #f9fafb);--background-gradient:linear-gradient(to bottom, #f0f2f4, #e8eaee);--shadow-m:0 2px 4px #0000000d, 0 4px 8px #0000001a;--shadow-s:0 2px 4px #0000000a, 0 4px 8px #00000014;--highlight-m:0 2px 4px #0000001a, 0 4px 8px #0003, inset 0 2px 4px #ffffff1a, inset 0 4px 8px #ffffff26;--highlight-s:0 2px 4px #00000014, 0 4px 8px #00000029, inset 0 2px 4px #ffffff1a, inset 0 4px 8px #ffffff26;--recess-s:inset 0 2px 4px #0003;--recess-s-nh:inset 0 2px 4px #00000059;--recess-m:inset 0 4px 8px #00000021;--recess-l:var(--recess-m);--tab-shadow:inset -4px -4px 8px #0000001a, 2px 2px 4px #00000013, 4px 4px 8px #00000026}:root[data-theme=dark]{--surface:#262626;--card-bg:#141414;--bg:#0d0d0d;--hover:#2e2e2e;--border:#383838;--border-light:#4d4d4d;--table-header:#1a1a1a;--table-header-hover:#212121;--table-hover:#2b2b2b;--table-select:#333;--text:#f2f2f2;--muted:#999;--primary:#165ce9;--primary-hover:#1d56c9;--primary-disabled:#447dee;--danger:#e91616;--danger-hover:#c91d1d;--danger-disabled:#e44;--card-gradient:linear-gradient(to top, #1a1a1a, #212121);--background-gradient:linear-gradient(to top, var(--bg), #141414);--shadow-m:0 2px 4px #0003, 0 4px 8px #0006, inset 0 2px 4px #ffffff05, inset 0 4px 8px #ffffff0a;--shadow-s:0 2px 4px #00000012, 0 4px 8px #00000026, inset 0 2px 4px #ffffff03, inset 0 4px 8px #ffffff05;--highlight-m:0 2px 4px #0000001a, 0 4px 8px #0003, inset 0 2px 4px #ffffff1a, inset 0 4px 8px #ffffff26;--highlight-s:0 2px 4px #00000014, 0 4px 8px #00000029, inset 0 2px 4px #ffffff1a, inset 0 4px 8px #ffffff26;--recess-s:inset 0 2px 4px #000000b3, 0 1px #ffffff0d;--recess-s-nh:inset 0 2px 4px #000000b3;--recess-m:inset 0 4px 8px #00000080, 0 1px #ffffff12;--recess-l:inset 0 3px 6px #0000004d, inset 0 5px 10px #00000080, 0 1px #ffffff1a;--tab-shadow:inset -4px -4px 8px #0006, inset 1px 1px #ffffff12, 2px 2px 4px #0006, 4px 4px 8px #000c, inset 2px 2px 4px #ffffff05, inset 4px 4px 8px #ffffff0a}*{-webkit-tap-highlight-color:transparent;box-sizing:border-box;transition:background-color .15s,border-color .15s,color .15s}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:16px}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (width>=2400px){html{font-size:18px}}@media (width>=3600px){html{font-size:20px}}body{color:var(--text);background-image:var(--background-gradient);background-attachment:fixed;font-family:Inter,system-ui,sans-serif;line-height:1.25}h1{font-size:2rem;font-weight:700}h2{font-size:1.5rem;font-weight:600}h1,h2,h3,h4,h5,h6,p{margin:0}table{font-size:.875rem}select{cursor:pointer;color:var(--text);background:var(--surface);box-shadow:var(--shadow-s);border:1px solid var(--border);border-top:1px solid var(--border-light);font-size:.875rem}input,textarea{border:1px solid var(--border);border-top:1px solid var(--border-light);height:2.5rem;box-shadow:var(--shadow-s);background:var(--surface);color:var(--text);border-radius:.375rem;padding:0 .75rem;font-size:1rem}input:focus,textarea:focus{border-color:var(--primary);outline:2px solid #2563eb33}input:disabled,textarea:disabled,select:disabled{color:var(--muted);background:color-mix(in oklab, var(--card-bg) 50%, var(--surface));border-color:var(--border);box-shadow:none;cursor:default;opacity:.8}button,.button{background:var(--surface);border:1px solid var(--border);border-top:1px solid var(--border-light);color:var(--text);cursor:pointer;box-shadow:var(--shadow-s);border-radius:.25rem;justify-content:center;align-items:center;padding:.4rem .8rem;font-size:.875rem;font-weight:600;display:flex}button:hover{background:var(--hover)}button:disabled{color:var(--muted);cursor:default;border-color:var(--hover);box-shadow:none}button:disabled:hover{color:var(--muted);background:var(--surface)}.primary-button{background-color:var(--primary);color:#fff;box-shadow:var(--highlight-s);border:none}.primary-button:hover{background-color:var(--primary-hover)}.primary-button:disabled,.primary-button:disabled:hover{background-color:var(--primary-disabled);color:#fff}.danger-button{background-color:var(--danger);color:#fff;border:none}.danger-button:hover{background-color:var(--danger-hover)}.danger-button:disabled,.danger-button:disabled:hover{color:#fff;background-color:var(--danger-disabled)}.primary-button,.danger-button{box-shadow:var(--highlight-s)}.primary-button:disabled,.danger-button:disabled{box-shadow:none}.error-heading{color:var(--danger);padding:1rem}html,body,#app{width:100%;height:100%;margin:0;padding:0}label{color:var(--muted);font-size:.875rem;font-weight:600}.card{background-image:var(--card-gradient);border:1px solid var(--border);border-top:1px solid var(--border-light);box-shadow:var(--shadow-m);border-radius:12px;padding:2rem}
