.ic{flex:none;width:20px;height:20px;display:inline-block}.ic svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;display:block}.btn:focus-visible,.input:focus-visible,.select:focus-visible,.menu-item:focus-visible,.dialog-panel:focus-visible{box-shadow:var(--ring);outline:none}.btn{min-height:var(--touch);justify-content:center;align-items:center;gap:var(--s2);font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2);white-space:nowrap;cursor:pointer;border-radius:var(--r-sm);transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur), transform 60ms var(--ease), box-shadow var(--dur);background:0 0;border:1px solid #0000;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{color:var(--on-primary);background:var(--primary);box-shadow:0 1px 2px color-mix(in oklab, var(--primary) 30%, transparent)}.btn-primary:hover{background:var(--primary-strong)}.btn-accent{color:var(--on-accent);background:var(--accent)}.btn-accent:hover{background:var(--accent-strong)}.btn-ghost:hover,.btn-secondary:hover{background:var(--surface-2)}.btn-secondary{color:var(--ink);background:var(--surface);border-color:var(--line-strong)}.btn-danger{color:var(--c-bad);border-color:color-mix(in oklab, var(--c-bad) 38%, transparent)}.btn-danger:hover{background:var(--c-bad-soft)}.btn-sm{min-height:36px;font-size:var(--fs-xs);border-radius:var(--r-xs);padding:6px 12px}.btn-lg{min-height:56px;font-size:var(--fs-lg);border-radius:var(--r-md);padding:14px 22px}.btn-block{width:100%}.btn[disabled]{pointer-events:none;opacity:.45}.btn-row{gap:var(--s3);flex-wrap:wrap;align-items:center;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field label,.field .field-label{font-size:var(--fs-xs);color:var(--ink-soft);font-weight:600}.form-stack{gap:var(--s4);flex-direction:column;display:flex}.input,.select{width:100%;min-height:var(--touch);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);transition:border-color var(--dur), box-shadow var(--dur);padding:12px 14px}.textarea{resize:vertical;min-height:88px;font-family:inherit}.input-with-icon{align-items:center;gap:var(--s3);min-height:52px;padding:0 var(--s3);color:var(--ink-faint);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);transition:border-color var(--dur), box-shadow var(--dur);display:flex}.input-with-icon .input{min-height:50px;color:var(--ink);background:0 0;border:0;border-radius:0;padding:0}.input-with-icon .input:focus{box-shadow:none}.input-with-icon:focus-within{border-color:var(--primary);box-shadow:var(--ring)}.input-icon-button{width:36px;height:36px;color:var(--ink-faint);cursor:pointer;border-radius:var(--r-xs);background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.input-icon-button:hover{color:var(--ink)}.input-icon-button:focus-visible{box-shadow:var(--ring);outline:none}.input::placeholder{color:var(--ink-faint)}.input:focus,.select:focus{border-color:var(--primary)}.codeinput{max-width:360px;position:relative}.codeinput-slots{grid-template-columns:repeat(var(--codeinput-length,6), 1fr);gap:var(--s2);display:grid}.codeinput-slot{aspect-ratio:1;min-height:var(--touch);font-family:var(--font-mono);font-size:var(--fs-h3);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);transition:border-color var(--dur), box-shadow var(--dur);place-items:center;font-weight:600;display:grid}.codeinput--invalid .codeinput-slot{border-color:var(--c-bad)}.codeinput--focused .codeinput-slot.codeinput-slot--active{border-color:var(--primary)}.codeinput-native:focus-visible~.codeinput-slots .codeinput-slot--active{box-shadow:var(--ring)}.codeinput--disabled .codeinput-slot{color:var(--ink-faint);background:var(--surface-2)}.codeinput-native{z-index:1;color:#0000;-webkit-text-fill-color:transparent;letter-spacing:-.5em;caret-color:#0000;cursor:text;width:100%;height:100%;box-shadow:none;background:0 0;border:0;outline:none;margin:0;padding:0;font-size:16px;position:absolute;inset:0}.codeinput-description{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.codeinput-native::selection{background:0 0}:-webkit-any(.codeinput-native:-webkit-autofill,.codeinput-native:autofill){transition:background-color 600000s;-webkit-box-shadow:inset 0 0 0 1000px #0000}:is(.codeinput-native:autofill,.codeinput-native:autofill){transition:background-color 600000s;-webkit-box-shadow:inset 0 0 0 1000px #0000}.codeinput-native:disabled{cursor:not-allowed}.form-error{font-size:var(--fs-xs);color:var(--c-bad)}.field-hint{font-size:var(--fs-xs);color:var(--ink-soft)}.card,.surface{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.surface{background:var(--raised);box-shadow:var(--shadow-sm)}.card{display:flow-root}.card:has(.searchselect-popup){overflow:visible}.card-pad{padding:var(--s5)}.card-head{justify-content:space-between;align-items:center;gap:var(--s3);border-bottom:1px solid var(--line);padding:16px 18px;display:flex}.card-head h3{font-family:var(--font-sans);font-size:var(--fs-lg);font-weight:650}.card-head .sub{font-size:var(--fs-sm);color:var(--ink-soft)}.tbl-scroll{contain:inline-size;position:relative;overflow-x:auto}.tbl{width:100%;font-size:var(--fs-sm);border-collapse:collapse}.tbl th{font-family:var(--font-mono);color:var(--ink-faint);text-align:left;text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2);border-bottom:1px solid var(--line);padding:11px 14px;font-size:11px;font-weight:500}.tbl td{vertical-align:middle;border-bottom:1px solid var(--line);padding:13px 14px}.tbl tr:last-child td{border-bottom:none}.tabs{gap:var(--s1);box-shadow:inset 0 -1px 0 var(--line);display:flex;overflow:auto hidden}.tab{min-height:40px;font-size:var(--fs-sm);color:var(--ink-soft);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:10px 14px;font-weight:600;text-decoration:none}.tab:hover{color:var(--ink)}.tab.active{color:var(--ink);border-bottom-color:var(--primary)}.chip,.badge{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.chip{font-size:var(--fs-xs);color:var(--ink-soft);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:7px 11px;font-weight:500;line-height:1}.chip .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.chip-ok{color:var(--c-ok);background:var(--c-ok-soft);border-color:#0000}.chip-warn{color:var(--c-warn);background:var(--c-warn-soft);border-color:#0000}.chip-bad{color:var(--c-bad);background:var(--c-bad-soft);border-color:#0000}.progress-meter{width:100%}.progress-meter-track{background:var(--surface-2);border-radius:var(--r-pill);width:100%;height:8px;display:block;overflow:hidden}.progress-meter-value{background:var(--c-ok);border-radius:inherit;height:100%;display:block}.progress-meter-warn .progress-meter-value{background:var(--c-warn)}.progress-meter-bad .progress-meter-value{background:var(--c-bad)}.chip-info{color:var(--c-info);background:var(--c-info-soft);border-color:#0000}.chip-accent{color:var(--primary-strong);background:var(--primary-soft);border-color:var(--primary-line);padding:5px 10px;font-weight:600}.badge{font-family:var(--font-mono);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-xs);padding:4px 7px;font-size:10px;font-weight:600}.avatar{width:38px;height:38px;font-size:var(--fs-sm);color:var(--primary-strong);background:var(--primary-soft);border:1px solid var(--primary-line);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.avatar-xs{width:26px;height:26px;font-size:10px}.avatar-sm{width:34px;height:34px;font-size:var(--fs-xs)}.avatar-lg{width:56px;height:56px;font-size:var(--fs-h2)}.countbadge{min-width:20px;height:20px;font-size:var(--fs-xs);color:var(--on-primary);background:var(--primary);border-radius:var(--r-pill);place-items:center;padding:0 6px;font-weight:700;line-height:1;display:inline-grid}.dialog-backdrop{z-index:30;background:color-mix(in oklab, var(--ink-900) 38%, transparent);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);justify-content:flex-end;display:flex;position:fixed;inset:0}.dialog-panel{background:var(--canvas);border-left:1px solid var(--line);width:min(520px,100vw);height:100%;box-shadow:var(--shadow-lg);grid-template-rows:auto 1fr auto;display:grid}.dialog-head,.dialog-foot{align-items:center;gap:var(--s3);padding:18px 22px;display:flex}.dialog-head{border-bottom:1px solid var(--line)}.dialog-foot{background:var(--surface);border-top:1px solid var(--line);justify-content:flex-end}.dialog-body{gap:var(--s4);flex-direction:column;min-height:0;padding:20px 22px;display:flex;overflow:auto}.menu{display:inline-block;position:relative}.menu-list{z-index:20;min-width:220px;padding:var(--s2);margin-top:var(--s2);background:var(--raised);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--shadow-md);position:absolute;right:0}.menu-item{width:100%;min-height:40px;padding:0 var(--s3);color:var(--ink);text-align:left;cursor:pointer;border-radius:var(--r-xs);background:0 0;border:0;align-items:center;display:flex}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-2)}.menu-item:disabled{color:var(--ink-faint);cursor:not-allowed}.menu-item--danger{color:var(--c-bad)}.toast{padding:var(--s3) var(--s4);color:var(--ink);background:var(--raised);border:1px solid var(--line);border-left:4px solid var(--primary);border-radius:var(--r-sm);box-shadow:var(--shadow-md)}.toast-host{right:var(--s5);bottom:var(--s5);z-index:40;gap:var(--s2);max-width:min(420px, calc(100vw - 2 * var(--s5)));pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast-host>.toast{pointer-events:auto}.empty,.error-state,.loading{min-height:220px;padding:var(--s7);color:var(--ink-soft);text-align:center;background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--r-lg);place-items:center;display:grid}.toolbar{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.ax-search,.fbtn{align-items:center;gap:var(--s2);min-height:40px;padding:0 var(--s3);color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);display:inline-flex}.ax-search{min-width:min(320px,100%)}.ax-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.fbtn{cursor:pointer}.fbtn:hover{background:var(--surface-2)}.fbtn-pressed,.fbtn-pressed:hover{color:var(--primary-strong);background:var(--primary-soft);border-color:var(--primary-line)}.filter-count{min-width:20px;font-family:var(--font-mono);color:var(--primary-strong);text-align:center;background:var(--primary-soft);border-radius:var(--r-pill);padding:3px 6px;font-size:10px}@media (width<=900px){.toolbar{align-items:stretch}.ax-search{flex:100%}.fbtn{flex:auto}}.fileinput{align-items:center;gap:var(--s3);flex-wrap:wrap;display:flex}.fileinput-native{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fileinput-native:focus-visible+.fileinput-trigger{border-color:var(--primary);box-shadow:var(--ring)}.fileinput-name{font-size:var(--fs-sm);color:var(--ink-soft);overflow-wrap:anywhere}.toggle{cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:inline-flex}.toggle:disabled{cursor:not-allowed;opacity:.55}.toggle[aria-readonly=true]{cursor:default}.toggle:focus-visible{outline:none}.toggle:focus-visible .toggle-track{box-shadow:var(--ring)}.toggle-track{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-pill);align-items:center;width:40px;height:22px;padding:2px;transition:background .15s,border-color .15s;display:inline-flex;position:relative}.toggle--on .toggle-track{background:var(--primary);border-color:var(--primary)}.toggle-thumb{background:var(--surface);border-radius:50%;width:16px;height:16px;transition:transform .15s;transform:translate(0);box-shadow:0 1px 2px #00000040}.toggle--on .toggle-thumb{transform:translate(18px)}.checkbox-field{gap:var(--s1);display:grid}.checkbox{align-items:flex-start;gap:var(--s2);font-size:var(--fs-sm);color:var(--ink-soft);cursor:pointer;line-height:1.45;display:flex}.checkbox-input{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex:none;margin:1px 0 0}.checkbox-input:focus-visible{box-shadow:var(--ring);outline:none}.checkbox-input:disabled,.checkbox-input:disabled+.checkbox-label{cursor:not-allowed;opacity:.55}.searchselect{width:100%;position:relative}.searchselect-control{align-items:center;display:flex;position:relative}.searchselect-input{width:100%;min-height:var(--touch);color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);transition:border-color var(--dur), box-shadow var(--dur);padding:12px 40px 12px 14px}.searchselect-input::placeholder{color:var(--ink-faint)}.searchselect-input:focus{border-color:var(--primary)}.searchselect-input:focus-visible{box-shadow:var(--ring);outline:none}.searchselect-input:disabled{pointer-events:none;opacity:.45}.searchselect--bare .searchselect-input{background:0 0;border:0;min-height:0;padding:0}.searchselect--bare .searchselect-input:focus-visible{box-shadow:none}.searchselect-caret{color:var(--ink-faint);pointer-events:none;transition:transform var(--dur) var(--ease);position:absolute;right:12px}.searchselect--open .searchselect-caret{transform:rotate(180deg)}.searchselect-popup{top:calc(100% + var(--s2));z-index:20;background:var(--raised);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--shadow-md);position:absolute;left:0;right:0;overflow:hidden}.searchselect-list{max-height:280px;padding:var(--s2);overflow-y:auto}.searchselect-option{min-height:40px;padding:0 var(--s3);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:var(--r-xs);align-items:center;display:flex;overflow:hidden}.searchselect-option.is-active{background:var(--surface-2)}.searchselect-option.is-selected{color:var(--primary-strong);font-weight:600}.searchselect-empty{padding:var(--s3);font-size:var(--fs-sm);color:var(--ink-soft);text-align:center}.tree,.tree-group{margin:0;padding:0;list-style:none}.tree-row{gap:var(--s2);min-height:36px;padding-block:var(--s1);color:var(--ink);cursor:pointer;border-radius:var(--r-xs);align-items:center;padding-inline-end:var(--s3);display:flex}.tree-row:hover{background:var(--surface-2)}.tree-row:focus-visible{box-shadow:var(--ring);outline:none}.tree-row.is-selected{color:var(--primary-strong);background:var(--primary-soft);font-weight:600}.tree-twisty{width:20px;height:20px;color:var(--ink-soft);transition:transform var(--dur) var(--ease);flex:none;justify-content:center;align-items:center;display:inline-flex}.tree-twisty.is-expanded{transform:rotate(90deg)}.tree-twisty.is-leaf{cursor:default}.tree-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.tree-meta{font-size:var(--fs-xs);color:var(--ink-soft);flex:none}.stat-tile{height:100%;padding:var(--s4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.stat-tile-label{align-items:center;gap:var(--s2);font-size:var(--fs-xs);color:var(--ink-soft);display:flex}.stat-tile-label .ic{width:16px;height:16px;color:var(--ink-faint)}.stat-tile-value{margin-top:var(--s2);font-family:var(--font-mono);font-feature-settings:"tnum" 1;letter-spacing:-.02em;color:var(--ink);font-size:30px;font-weight:700;line-height:1}.stat-tile--warn .stat-tile-value{color:var(--c-warn)}.stat-tile--bad .stat-tile-value{color:var(--c-bad)}.stat-tile-meta{margin-top:var(--s1);font-size:var(--fs-xs);color:var(--ink-faint)}.notice{align-items:flex-start;gap:var(--s3);padding:var(--s3) var(--s4);color:var(--ink);background:var(--c-info-soft);border-radius:var(--r-md);border:1px solid #0000;display:flex}.notice-ok{background:var(--c-ok-soft)}.notice-warn{background:var(--c-warn-soft)}.notice-bad{background:var(--c-bad-soft)}.notice-icon{color:var(--c-info);flex:none;margin-top:2px;display:inline-flex}.notice-ok .notice-icon{color:var(--c-ok)}.notice-warn .notice-icon{color:var(--c-warn)}.notice-bad .notice-icon{color:var(--c-bad)}.notice-body{flex:1;min-width:0}.notice-title{font-weight:600}.notice-text{color:var(--ink-soft)}.notice-actions{gap:var(--s2);flex-wrap:wrap;flex:none;align-items:center;display:flex}@media (width<=640px){.notice{flex-wrap:wrap}.notice-actions{width:100%}}.stepper{gap:var(--s1);margin:0;padding:0;list-style:none;display:grid}.stepper-button{align-items:center;gap:var(--s3);width:100%;min-height:44px;padding:var(--s2) var(--s3);color:var(--ink);font:inherit;text-align:left;border-radius:var(--r-sm);cursor:pointer;background:0 0;border:1px solid #0000;display:flex}.stepper-button:hover{background:var(--c-info-soft)}.stepper-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.stepper-item-active .stepper-button{background:var(--surface);border-color:var(--line-strong)}.stepper-marker{width:28px;height:28px;color:var(--ink-soft);border:1px solid var(--line-strong);border-radius:50%;flex:none;place-items:center;font-weight:600;display:inline-grid}.stepper-item-done .stepper-marker{color:var(--c-ok);background:var(--c-ok-soft);border-color:#0000}.stepper-item-active .stepper-marker{color:var(--accent);border-color:var(--accent)}.stepper-text{min-width:0;display:grid}.stepper-label{font-weight:600}.stepper-hint{color:var(--ink-soft);font-size:.875em}
