.sess-banner,.sess-overlay,.sess-toast{--sess-ink:#191b19;--sess-muted:#5f665f;--sess-line:#deded8;--sess-accent:#242b23;--sess-soft:#f4f4f0;--sess-warn-bg:#fdf6e6;--sess-warn-line:#ead6a6;--sess-warn-ink:#7a5d14;font-family:Milton CRM,Manrope,Segoe UI,-apple-system,sans-serif;color:var(--sess-ink);-webkit-font-smoothing:antialiased;box-sizing:border-box}.sess-banner *,.sess-overlay *,.sess-toast *{box-sizing:border-box}.sess-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(24,26,22,.52);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sess-dialog{width:100%;max-width:470px;max-height:calc(100vh - 32px);overflow:auto;padding:28px 28px 24px;border:1px solid rgba(255,255,255,.6);border-radius:18px;background:#fff;box-shadow:0 28px 80px rgba(20,22,18,.3);outline:none;animation:sess-in .22s ease-out both}.sess-dialog:focus-visible{box-shadow:0 28px 80px rgba(20,22,18,.3),0 0 0 3px rgba(84,95,79,.35)}.sess-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:16px;border-radius:50%;background:var(--sess-soft);color:var(--sess-accent);border:1px solid var(--sess-line)}.sess-icon svg{width:24px;height:24px}.sess-title{margin:0 0 10px;font-size:21px;line-height:1.3;font-weight:750;letter-spacing:-.02em}.sess-text{margin:0;font-size:14.5px;line-height:1.6;color:#3d433d;overflow-wrap:anywhere}.sess-warn{margin:14px 0 0;padding:10px 14px;border:1px solid var(--sess-warn-line);border-radius:10px;background:var(--sess-warn-bg);color:var(--sess-warn-ink);font-size:13.5px;line-height:1.5}.sess-note{margin:14px 0 0;padding:10px 0 0;border-top:1px solid var(--sess-line);color:var(--sess-muted);font-size:13px;line-height:1.55}.sess-actions{display:grid;grid-auto-flow:column;justify-content:end;grid-gap:10px;gap:10px;margin-top:22px}.sess-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid #d3d8d0;border-radius:999px;background:#fff;color:#303530;font:inherit;font-size:14px;font-weight:650;line-height:1.3;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s,border-color .15s}.sess-btn:hover{border-color:#9aa396;background:#f8f8f5}.sess-btn-primary{border-color:var(--sess-accent);background:var(--sess-accent);color:#fff}.sess-btn-primary:hover{border-color:#3a4438;background:#3a4438}.sess-btn:focus-visible{outline:2px solid #545f4f;outline-offset:3px}.sess-btn-small{min-height:36px;padding:6px 14px;font-size:13px}.sess-banner{position:fixed;left:50%;top:12px;z-index:390;transform:translateX(-50%);align-items:center;width:-webkit-max-content;width:max-content;max-width:calc(100vw - 24px);padding:8px 8px 8px 14px;border:1px solid var(--sess-warn-line);border-radius:14px;background:var(--sess-warn-bg);box-shadow:0 10px 30px rgba(20,22,18,.16);font-size:13.5px;line-height:1.4}.sess-banner,.sess-banner-icon{display:flex;color:var(--sess-warn-ink)}.sess-banner-icon{margin-right:10px}.sess-banner-icon svg{width:20px;height:20px}.sess-banner-text{min-width:0;margin-right:12px}.sess-banner-text b{font-weight:750}.sess-banner .sess-btn{flex:0 0 auto}.sess-toast{position:fixed;left:50%;top:14px;z-index:390;transform:translateX(-50%);max-width:calc(100vw - 24px);padding:12px 18px;border-radius:12px;background:#242b23;color:#fff;font-size:14px;box-shadow:0 10px 30px rgba(20,22,18,.25)}@keyframes sess-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (max-width:560px){.sess-overlay{align-items:flex-end;padding:16px 0 0}.sess-dialog{max-width:none;max-height:92vh;border-radius:20px 20px 0 0;padding:24px 18px max(18px,env(safe-area-inset-bottom))}.sess-title{font-size:19px}.sess-actions{grid-auto-flow:row;justify-content:stretch;grid-gap:8px;gap:8px}.sess-actions .sess-btn{width:100%;min-height:48px}.sess-actions .sess-btn-primary{order:-1}.sess-banner{top:auto;bottom:max(12px,env(safe-area-inset-bottom));flex-wrap:wrap}.sess-banner-text{flex:1 1}.sess-banner .sess-btn{width:100%;min-height:44px;margin-top:8px}}@media (prefers-reduced-motion:reduce){.sess-dialog{animation:none}}