:root{color-scheme:dark;--color-base-50: oklch(.985 0 0);--color-base-100: oklch(.97 0 0);--color-base-200: oklch(.922 0 0);--color-base-300: oklch(.87 0 0);--color-base-400: oklch(.708 0 0);--color-base-500: oklch(.556 0 0);--color-base-600: oklch(.439 0 0);--color-base-700: oklch(.371 0 0);--color-base-800: oklch(.269 0 0);--color-base-900: oklch(.205 0 0);--color-base-950: oklch(.145 0 0);--color-accent-50: oklch(94.4% .025 301.07);--color-accent-100: oklch(90.08% .045 301.16);--color-accent-200: oklch(79.89% .095 299.55);--color-accent-300: oklch(69% .147 297.95);--color-accent-400: oklch(59.34% .196 295.11);--color-accent-500: oklch(50.89% .233 290.96);--color-accent-600: oklch(44.26% .225 288.6);--color-accent-700: oklch(36.36% .181 289.01);--color-accent-800: oklch(27.39% .129 290.51);--color-accent-900: oklch(18.44% .075 292.49);--color-accent-950: oklch(13.92% .049 298.54);--color-ok: oklch(.72 .17 150);--color-warn: oklch(.8 .16 85);--color-danger: oklch(.68 .19 25);--bg: var(--color-base-950);--bg-raised: var(--color-base-900);--bg-input: var(--color-base-900);--text: var(--color-base-100);--text-muted: var(--color-base-400);--border: var(--color-base-800);--border-strong: var(--color-base-700);--link: var(--color-accent-300);--primary: var(--color-accent-500);--primary-hover: var(--color-accent-400);--text-on-primary: var(--color-base-50);--focus-ring: var(--color-accent-400);--bg-inset: var(--color-base-800);--bg-inverse: var(--color-base-100);--text-inverse: var(--color-base-950);--text-faint: var(--color-base-600);--surface-danger: var(--color-danger);--text-on-danger: var(--color-base-50);--surface-ok: var(--color-ok);--text-on-ok: var(--color-base-50);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--font-sans: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Noto Sans JP", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace}@media(prefers-color-scheme:light){:root{color-scheme:light;--bg: var(--color-base-50);--bg-raised: var(--color-base-100);--bg-input: var(--color-base-100);--text: var(--color-base-900);--text-muted: var(--color-base-600);--border: var(--color-base-200);--border-strong: var(--color-base-300);--link: var(--color-accent-600);--primary: #d9c6dd;--primary-hover: #cdb4d3;--text-on-primary: var(--color-base-950);--focus-ring: var(--color-accent-500);--bg-inset: var(--color-base-200);--bg-inverse: var(--color-base-900);--text-inverse: var(--color-base-50);--text-faint: var(--color-base-400);--color-ok: oklch(.55 .15 150);--color-warn: oklch(.6 .14 85);--color-danger: oklch(.55 .19 25);--surface-danger: color-mix(in oklab, oklch(.68 .19 25) 30%, var(--color-base-50));--text-on-danger: var(--color-base-950);--surface-ok: color-mix(in oklab, oklch(.72 .17 150) 30%, var(--color-base-50));--text-on-ok: var(--color-base-950)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.7}main{max-width:760px;margin:0 auto;padding:var(--space-6) var(--space-4) 80px}header.site{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-5)}header.site .brand{font-weight:700;font-size:1.1rem;color:var(--text);text-decoration:none;letter-spacing:.02em}h1{font-size:1.3rem;margin-bottom:var(--space-3);font-weight:700}h2{font-size:1.05rem;margin:var(--space-5) 0 var(--space-2);font-weight:700}a{color:var(--link)}section.card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4) 18px;margin-bottom:var(--space-4)}section.card>h2:first-child{margin-top:0}label{display:block;font-size:.85rem;font-weight:600;margin:10px 0 4px}input[type=text],input[type=url],input[type=email],textarea,select{width:100%;padding:var(--space-2) 10px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font:inherit;background:var(--bg-input);color:var(--text)}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}textarea{min-height:120px;font-family:var(--font-mono);font-size:.85rem}.note{color:var(--text-muted);font-size:.85rem}.error{color:var(--color-danger);font-size:.9rem}.muted{opacity:.7;font-size:.85rem}.message{color:var(--color-ok)}button{padding:var(--space-2) 18px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:transparent;color:var(--text);cursor:pointer;font:inherit}button:hover{border-color:var(--color-base-500)}button.primary{background:var(--primary);border-color:var(--primary);color:var(--text-on-primary)}button.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}button.ghost{background:transparent;color:var(--text-muted)}button.danger{background:transparent;color:var(--color-danger);border-color:color-mix(in oklab,var(--color-danger) 50%,transparent)}button:disabled{background:var(--bg-inset);color:var(--text-faint);border-color:var(--bg-inset);cursor:not-allowed}.notice{border-radius:var(--radius-md);padding:10px 14px;margin-bottom:var(--space-4);font-size:.9rem;border:1px solid transparent}.notice.ok{background:color-mix(in oklab,var(--color-ok) 12%,transparent);border-color:color-mix(in oklab,var(--color-ok) 35%,transparent)}.notice.error{background:color-mix(in oklab,var(--color-danger) 12%,transparent);border-color:color-mix(in oklab,var(--color-danger) 35%,transparent)}.toast{position:fixed;top:var(--space-4);left:50%;transform:translate(-50%);background:var(--bg-inverse);color:var(--text-inverse);border-radius:var(--radius-md);padding:10px 18px;font-size:.9rem;box-shadow:0 4px 24px #00000080;z-index:100;max-width:90%;transition:opacity .4s}.toast.toast-error{background:var(--surface-danger);color:var(--text-on-danger)}.toast.hide{opacity:0}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}th{color:var(--text-muted);font-weight:600;font-size:.8rem}code{font-family:var(--font-mono);font-size:.85rem}code.block{display:block;padding:10px 12px;border-radius:var(--radius-md);background:var(--bg-inset);overflow-x:auto;white-space:pre-wrap;word-break:break-all}dl.meta dt{color:var(--text-muted);font-size:.85rem;font-weight:600}dl.meta dd{margin:0}dl.meta div{display:flex;gap:var(--space-4);padding:4px 0}dl.meta div dt{min-width:var(--meta-dt-min, 8em);font-weight:400}dl.meta>dt{margin-top:var(--space-2)}dl.meta>dt:first-child{margin-top:0}.steps{display:flex;flex-wrap:wrap;gap:4px 12px;list-style:none;font-size:.72rem;color:var(--text-faint);margin-bottom:var(--space-2)}.steps .now{color:var(--text);font-weight:700}.steps .past{color:var(--color-ok)}.gauge{height:8px;border-radius:999px;background:var(--bg-inset);overflow:hidden}.gauge>span{display:block;height:100%;border-radius:999px}.gauge.normal>span{background:var(--color-accent-400)}.gauge.warning>span{background:var(--color-warn)}.gauge.danger>span{background:var(--color-danger)}.busy-submit-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-3)}.busy-submit-row .busy-cancel{padding:12px 32px;text-decoration:none;display:inline-block}.busy-spinner{width:12px;height:12px;border-radius:50%;border:2px solid color-mix(in oklab,currentColor 35%,transparent);border-top-color:currentColor;display:none;margin-right:8px;vertical-align:-2px;animation:admin-ui-spin .8s linear infinite}.busy-note{display:none;font-size:.8rem;color:var(--text-muted)}form[data-submitting="1"] .busy-spinner,form[data-submitting="1"] .busy-note{display:inline-block}form[data-submitting="1"] .busy-cancel{display:none}form[data-submitting="1"] button[type=submit]{cursor:wait;opacity:.85}form[data-submitting="1"] [data-busy-disabled]{pointer-events:none;opacity:.55}@keyframes admin-ui-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.busy-spinner{animation:none}}dialog{background:var(--bg-raised);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:var(--space-5);max-width:420px}dialog::backdrop{background:#0009}
