/* SPMC Settings Engine v0.7.0 */
:root{--spmc-font-scale:1;--spmc-density:1;--spmc-accent:#4f46e5;--spmc-accent2:#7c3aed}
html{font-size:calc(16px * var(--spmc-font-scale))}
body{--primary:var(--spmc-accent);--primary2:var(--spmc-accent2)}
.settings-shell{display:grid;gap:18px}.settings-tabs{display:flex;gap:8px;flex-wrap:wrap}.settings-tabs button.active{background:var(--primary);color:#fff}.settings-panel{display:none}.settings-panel.active{display:block}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:18px}.settings-card h3{margin-top:0}.palette-row{display:flex;gap:10px;flex-wrap:wrap}.palette-dot{width:34px;height:34px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--border);cursor:pointer}.style-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.style-choice{padding:14px;border:1px solid var(--border);border-radius:15px;background:var(--surface2);cursor:pointer;text-align:center}.style-choice.active{outline:2px solid var(--primary)}.settings-actions{display:flex;gap:10px;flex-wrap:wrap}.legal-list{display:grid;gap:10px}.legal-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:12px}.status-pill{font-size:11px;padding:4px 8px;border-radius:999px;background:var(--surface2)}
#sidebarToggle{display:grid;place-items:center;position:absolute;right:-14px;top:88px;width:30px;height:30px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);z-index:20;cursor:pointer;box-shadow:var(--shadow)}.sidebar{position:relative;transition:width .25s,padding .25s}.app{transition:grid-template-columns .25s}.app.sidebar-compact{grid-template-columns:92px 1fr}.app.sidebar-icons{grid-template-columns:68px 1fr}.app.sidebar-compact .brand>div:last-child,.app.sidebar-icons .brand>div:last-child,.app.sidebar-compact .menu-title,.app.sidebar-icons .menu-title{display:none}.app.sidebar-compact .nav-btn,.app.sidebar-icons .nav-btn{justify-content:center;padding-left:8px;padding-right:8px;font-size:0}.app.sidebar-compact .nav-btn span,.app.sidebar-icons .nav-btn span{font-size:20px;width:auto}.app.sidebar-icons .sidebar{padding-left:8px;padding-right:8px}.app.sidebar-icons .logo{width:42px;height:42px}.app.sidebar-icons .brand{justify-content:center;padding-left:0;padding-right:0}
body.style-typewriter{font-family:"Courier New",Courier,monospace;background:#efe7d0;color:#251f17}body.style-typewriter .sidebar{background:#3b3327}body.style-typewriter .card,body.style-typewriter .module-card,body.style-typewriter .settings-card{border-radius:4px;box-shadow:3px 3px 0 #9b8f76;background:#fffdf6}body.style-typewriter button,body.style-typewriter input,body.style-typewriter select,body.style-typewriter textarea{font-family:"Courier New",Courier,monospace;border-radius:3px}body.style-typewriter .hero{border-radius:4px;background:#5d4e3b}
body.style-executive{font-family:Georgia,"Times New Roman",serif;background:#f3f1ed}body.style-executive .sidebar{background:linear-gradient(180deg,#10243b,#223d58)}body.style-executive .card,body.style-executive .module-card,body.style-executive .settings-card{border-radius:8px;border-color:#b8aa91}body.style-executive .hero{background:linear-gradient(135deg,#17324d,#8a6a3d);border-radius:10px}
body.style-studio{background:radial-gradient(circle at top left,color-mix(in srgb,var(--primary) 18%,#fff),var(--bg) 45%)}body.style-studio .sidebar{background:linear-gradient(165deg,var(--primary2),#111827 55%,#020617)}body.style-studio .card,body.style-studio .module-card{border-radius:26px;box-shadow:0 18px 50px color-mix(in srgb,var(--primary) 15%,transparent)}body.style-studio .hero{border-radius:32px;background:linear-gradient(125deg,var(--primary),var(--primary2),var(--accent))}
body.density-compact .card,body.density-compact .module-card{padding:12px}body.density-compact .content{padding:16px}body.density-spacious .card,body.density-spacious .module-card{padding:24px}
.day[style*="--day-color"]{background:color-mix(in srgb,var(--day-color) 18%,var(--surface))!important;border-color:var(--day-color)!important}.event[data-custom-color]{background:var(--event-bg)!important;color:var(--event-fg)!important}
@media(max-width:900px){.settings-grid,.style-grid{grid-template-columns:1fr 1fr}.app.sidebar-compact,.app.sidebar-icons{grid-template-columns:1fr}.app.sidebar-compact .brand>div:last-child,.app.sidebar-icons .brand>div:last-child,.app.sidebar-compact .menu-title,.app.sidebar-icons .menu-title{display:block}.app.sidebar-compact .nav-btn,.app.sidebar-icons .nav-btn{justify-content:flex-start;font-size:inherit}.app.sidebar-compact .nav-btn span,.app.sidebar-icons .nav-btn span{width:24px}.app.sidebar-icons .sidebar{padding:18px 14px}#sidebarToggle{display:none}}
@media(max-width:600px){.settings-grid,.style-grid{grid-template-columns:1fr}}


/* v0.7.2 legal consent */
.spmc-legal-overlay{position:fixed;inset:0;background:rgba(2,6,23,.78);z-index:100000;display:none;align-items:center;justify-content:center;padding:18px}.spmc-legal-dialog{width:min(1080px,96vw);height:min(790px,94vh);background:var(--card,#fff);color:var(--text,#172033);border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.38);display:grid;grid-template-rows:auto auto 1fr auto;overflow:hidden}.spmc-legal-head{display:flex;justify-content:space-between;gap:20px;padding:20px 24px 14px;border-bottom:1px solid rgba(128,128,128,.2)}.spmc-legal-head h2{margin:0 0 4px}.spmc-legal-head p{margin:0;color:var(--muted,#64748b)}.spmc-legal-x{border:0;background:transparent;font-size:30px;cursor:pointer}.spmc-legal-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;overflow:visible;padding:10px 14px;border-bottom:1px solid rgba(128,128,128,.18)}.spmc-legal-tabs button{min-width:0;white-space:normal;line-height:1.15;min-height:42px;border:1px solid rgba(128,128,128,.25);background:transparent;color:inherit;border-radius:10px;padding:7px 8px;cursor:pointer;font-size:11px;overflow-wrap:anywhere}.spmc-legal-tabs button.active{background:var(--spmc-accent,#4f46e5);color:#fff;border-color:transparent}.spmc-legal-body{overflow:auto;padding:20px 24px}.spmc-legal-doc pre{white-space:pre-wrap;font:13px/1.58 Arial,sans-serif;margin:16px 0}.spmc-legal-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.spmc-legal-meta span{font-size:11px;padding:4px 8px;background:rgba(128,128,128,.12);border-radius:999px}.spmc-legal-consent{padding:14px 24px;border-top:1px solid rgba(128,128,128,.2);display:flex;justify-content:space-between;gap:16px;align-items:center}.spmc-legal-actions{display:flex;gap:9px}.spmc-legal-dialog.blocking .spmc-legal-x{display:none}@media(max-width:900px){.spmc-legal-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.spmc-legal-dialog{height:96vh}.spmc-legal-tabs{grid-template-columns:repeat(2,minmax(0,1fr));max-height:178px;overflow-y:auto}.spmc-legal-tabs button{font-size:10px;min-height:38px}.spmc-legal-consent{display:block}.spmc-legal-actions{margin-top:12px;justify-content:flex-end}.spmc-legal-head{padding:14px}.spmc-legal-body{padding:14px}}

/* SPMC Notification Sound Center */
.spmc-sound-switch{display:flex;align-items:center;gap:9px;font-weight:700}
.spmc-sound-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.spmc-sound-category-grid>label{display:flex;align-items:center;gap:9px;padding:12px 14px;border:1px solid var(--line,#dbe2ea);border-radius:13px;background:var(--card,#fff);min-height:48px}
.spmc-sound-category-grid>label input{width:17px;height:17px}
.spmc-sound-test{margin-left:auto;border:0;border-radius:9px;padding:6px 10px;background:color-mix(in srgb,var(--spmc-accent,#4f46e5) 12%,transparent);color:var(--spmc-accent,#4f46e5);font-weight:700;cursor:pointer}
#spmcSoundVolume{width:100%;accent-color:var(--spmc-accent,#4f46e5)}
