.fiscal-launch { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1rem 0; border-top:1px solid var(--admin-line); }
.fiscal-launch p { margin:.5rem 0 0; color:var(--admin-muted); font-size:.9rem; }
.fiscal-launch .user-item { width:auto; flex:0 0 auto; }
.fiscal-settings-entry { margin-top:1.5rem; border-top:1px solid var(--admin-line); padding-top:.5rem; }
.fiscal-settings-entry summary { min-height:2.75rem; align-content:center; color:var(--admin-text); cursor:pointer; font-weight:600; }
.fiscal-settings-entry .order-hint { max-width:48rem; line-height:1.6; }
.fiscal-settings-entry button { min-height:2.75rem; }
.fiscal-settings-entry :is(summary,button):focus-visible { outline:2px solid var(--admin-brand); outline-offset:3px; }
.fiscal-dialog { box-sizing:border-box; width:min(62rem,calc(100% - 2rem)); max-height:calc(100dvh - 2rem); margin:auto; padding:0; border:1px solid var(--admin-line-strong); border-radius:1rem; background:var(--admin-bg-alt); color:var(--admin-text); overflow:auto; font-family:var(--admin-font-body); }
.fiscal-dialog::backdrop { background:rgba(3,7,12,.85); backdrop-filter:blur(6px); }
.fiscal-dialog [hidden] { display:none !important; }
.fiscal-head { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; padding:1.5rem; border-bottom:1px solid var(--admin-line); }
.fiscal-head h2 { font:600 clamp(1.4rem,3vw,1.9rem) var(--admin-font-display); margin:.5rem 0; }
.fiscal-head p,.fiscal-hint { color:var(--admin-muted); line-height:1.6; }
.fiscal-head p { margin:0; }
.fiscal-body { display:grid; grid-template-columns:minmax(12rem,1fr) minmax(0,2.4fr); gap:2rem; padding:1.5rem; }
.fiscal-body aside { font-size:.9rem; }
.fiscal-stages { padding:0; list-style:none; }
.fiscal-stages li { display:flex; gap:.75rem; padding:0 0 1.4rem; }
.fiscal-stages li > span { color:var(--admin-brand); font:500 .9rem var(--admin-font-mono); padding-top:.1rem; }
.fiscal-stages p { color:var(--admin-muted); line-height:1.5; margin:.35rem 0 0; }
.fiscal-warning { border-left:2px solid var(--admin-brand); padding-left:.75rem; line-height:1.6; }
.fiscal-dialog a { color:var(--admin-brand); text-decoration:underline; text-underline-offset:.2rem; }
.fiscal-dialog fieldset { min-width:0; padding:1rem 0; margin:0; border:0; border-top:1px solid var(--admin-line); }
.fiscal-dialog legend { padding-right:.6rem; font:500 1.1rem var(--admin-font-display); }
.fiscal-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:1rem 0; }
.fiscal-field { display:grid; gap:.5rem; min-width:0; text-transform:none; letter-spacing:normal; font:500 .9rem var(--admin-font-body); }
.fiscal-field input,.fiscal-field select { box-sizing:border-box; width:100%; min-height:2.75rem; padding:.75rem; border:1px solid var(--admin-line-strong); border-radius:.5rem; background:var(--admin-surface-raised); color:var(--admin-text); font:400 1rem var(--admin-font-body); color-scheme:dark; }
.fiscal-field input[aria-invalid="true"] { border-color:var(--admin-danger); }
.fiscal-field-error { color:var(--admin-danger); }
.fiscal-errors { border:1px solid var(--admin-danger); padding:1rem; margin:1rem 0; border-radius:.5rem; }
.fiscal-actions { display:flex; flex-wrap:wrap; gap:.75rem; justify-content:flex-end; padding:1rem 1.5rem max(1rem,env(safe-area-inset-bottom)); border-top:1px solid var(--admin-line); }
.fiscal-dialog button { min-height:2.75rem; padding:.65rem 1rem; cursor:pointer; border:1px solid var(--admin-line-strong); border-radius:.5rem; color:var(--admin-text); background:var(--admin-surface); font:500 .9rem var(--admin-font-body); }
.fiscal-dialog button.cta { background:var(--admin-brand); color:var(--admin-bg); }
.fiscal-head button { padding:0; width:2.75rem; height:2.75rem; flex:0 0 2.75rem; border-radius:50%; font-size:1.3rem; }
.fiscal-dialog button:disabled { opacity:.55; cursor:wait; }
.fiscal-dialog :is(input,select,button,a):focus-visible { outline:2px solid var(--admin-brand); outline-offset:3px; }
@media(max-width:40rem) {
  .fiscal-launch { align-items:flex-start; flex-direction:column; }
  .fiscal-dialog { width:100%; max-width:100%; height:100dvh; max-height:100dvh; margin:0; border-radius:0; }
  .fiscal-head { padding:max(1rem,env(safe-area-inset-top)) 1rem 1rem; }
  .fiscal-body { grid-template-columns:1fr; gap:1rem; padding:1rem; }
  .fiscal-grid { grid-template-columns:1fr; }
  .fiscal-stages { margin-top:0; }
  .fiscal-stages li { padding-bottom:.75rem; }
  .fiscal-actions { padding-left:1rem; padding-right:1rem; }
}
