:root{--danger: #f87171;--danger-soft: #fca5a5}[hidden]{display:none!important}.panel-section{min-height:68vh;padding:44px 0 96px}.panel-section section{padding:0}.panel-container{max-width:1100px}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.panel-head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:14px 24px;margin-bottom:26px}.panel-head .eyebrow{margin-bottom:6px}.panel-head h1{font-size:clamp(1.6rem,3.4vw,2.1rem)}.panel-user{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;color:var(--muted);font-size:.9rem}.panel-user strong{color:var(--text);font-weight:600;word-break:break-all}.panel-h2{font-size:1.15rem;margin-bottom:4px}.panel-block{margin-top:34px}:is(.panel-section,.panel-dialog) .btn{padding:10px 20px;font-size:.92rem}:is(.panel-section,.panel-dialog) .btn:hover{transform:none}:is(.panel-section,.panel-dialog) .btn-small{padding:7px 14px;font-size:.84rem}:is(.panel-section,.panel-dialog) .btn-primary.btn-small{box-shadow:none}:is(.panel-section,.panel-dialog) .btn:disabled{opacity:.55;cursor:not-allowed}.btn-danger{background:transparent;border-color:#7f3342;color:var(--danger-soft)}.btn-danger:hover{border-color:#fb7185}.btn-danger-solid{background:#e5484d;color:#fff}:is(.panel-section,.panel-dialog) :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--brand);outline-offset:2px}.panel-section a:not(.btn){color:var(--brand-2);text-decoration:underline;text-underline-offset:3px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label,.field-label{font-size:.86rem;font-weight:600}.field-hint{color:var(--muted);font-size:.82rem}.field :is(input,select,textarea),.input{width:100%;padding:10px 12px;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:.94rem}.field textarea{resize:vertical;min-height:84px}.field :is(input,select,textarea):hover,.input:hover{border-color:color-mix(in srgb,var(--brand) 55%,var(--border))}.field input[type=file]{padding:8px;font-size:.86rem}.field input[type=file]::file-selector-button{margin-right:10px;padding:6px 12px;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;font:inherit;cursor:pointer}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-wide{grid-column:1 / -1}.form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.form-status{color:var(--muted);font-size:.9rem}.form-status:empty{display:none}.form-status[data-state=ok]{color:var(--success)}.form-status[data-state=error]{color:var(--danger)}.badge{--tone: var(--muted);display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border:1px solid color-mix(in srgb,var(--tone) 40%,transparent);border-radius:999px;background:color-mix(in srgb,var(--tone) 13%,transparent);color:var(--tone);font-size:.78rem;font-weight:600;line-height:1.6;white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge[data-tone=ok]{--tone: var(--success)}.badge[data-tone=warn]{--tone: var(--accent)}.badge[data-tone=danger]{--tone: var(--danger-soft)}.badge[data-tone=info]{--tone: var(--brand-2)}.amount{font-variant-numeric:tabular-nums;font-weight:650;white-space:nowrap}.detail-list{display:grid;grid-template-columns:minmax(110px,max-content) minmax(0,1fr);gap:6px 16px;margin:0;font-size:.9rem}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;min-width:0;white-space:pre-wrap;word-break:break-word}.disclosure>summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;border-radius:6px}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:after{content:"";flex-shrink:0;width:8px;height:8px;margin-left:auto;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateY(-2px) rotate(45deg);transition:transform .15s ease}.disclosure[open]>summary:after{transform:translateY(2px) rotate(-135deg)}.disclosure-inline>summary{display:inline-flex;color:var(--brand-2);font-size:.88rem;font-weight:600}.disclosure-inline>summary:after{margin-left:2px;border-color:currentColor}.disclosure-inline[open]>summary{margin-bottom:12px}.empty-state{padding:26px 20px;border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--muted);font-size:.94rem;text-align:center}.panel-loading{display:grid;gap:14px}.skeleton{height:84px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.skeleton-short{width:min(320px,70%);height:38px}@media(prefers-reduced-motion:no-preference){.skeleton{animation:skeleton-pulse 1.4s ease-in-out infinite}.toast{animation:toast-in .2s ease-out}}@keyframes skeleton-pulse{50%{opacity:.55}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.toast-region{position:fixed;right:16px;bottom:16px;left:16px;z-index:80;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;max-width:520px;padding:11px 12px 11px 16px;border:1px solid color-mix(in srgb,var(--success) 45%,var(--border));border-radius:var(--radius-sm);background:var(--surface-2);box-shadow:var(--shadow);color:var(--text);font-size:.92rem;pointer-events:auto}.toast[data-state=error]{border-color:color-mix(in srgb,var(--danger) 60%,var(--border))}.toast-close{flex-shrink:0;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:var(--muted);font:inherit;font-size:1.1rem;line-height:1;cursor:pointer}.toast-close:hover{color:var(--text);background:var(--surface)}.panel-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);color:var(--text)}.panel-dialog::backdrop{background:#040814b8}.dialog-body{display:grid;gap:14px;padding:24px}.dialog-body h2{font-size:1.2rem}.dialog-list{display:grid;gap:6px;margin:0;padding-left:18px;color:var(--muted);font-size:.9rem}.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:6px}@media(max-width:640px){.panel-section{padding-top:30px}.field-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}:is(.panel-section,.panel-dialog) .btn{min-height:44px}.detail-list{grid-template-columns:1fr;gap:2px}.detail-list dd{margin-bottom:8px}.dialog-body{padding:20px}.dialog-actions .btn{flex:1 1 auto}}
