:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#425ae5;--primary-dark:#3046c5;--primary-text:#2e4e93;--primary-muted:#6578af;--primary-surface:#edf1ff;--primary-surface-strong:#e7ebff;--text:#24314b;--text-secondary:#53617a;--muted:#74829a;--muted-strong:#68758b;--muted-light:#929eb1;--muted-faint:#b7c0d1;--border:#e1e7f1;--border-strong:#dce3ef;--divider:#edf0f6;--surface:#f5f7fb;--surface-raised:#fff;--on-primary:#fff;--neutral-surface:#edf0f5;--success:#27836b;--success-surface:#e8f3ee;--warning:#a96b16;--warning-surface:#fff3db;--danger:#b54747;--danger-strong:#ac3636;--danger-surface:#fff0f0;--placeholder:#9aa6ba;--focus-ring:#8796ff;--info-text:#596ba4;--info-surface:#f4f6ff;--shadow-subtle:#25324b03;--shadow-dialog:#17264b2b;--backdrop:#17244366;--font-body:.81rem;--font-caption:.685rem;--font-heading:.935rem;--font-title:clamp(1.35rem, 2.5vw, 1.5rem);--space-small:8px;--space-medium:16px;--space-large:24px;--space-section:32px;--radius-small:6px;--field-radius:8px;--card-radius:12px;background:var(--surface);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{font-size:var(--font-body);margin:0;line-height:1.75}button,input,select,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:var(--primary);text-decoration:none}button{cursor:pointer;color:inherit}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:var(--font-title);letter-spacing:.015em;line-height:1.5}h2{font-size:var(--font-heading);margin-bottom:24px;line-height:1.6}h3{font-size:var(--font-heading);line-height:1.6}small{font-size:var(--font-caption)}code{font-size:inherit}h1,h2,h3,strong{font-weight:600}.success-message{color:var(--success)}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
.site-header{background:var(--surface-raised);border-bottom:1px solid var(--divider)}.header-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1320px;min-height:82px;margin:auto;padding:16px 32px;display:flex}.brand{color:var(--text);letter-spacing:.08em;align-items:center;gap:12px;font-weight:700;display:flex}.brand small{letter-spacing:.16em;color:var(--muted);margin-top:3px;display:block}.brand-mark{border-radius:var(--card-radius);background:var(--primary);width:38px;height:38px;color:var(--on-primary);place-items:center;font-size:1.25rem;display:grid}.header-link{color:var(--muted)}.page-heading{margin-bottom:24px}.eyebrow{font-size:var(--font-caption);color:var(--primary);letter-spacing:.12em;margin-bottom:8px;font-weight:600}.eyebrow span{color:var(--muted-faint);padding:0 4px}.page-heading h1{margin-bottom:0}.screen-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.screen-heading .eyebrow{margin-bottom:4px}.screen-heading h1{color:var(--text);margin-bottom:0}.screen-heading-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;display:flex}@media (max-width:700px){.screen-heading{flex-direction:column;align-items:flex-start;gap:16px}}@media (max-width:600px){.header-inner{min-height:70px;padding:16px}}
.card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--card-radius);padding:var(--space-large);box-shadow:0 3px 14px var(--shadow-subtle);min-width:0}.field{min-width:0}.field label{align-items:center;gap:8px;margin-bottom:8px;font-weight:600;display:flex}.required{font-size:var(--font-caption);color:var(--muted);border-radius:var(--radius-small);background:var(--surface);padding:2px 4px;font-weight:500}.field input,.field select,.field textarea,.input-control{border:1px solid var(--border-strong);border-radius:var(--field-radius);background:var(--surface-raised);width:100%;min-height:44px;color:var(--text);padding:12px;transition:border-color .15s}.field input::placeholder,.field textarea::placeholder,.input-control::placeholder{color:var(--placeholder)}.field input:focus,.field select:focus,.field textarea:focus,.input-control:focus{border-color:var(--primary)}.field input:disabled,.field select:disabled,.field textarea:disabled,.input-control:disabled{background:var(--surface);color:var(--muted)}.field small{color:var(--muted);margin-top:8px;display:block}input[type=checkbox],input[type=radio]{accent-color:var(--primary);cursor:pointer;flex-shrink:0;width:18px;height:18px}.button{justify-content:center;align-items:center;gap:var(--space-small);padding:12px var(--space-large);border-radius:var(--field-radius);border:1px solid #0000;font-weight:600;line-height:1.5;transition:background .15s;display:inline-flex}.button--primary{color:var(--on-primary);background:var(--primary)}.button--primary:hover{background:var(--primary-dark)}.button--secondary{color:var(--text);border-color:var(--border);background:var(--surface-raised)}.button--secondary:hover{background:var(--surface)}.button--text{color:var(--primary);background:0 0;padding:8px;font-weight:500}.button--text:hover{color:var(--primary-dark);text-decoration:underline}.button:disabled{opacity:.45;cursor:not-allowed}.muted{color:var(--muted)}.notice{background:var(--info-surface);border-radius:var(--field-radius);color:var(--info-text);margin:16px 0 0;padding:12px 16px}.notice--error{background:var(--danger-surface);color:var(--danger-strong)}.success-mark{background:var(--success-surface);width:74px;height:74px;color:var(--success);border-radius:50%;place-items:center;margin:0 auto 16px;font-size:2.7rem;display:grid}fieldset{border:0;min-width:0;margin:0;padding:0}.field textarea{resize:vertical;min-height:120px;display:block}@media (max-width:600px){.card{padding:var(--space-medium)}.button{padding:12px 16px}}
.dialog{border:1px solid var(--border);border-radius:var(--card-radius);color:var(--text);background:var(--surface-raised);width:min(520px,100% - 32px);box-shadow:0 20px 80px var(--shadow-dialog);max-height:calc(100dvh - 40px);padding:24px;overflow-y:auto}.dialog::backdrop{background:var(--backdrop)}.dialog-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.dialog-header h2{margin:0}.dialog .notice{margin-top:0}.dialog-actions{justify-content:flex-end;gap:12px;display:flex}@media (max-width:600px){.dialog{padding:16px}.dialog-actions{flex-wrap:wrap}}
.section-heading{justify-content:space-between;align-items:center;gap:var(--space-medium);margin-bottom:var(--space-large);display:flex}.section-heading h2{margin:0}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;min-width:600px}.data-table th,.data-table td{padding:var(--space-medium) 12px;border-bottom:1px solid var(--divider)}.data-table thead{background:var(--surface)}.data-table thead th{color:var(--muted);font-size:var(--font-caption);white-space:nowrap;font-weight:500}.data-table tbody th{font-weight:500}.data-table small{color:var(--muted);margin-top:var(--space-small);font-weight:400;display:block}.badge{padding:4px var(--space-small);border-radius:var(--radius-small);font-size:var(--font-caption);white-space:nowrap;align-items:center;font-weight:600;display:inline-flex}.empty-state{padding:var(--space-large) var(--space-medium);border:1px dashed var(--border);border-radius:var(--field-radius);color:var(--muted);text-align:center;margin:0}
.section-tabs{gap:var(--space-small);margin-bottom:var(--space-large);border-bottom:1px solid var(--border);display:flex;overflow-x:auto}.section-tabs a,.section-tabs button{justify-content:center;align-items:center;gap:var(--space-small);padding:12px var(--space-medium);color:var(--muted);text-align:center;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;flex:1 0 auto;display:inline-flex}.section-tabs a:hover,.section-tabs button:hover{color:var(--primary)}.section-tabs .is-active{border-bottom-color:var(--primary);color:var(--primary);font-weight:600}.section-tabs span{font-variant-numeric:tabular-nums}@media (max-width:700px){.section-tabs a,.section-tabs button{padding-inline:var(--space-small)}}
