@charset "UTF-8";@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{color-scheme:light;--bg: oklch(1 0 0);--page: oklch(.985 .006 148);--page-glow: oklch(.965 .018 155);--surface: oklch(.972 .004 145);--surface-sunken: oklch(.955 .006 148);--border: oklch(.9 .008 145);--border-strong: oklch(.82 .01 145);--ink: oklch(.24 .02 155);--ink-soft: oklch(.42 .018 150);--ink-faint: oklch(.52 .014 150);--ink-on-primary: oklch(.99 .002 145);--primary: oklch(.48 .1 148);--primary-hover: oklch(.42 .1 148);--primary-tint: oklch(.95 .025 148);--primary-deep: oklch(.34 .08 152);--focus-ring: oklch(.6 .12 148 / .45);--ok: oklch(.52 .12 145);--ok-bg: oklch(.95 .035 145);--warn: oklch(.5 .11 75);--warn-bg: oklch(.96 .05 85);--danger: oklch(.5 .16 27);--danger-bg: oklch(.955 .025 27);--danger-hover: oklch(.44 .17 27);--info: oklch(.48 .1 250);--info-bg: oklch(.955 .02 250);--font-ui: "Plus Jakarta Sans", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: .9375rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.65rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius: 10px;--radius-sm: 7px;--radius-lg: 14px;--container: 1140px;--shadow-1: 0 1px 2px oklch(.24 .02 155 / .06), 0 1px 3px oklch(.24 .02 155 / .08);--elevation-1: 0 1px 2px oklch(.24 .02 155 / .05), 0 2px 8px -4px oklch(.24 .02 155 / .12);--elevation-2: 0 2px 4px oklch(.24 .02 155 / .06), 0 12px 32px -12px oklch(.24 .02 155 / .3);--footer-height: 2.5rem;--footer-inset: calc(var(--footer-height) + env(safe-area-inset-bottom, 0px));--z-sticky: 10;--z-footer: 20;--z-drawer: 30;--z-modal-backdrop: 40;--z-modal: 50;--z-toast: 60}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:var(--font-ui);font-size:var(--text-base);line-height:1.5;color:var(--ink);background:radial-gradient(120% 110% at 100% 0%,var(--page-glow) 0%,var(--page) 55%) fixed;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{text-wrap:balance;margin:0 0 var(--space-3);font-weight:700;letter-spacing:-.015em}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}a{color:var(--primary);text-underline-offset:.2em}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--space-5)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;inset-inline-start:var(--space-4);top:-100%;z-index:calc(var(--z-sticky) + 1);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:600;color:var(--ink-on-primary);background:var(--primary);border-radius:var(--radius-sm);text-decoration:none}.skip-link:focus{top:var(--space-3)}.figure{font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.page-sub{color:var(--ink-soft);max-width:68ch;margin:0 0 var(--space-5)}.hint{display:block;margin-top:var(--space-1);font-size:var(--text-xs);font-weight:400;color:var(--ink-faint)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:2.25rem;padding:.45rem .95rem;font:inherit;font-weight:600;font-size:var(--text-sm);color:var(--ink);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:background-color .16s ease-out,border-color .16s ease-out,color .16s ease-out,box-shadow .16s ease-out,transform .1s ease-out}.btn:hover:not(:disabled){background:var(--surface);border-color:var(--ink-faint)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{color:var(--ink-on-primary);background:linear-gradient(160deg,var(--primary),var(--primary-deep));border-color:var(--primary-deep);box-shadow:var(--shadow-1)}.btn-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn-danger{color:var(--danger);border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger)}.btn-solid-danger{color:var(--ink-on-primary);background:var(--danger);border-color:var(--danger)}.btn-solid-danger:hover:not(:disabled){background:var(--danger-hover);border-color:var(--danger-hover)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--surface);border-color:transparent}.btn-sm{min-height:1.9rem;padding:.25rem .6rem;font-size:var(--text-xs)}.row-actions{display:inline-flex;align-items:center;gap:var(--space-2)}.row-actions__delete{padding-inline-start:var(--space-2);border-inline-start:1px solid var(--border)}@media(max-width:640px){:root{--footer-height: 3.75rem}}@media(max-width:720px){.btn{min-height:2.75rem}.btn-sm{min-height:2.25rem}}input,select,textarea{font:inherit;color:var(--ink);width:100%;min-height:2.25rem;padding:.45rem .65rem;background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-sm);transition:border-color .16s ease-out,box-shadow .16s ease-out}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--ink-faint)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}input:disabled,select:disabled,textarea:disabled{background:var(--surface);color:var(--ink-faint);cursor:not-allowed}input[type=checkbox],input[type=radio]{accent-color:var(--primary);width:1.125rem;height:1.125rem;min-height:0}@media(max-width:720px){input,select,textarea{min-height:2.75rem;font-size:max(16px,var(--text-base))}}label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--ink-soft);margin-bottom:var(--space-1)}.field{margin-bottom:var(--space-4)}.secret-status,.secret-edit{display:flex;align-items:center;gap:var(--space-3)}.secret-edit input{flex:1}.field-error{display:block;margin-top:var(--space-1);font-size:var(--text-xs);font-weight:600;color:var(--danger)}.form-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:end}.form-row>.field{flex:1 1 11rem;min-width:10rem;margin:0}fieldset{margin:0;padding:0;border:0}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);box-shadow:var(--elevation-1)}table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}table th{text-align:start;font-weight:600;color:var(--ink-soft);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface);white-space:nowrap}table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);vertical-align:top}table tbody tr:last-child td{border-bottom:none}table tbody tr:hover{background:var(--surface)}.num{text-align:end;font-variant-numeric:tabular-nums}@media(max-width:720px){.table-stack{overflow-x:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.table-stack table,.table-stack tbody,.table-stack tr,.table-stack td{display:block;width:100%}.table-stack thead{display:none}.table-stack tbody tr{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--elevation-1)}.table-stack tbody tr:hover{background:var(--bg)}.table-stack td{display:grid;grid-template-columns:minmax(6.5rem,40%) 1fr;gap:var(--space-3);align-items:start;padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.table-stack td:last-child{border-bottom:none}.table-stack td:before{content:attr(data-label);font-size:var(--text-xs);font-weight:600;color:var(--ink-faint)}.table-stack td:not([data-label]){display:block}.table-stack .num{text-align:start}}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .55rem;border-radius:999px;font-size:var(--text-xs);font-weight:600;white-space:nowrap}.badge:before{content:"";width:.45rem;height:.45rem;border-radius:50%;background:currentColor;flex:none}.badge-ok{color:var(--ok);background:var(--ok-bg)}.badge-warn{color:var(--warn);background:var(--warn-bg)}.badge-danger{color:var(--danger);background:var(--danger-bg)}.badge-info{color:var(--info);background:var(--info-bg)}.badge-muted{color:var(--ink-faint);background:var(--surface)}.tone-warn{color:var(--warn);font-weight:700}.tone-danger{color:var(--danger);font-weight:700}.panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-5);box-shadow:var(--elevation-1)}.notice{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);border:1px solid var(--border);border-inline-start-width:3px;border-radius:var(--radius);padding:var(--space-4) var(--space-5);font-size:var(--text-sm)}.notice-danger{border-color:var(--danger);background:var(--danger-bg);color:var(--danger)}.notice-warn{border-color:var(--warn);background:var(--warn-bg);color:var(--warn)}.notice-ok{border-color:var(--ok);background:var(--ok-bg);color:var(--ok)}.notice-info{border-color:var(--info);background:var(--info-bg);color:var(--info)}.skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--surface-sunken) 37%,var(--surface) 63%);background-size:400% 100%;border-radius:var(--radius-sm);min-height:1rem;animation:skeleton-sheen 1.4s ease-in-out infinite}@keyframes skeleton-sheen{0%{background-position:100% 50%}to{background-position:0 50%}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
