:root{--smui-bg:#fff;--smui-text:#17231b;--smui-muted:#66756b;--smui-border:#dfe8e2;--smui-primary:#1f7a4a;--smui-primary-dark:#165f39;--smui-danger:#b42318;--smui-warning:#b36b00;--smui-success:#16834f;--smui-shadow:0 24px 80px rgba(15,34,24,.2)}
[data-theme="dark"],[data-theme="evening"]{--smui-bg:#122019;--smui-text:#f1f8f4;--smui-muted:#a4b8ac;--smui-border:#294236;--smui-primary:#45b877;--smui-primary-dark:#2e9960;--smui-shadow:0 24px 80px rgba(0,0,0,.5)}
.smui-overlay{position:fixed;inset:0;background:rgba(8,18,12,.58);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:2147483000;opacity:0;pointer-events:none;transition:opacity .16s ease}.smui-overlay.open{opacity:1;pointer-events:auto}.smui-dialog{width:min(520px,100%);max-height:min(82vh,760px);overflow:auto;background:var(--smui-bg);color:var(--smui-text);border:1px solid var(--smui-border);border-radius:18px;box-shadow:var(--smui-shadow);transform:translateY(8px) scale(.985);transition:transform .16s ease}.smui-overlay.open .smui-dialog{transform:none}.smui-head{display:flex;gap:14px;align-items:flex-start;padding:22px 22px 10px}.smui-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;flex:0 0 auto;background:#eef7f1;color:var(--smui-primary)}.smui-icon.danger{background:#fff0ef;color:var(--smui-danger)}.smui-icon.warning{background:#fff7e7;color:var(--smui-warning)}.smui-icon.success{background:#eaf8f0;color:var(--smui-success)}.smui-title{font-size:18px;font-weight:800;line-height:1.25;margin:0}.smui-message{margin-top:6px;font-size:13px;color:var(--smui-muted);line-height:1.6;white-space:pre-line}.smui-body{padding:10px 22px 2px}.smui-input,.smui-select{width:100%;border:1px solid var(--smui-border);border-radius:10px;padding:11px 12px;background:var(--smui-bg);color:var(--smui-text);font:inherit;outline:none}.smui-input:focus,.smui-select:focus{border-color:var(--smui-primary);box-shadow:0 0 0 3px rgba(31,122,74,.12)}.smui-label{display:block;font-size:11px;font-weight:700;color:var(--smui-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.smui-actions{display:flex;justify-content:flex-end;gap:10px;padding:20px 22px 22px}.smui-btn{border:1px solid var(--smui-border);background:transparent;color:var(--smui-text);border-radius:10px;padding:9px 15px;font:inherit;font-weight:700;cursor:pointer}.smui-btn:hover{background:rgba(127,127,127,.08)}.smui-btn.primary{background:var(--smui-primary);border-color:var(--smui-primary);color:#fff}.smui-btn.primary:hover{background:var(--smui-primary-dark)}.smui-btn.danger{background:var(--smui-danger);border-color:var(--smui-danger);color:#fff}.smui-btn.warning{background:var(--smui-warning);border-color:var(--smui-warning);color:#fff}.smui-toast-wrap{position:fixed;top:18px;right:18px;z-index:2147483001;display:flex;flex-direction:column;gap:10px;pointer-events:none}.smui-toast{min-width:280px;max-width:420px;background:var(--smui-bg);color:var(--smui-text);border:1px solid var(--smui-border);border-left:4px solid var(--smui-primary);border-radius:12px;padding:12px 14px;box-shadow:0 12px 36px rgba(0,0,0,.18);font-size:12px;line-height:1.5;pointer-events:auto;animation:smuiIn .18s ease}.smui-toast.success{border-left-color:var(--smui-success)}.smui-toast.danger{border-left-color:var(--smui-danger)}.smui-toast.warning{border-left-color:var(--smui-warning)}@keyframes smuiIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.smui-choice-list{display:grid;gap:8px}.smui-choice{display:flex;align-items:center;gap:9px;border:1px solid var(--smui-border);border-radius:10px;padding:10px 12px;cursor:pointer}.smui-choice:hover{border-color:var(--smui-primary)}@media(max-width:600px){.smui-overlay{align-items:flex-end;padding:0}.smui-dialog{width:100%;max-height:88vh;border-radius:20px 20px 0 0}.smui-actions{position:sticky;bottom:0;background:var(--smui-bg)}}

/* Accessible controls shared by existing branded dialogs. */
.smui-overlay { overscroll-behavior: contain; }
.smui-dialog { font-family: 'DM Sans', system-ui, sans-serif; border-radius: 12px; }
.smui-label { font-size: 13px; text-transform: none; letter-spacing: 0; }
.smui-btn { min-height: 42px; border-radius: 8px; touch-action: manipulation; }
.smui-message, .smui-toast { font-size: 14px; }
.smui-input, .smui-select { min-height: 42px; border-radius: 8px; border-color: #8494ab; }
.smui-dialog :is(button, input, select):focus-visible { outline: 3px solid var(--smui-primary); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .smui-dialog, .smui-toast { animation: none; } }
@media (max-width: 600px) { .smui-actions { flex-wrap: wrap; } .smui-input, .smui-select { font-size: 16px; } .smui-toast { min-width: 0; max-width: calc(100vw - 36px); } }
