@charset "UTF-8";:root{--bg: #f5f7f9;--surface: #ffffff;--surface-sunken: #eceff3;--border: #e1e6eb;--border-strong: #c1c9d3;--text: #10161d;--text-muted: #4e5b6b;--text-faint: #788697;--accent: #1363be;--accent-hover: #0d4b93;--accent-soft: #ebf2f9;--accent-text: #ffffff;--hero: #b61797;--hero-soft: #f9ebf7;--ok: #0f7a43;--ok-soft: #e4f4ea;--waiting: #8a5a05;--waiting-soft: #fdf2dd;--danger: #b3261e;--danger-soft: #fdeceb}@media(prefers-color-scheme:dark){:root{--bg: #0c0f12;--surface: #171b20;--surface-sunken: #101418;--border: #252c35;--border-strong: #3d4753;--text: #e5eaef;--text-muted: #98a4b1;--text-faint: #6c7989;--accent: #6aabf4;--accent-hover: #95c3f7;--accent-soft: #192738;--accent-text: #0c0f12;--hero: #f27ddb;--hero-soft: #3a1934;--ok: #4cc184;--ok-soft: #0e2a1b;--waiting: #d8a44e;--waiting-soft: #2b2113;--danger: #f0837c;--danger-soft: #2e1614}}:root{color-scheme:light dark;--radius: 10px;--radius-sm: 6px;--radius-lg: 16px;--radius-pill: 999px;--gap-page: 24px;--gap-section: 16px;--gap-block: 12px;--gap-tight: 8px;--gap-hair: 4px;--shadow-sm: 0 1px 2px rgb(15 22 32 / 5%), 0 1px 3px rgb(15 22 32 / 4%);--shadow-md: 0 2px 4px rgb(15 22 32 / 5%), 0 8px 20px rgb(15 22 32 / 7%);--shadow-lg: 0 12px 34px rgb(15 22 32 / 12%), 0 4px 10px rgb(15 22 32 / 6%);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, "SF Mono", "JetBrains Mono", "Cascadia Code", Menlo, Consolas, monospace;--text-display: 2.5rem;--text-title: 1.3125rem;--text-lead: 1.0625rem;--text-body: .9375rem;--text-small: .8125rem;--weight-body: 400;--weight-strong: 600;--ease: cubic-bezier(.32, .72, 0, 1);--fast: .13s;--slow: .24s}@media(prefers-color-scheme:dark){:root{--shadow-sm: 0 1px 2px rgb(0 0 0 / 40%);--shadow-md: 0 2px 4px rgb(0 0 0 / 40%), 0 8px 20px rgb(0 0 0 / 34%);--shadow-lg: 0 12px 34px rgb(0 0 0 / 50%)}}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--text-body);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}a.btn-quiet{display:inline-flex;align-items:center;min-height:44px}.pw{position:relative}.pw input{padding-right:4.5rem}.stack{display:flex;flex-direction:column;gap:var(--gap-section)}.stack-tight{display:flex;flex-direction:column;gap:var(--gap-block)}.row{display:flex;align-items:center;gap:var(--gap-tight)}.mono{font-family:var(--mono);font-variant-ligatures:none}.muted{color:var(--text-muted)}.small{font-size:var(--text-small)}.grow{flex:1;min-width:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--gap-page);box-shadow:var(--shadow-sm)}h1{font-size:var(--text-title);font-weight:var(--weight-strong);margin:0;letter-spacing:-.015em}.brand{display:inline-flex;align-items:center;gap:var(--gap-tight);font-weight:var(--weight-strong);font-size:var(--text-lead);letter-spacing:-.03em;color:var(--text)}.brand svg{flex:none;color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--gap-tight);min-height:44px;padding:0 18px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;font-weight:var(--weight-strong);cursor:pointer;transition:background var(--fast) var(--ease),border-color var(--fast) var(--ease),transform var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}.btn:hover:not(:disabled){background:var(--surface-sunken)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:var(--shadow-md)}.btn-danger{border-color:var(--border-strong);color:var(--text-muted)}.btn-danger:hover:not(:disabled),.btn-danger:focus-visible{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.btn-quiet{border:none;background:none;color:var(--accent);min-height:44px;padding:0 6px;font:inherit;font-weight:var(--weight-strong);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;border-radius:var(--radius-sm);transition:color var(--fast) var(--ease)}.btn-quiet:hover{color:var(--accent-hover)}.btn-block{width:100%}label{display:block;font-size:var(--text-small);font-weight:var(--weight-strong);color:var(--text-muted);margin-bottom:6px}input[type=text],input[type=password],input[type=email]{width:100%;min-height:46px;padding:0 13px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;transition:border-color var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}input[type=text]:hover:not(:disabled),input[type=password]:hover:not(:disabled),input[type=email]:hover:not(:disabled){border-color:var(--text-faint)}input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}input:disabled{background:var(--surface-sunken);color:var(--text-muted)}.notice{display:flex;align-items:flex-start;gap:var(--gap-tight);padding:var(--gap-block) 14px;border-radius:var(--radius);font-size:var(--text-small)}.notice svg,.notice .spinner{flex:none;margin-top:1px}.notice-error{background:var(--danger-soft);color:var(--danger)}.notice-ok{background:var(--ok-soft);color:var(--ok)}.notice-waiting{background:var(--waiting-soft);color:var(--waiting)}.tag{display:inline-flex;align-items:center;gap:var(--gap-hair);padding:2px 9px;border-radius:var(--radius-pill);font-size:var(--text-small);font-weight:var(--weight-strong);white-space:nowrap}.tag svg{flex:none}.tag-ok{background:var(--ok-soft);color:var(--ok)}.tag-waiting{background:var(--waiting-soft);color:var(--waiting)}.tag-accent{background:var(--accent-soft);color:var(--accent)}select{min-height:40px;padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-size:var(--text-small);cursor:pointer;transition:border-color var(--fast) var(--ease)}select:hover:not(:disabled){border-color:var(--text-faint)}select:disabled{background-color:var(--surface-sunken);color:var(--text-muted);cursor:not-allowed}table{width:100%;border-collapse:collapse;font-size:var(--text-small)}thead th{text-align:left;padding:0 10px 8px;font-size:var(--text-small);font-weight:var(--weight-strong);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}tbody th,tbody td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--border);vertical-align:middle}tbody th{font-weight:var(--weight-strong);color:var(--text)}tbody tr:last-child th,tbody tr:last-child td{border-bottom:none}tbody tr{transition:background var(--fast) var(--ease)}tbody tr:hover{background:var(--surface-sunken)}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--gap-hair)}fieldset label{display:flex;align-items:baseline;gap:var(--gap-tight);margin:0;min-height:44px;padding:11px 10px;border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-body);font-weight:var(--weight-body);cursor:pointer;transition:background var(--fast) var(--ease)}fieldset label:hover{background:var(--surface-sunken)}fieldset input[type=radio]{margin:0;accent-color:var(--accent)}.choice-name{font-weight:var(--weight-strong)}.choice-what{color:var(--text-muted);font-size:var(--text-small)}.breadcrumb a,nav[aria-label=Breadcrumb] a{display:inline-flex;align-items:center;gap:var(--gap-hair);color:var(--text-muted);font-size:var(--text-small);text-decoration:none;min-height:44px}.breadcrumb a:hover,nav[aria-label=Breadcrumb] a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes step-in{0%{opacity:0;transform:translateY(6px)}}.step-in{animation:step-in var(--slow) var(--ease) both}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
