/* ==========================================================================
   HR Hub — Staff Management Portal v2
   Front-end app: .smp-app      wp-admin screens: .smp-wrap
   ========================================================================== */
.smp-app,.smp-wrap{
  --smp-bg:#f4f5f9;--smp-surface:#fff;--smp-ink:#101828;--smp-ink-2:#344054;--smp-muted:#667085;--smp-line:#e7e9f0;--smp-line-2:#f0f2f6;
  --smp-primary:#4f46e5;--smp-primary-600:#4338ca;--smp-primary-soft:#eef0ff;--smp-violet:#7c3aed;--smp-teal:#0e9488;
  --smp-ok:#0f9d6b;--smp-ok-soft:#e6f6ef;--smp-warn:#b45309;--smp-warn-soft:#fdf2e2;--smp-info:#2563eb;--smp-info-soft:#e9f0fe;
  --smp-danger:#d92d20;--smp-danger-soft:#fdecea;--smp-accent:#6d28d9;--smp-accent-soft:#f1eafe;
  --smp-side:#0e1430;--smp-side-2:#161d40;--smp-side-ink:#c3c8e2;--smp-side-mute:#7c84ad;
  --smp-radius:14px;--smp-shadow:0 1px 2px rgba(16,24,40,.04),0 1px 3px rgba(16,24,40,.06);
}

/* ---------- Shell ---------- */
.smp-app{position:relative;box-sizing:border-box;display:grid;grid-template-columns:252px minmax(0,1fr);min-height:760px;width:100%;margin:0 auto;background:var(--smp-bg);color:var(--smp-ink);
  font:14.5px/1.5 "Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;border:1px solid var(--smp-line);border-radius:18px;overflow:clip;text-align:left}
.smp-app *,.smp-app *::before,.smp-app *::after{box-sizing:border-box}
.smp-app h1,.smp-app h2,.smp-app h3,.smp-app h4,.smp-app p,.smp-app ul,.smp-app ol,.smp-app dl,.smp-app dd,.smp-app figure{margin:0;padding:0;border:0;letter-spacing:normal;text-transform:none;font-family:inherit;color:inherit;background:none}
.smp-app ul,.smp-app ol{list-style:none}
.smp-app a{color:var(--smp-primary);text-decoration:none;box-shadow:none}
.smp-app button,.smp-app input,.smp-app select,.smp-app textarea{font-family:inherit}
.smp-app form{margin:0}
.smp-ico{width:18px;height:18px;flex:none;display:inline-block;vertical-align:middle}
body.smp-fullscreen{margin:0;background:var(--smp-bg,#f4f5f9)}
body.smp-fullscreen .smp-app{min-height:100vh;border:0;border-radius:0}
@media (min-width:1025px){.smp-app{background:linear-gradient(90deg,var(--smp-side) 252px,var(--smp-bg) 252px)}}
.smp-nav-toggle{position:absolute;opacity:0;pointer-events:none;width:0;height:0}

/* Sidebar */
.smp-sidebar{position:sticky;top:0;align-self:start;height:100vh;max-height:100%;display:flex;flex-direction:column;background:var(--smp-side);color:var(--smp-side-ink);padding:18px 12px;overflow-y:auto;z-index:30}
.smp-sb-brand{display:flex;align-items:center;gap:11px;padding:4px 8px 18px;color:#fff!important}
.smp-sb-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#6366f1,#8b5cf6 60%,#14b8a6);color:#fff;box-shadow:0 6px 16px rgba(99,102,241,.35)}
.smp-sb-brand strong{display:block;font-size:16px;line-height:1.15;color:#fff}.smp-sb-brand small{display:block;font-size:12px;color:var(--smp-side-mute)}
.smp-sb-nav{display:flex;flex-direction:column;gap:2px;flex:1}
.smp-sb-group{margin:16px 10px 6px!important;font-size:11px;font-weight:600;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--smp-side-mute)!important}
.smp-sb-group:first-child{margin-top:4px!important}
.smp-app .smp-sb-link{position:relative;display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:10px;color:var(--smp-side-ink);font-weight:500;font-size:14px;transition:background .15s,color .15s}
.smp-app .smp-sb-link .smp-ico{color:var(--smp-side-mute);width:19px;height:19px}
.smp-app .smp-sb-link:hover{background:var(--smp-side-2);color:#fff}
.smp-app .smp-sb-link.is-active{background:rgba(129,140,248,.16);color:#fff}
.smp-app .smp-sb-link.is-active .smp-ico{color:#a5b4fc}
.smp-app .smp-sb-link.is-active::before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:#818cf8}
.smp-sb-link em{margin-left:auto;font-style:normal;font-size:11px;font-weight:700;min-width:20px;text-align:center;padding:1px 7px;border-radius:999px;background:#f59e0b;color:#1f1300}
.smp-sb-user{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px 8px 2px;border-top:1px solid rgba(255,255,255,.08)}
.smp-sb-user-txt{flex:1;min-width:0}.smp-sb-user strong{display:block;font-size:13px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-sb-user small{display:block;font-size:12px;color:var(--smp-side-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-app .smp-sb-user a{color:var(--smp-side-mute);padding:7px;border-radius:9px;display:grid}.smp-app .smp-sb-user a:hover{background:var(--smp-side-2);color:#fca5a5}
.smp-sb-user .smp-avatar{border-color:var(--smp-side)}
.smp-scrim{display:none}

/* Main + top bar */
.smp-app-main{min-width:0;display:flex;flex-direction:column}
.smp-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;min-height:70px;padding:12px 28px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--smp-line)}
.admin-bar .smp-topbar{top:32px}
.smp-burger{display:none;place-items:center;width:40px;height:40px;border-radius:10px;border:1px solid var(--smp-line);cursor:pointer;color:var(--smp-ink)}
.smp-tb-title{flex:1;min-width:0}
.smp-tb-title h1{font-size:20px;font-weight:700;line-height:1.25;letter-spacing:-.01em!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-tb-title p{font-size:13px;color:var(--smp-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-tb-right{display:flex;align-items:center;gap:10px}
.smp-tb-right form{display:inline-flex}
.smp-app .smp-bell{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;color:var(--smp-ink-2);border:1px solid var(--smp-line);background:#fff}
.smp-app .smp-bell:hover{background:var(--smp-bg)}
.smp-bell em{position:absolute;top:-5px;right:-5px;font-style:normal;font-size:10.5px;font-weight:700;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--smp-danger);color:#fff;display:grid;place-items:center;border:2px solid #fff}
.smp-tb-me{display:grid}
.smp-content{padding:24px 28px 40px;display:flex;flex-direction:column;gap:20px;max-width:1440px;width:100%}

/* ---------- Building blocks ---------- */
.smp-card,.smp-card-section{background:var(--smp-surface);border:1px solid var(--smp-line);border-radius:var(--smp-radius);padding:20px;box-shadow:var(--smp-shadow);min-width:0;scroll-margin-top:90px}
.smp-card-flush{padding:0;overflow:hidden}
.smp-card-flush-top{padding:6px 8px 8px}
.smp-card-head,.smp-card-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.smp-card-head h3,.smp-card-section h3{font-size:15.5px;font-weight:650;line-height:1.35}
.smp-card-head p,.smp-card-section>header p{font-size:13px;color:var(--smp-muted);margin-top:2px;display:flex;align-items:center;gap:6px}
.smp-card-head p .smp-ico{width:15px;height:15px}
.smp-card-actions{display:flex;gap:8px;align-items:center}
.smp-app .smp-link{display:inline-flex;align-items:center;gap:5px;font-weight:600;font-size:13px;white-space:nowrap}.smp-link .smp-ico{width:15px;height:15px}
.smp-dash-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,1fr);gap:20px;align-items:start}
.smp-grid-even{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.smp-col{display:flex;flex-direction:column;gap:20px;min-width:0}
.smp-muted{color:var(--smp-muted)}
.smp-sub{display:block;font-size:11.5px;color:var(--smp-muted);font-weight:400}
.smp-danger-txt{color:var(--smp-danger)!important}
.smp-foot{font-size:12.5px;color:var(--smp-muted);text-align:center}
.smp-app code{font-size:12px;background:var(--smp-bg);border:1px solid var(--smp-line);padding:1px 6px;border-radius:6px}

/* Stats */
.smp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.smp-stats:has(.smp-stat-hero){grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.35fr)}
.smp-stats-stack{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start}
.smp-app .smp-stat{display:flex;align-items:flex-start;gap:13px;background:var(--smp-surface);border:1px solid var(--smp-line);border-radius:var(--smp-radius);padding:16px;box-shadow:var(--smp-shadow);color:var(--smp-ink);transition:border-color .15s,box-shadow .15s;min-width:0}
.smp-app a.smp-stat:hover{border-color:#c7cdfa;box-shadow:0 4px 14px rgba(79,70,229,.08)}
.smp-stat>div{min-width:0}
.smp-app .smp-stat{container-type:inline-size}
@container (max-width:235px){.smp-stat-ico{display:none!important}}
.smp-stat-label{display:block;font-size:12.5px;color:var(--smp-muted);font-weight:500}
.smp-stat strong{display:block;font-size:24px;font-weight:700;line-height:1.2;letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-stat strong small{font-size:13px;font-weight:600;color:var(--smp-muted)}
.smp-stat>div>small{display:block;font-size:12px;color:var(--smp-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-stat-ico{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:11px;background:var(--smp-primary-soft);color:var(--smp-primary)}
.smp-stat-ico .smp-ico{width:20px;height:20px}
.tone-ok{background:var(--smp-ok-soft);color:var(--smp-ok)}.tone-warn{background:var(--smp-warn-soft);color:var(--smp-warn)}.tone-info{background:var(--smp-info-soft);color:var(--smp-info)}
.tone-accent{background:var(--smp-accent-soft);color:var(--smp-accent)}.tone-danger{background:var(--smp-danger-soft);color:var(--smp-danger)}
.smp-app .smp-stat-hero{background:linear-gradient(135deg,#4f46e5,#6d28d9);border-color:transparent;color:#fff}
.smp-stat-hero .smp-stat-label,.smp-stat-hero>div>small{color:rgba(255,255,255,.78)}
.smp-stat-hero .smp-stat-ico{background:rgba(255,255,255,.16);color:#fff}
.smp-stat-hero>div>small{white-space:normal}

/* Avatars */
.smp-avatar{--smp-hue:240;display:inline-grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;font-weight:700;font-size:14px;letter-spacing:.02em;color:hsl(var(--smp-hue) 55% 30%);background:hsl(var(--smp-hue) 80% 92%);border:2px solid #fff;line-height:1}
.smp-avatar.sm{width:32px;height:32px;font-size:12px}
.smp-avatar.lg{width:56px;height:56px;font-size:19px}
.smp-avatar.xl{width:96px;height:96px;font-size:32px;border-width:4px;box-shadow:0 6px 18px rgba(16,24,40,.12)}
.smp-app .smp-person{display:inline-flex;align-items:center;gap:10px;color:var(--smp-ink);min-width:0}
.smp-person strong{display:block;font-weight:600;white-space:nowrap}.smp-person small{display:block;color:var(--smp-muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-app a.smp-person:hover strong{color:var(--smp-primary)}

/* Pills & flags */
.smp-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.6;white-space:nowrap;vertical-align:middle}
.smp-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.smp-pill-ok{background:var(--smp-ok-soft);color:var(--smp-ok)}.smp-pill-warn{background:var(--smp-warn-soft);color:var(--smp-warn)}.smp-pill-info{background:var(--smp-info-soft);color:var(--smp-info)}
.smp-pill-accent{background:var(--smp-accent-soft);color:var(--smp-accent)}.smp-pill-danger{background:var(--smp-danger-soft);color:var(--smp-danger)}
.smp-pill-muted{background:#f2f4f7;color:#667085}.smp-pill-neutral{background:#f2f4f7;color:#344054}
.smp-flag{display:inline-block;margin:1px 4px 1px 0;padding:1px 7px;border-radius:6px;font-size:11.5px;font-weight:600;border:1px solid}
.smp-flag-danger{color:var(--smp-danger);border-color:#f9c9c4;background:#fff5f4}.smp-flag-warn{color:var(--smp-warn);border-color:#f6d9ae;background:#fffaf2}
.smp-flag-info{color:var(--smp-info);border-color:#c9dafc;background:#f6f9ff}.smp-flag-neutral{color:#475467;border-color:var(--smp-line);background:#f9fafb}

/* Buttons */
.smp-app .smp-btn,.smp-wrap .smp-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 15px;border-radius:10px;border:1px solid transparent;font:600 14px/1.2 inherit;font-family:inherit;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s;box-shadow:none;text-transform:none;letter-spacing:normal;min-height:0;width:auto;margin:0}
.smp-app .smp-btn:focus-visible,.smp-app a:focus-visible,.smp-app input:focus-visible,.smp-app select:focus-visible,.smp-app summary:focus-visible{outline:3px solid #c7d2fe;outline-offset:2px}
.smp-app .smp-btn-primary{background:var(--smp-primary);color:#fff;box-shadow:0 1px 2px rgba(16,24,40,.08)}.smp-app .smp-btn-primary:hover{background:var(--smp-primary-600);color:#fff}
.smp-app .smp-btn-ghost,.smp-wrap .smp-btn-ghost{background:#fff;color:var(--smp-ink-2);border-color:#d0d5dd}.smp-app .smp-btn-ghost:hover{background:#f9fafb;color:var(--smp-ink)}
.smp-app .smp-btn-danger{background:var(--smp-danger);color:#fff}.smp-app .smp-btn-danger:hover{background:#b42318}
.smp-app .smp-btn-success{background:var(--smp-ok);color:#fff}.smp-app .smp-btn-success:hover{background:#0b7f56}
.smp-app .smp-btn-soft{background:var(--smp-warn-soft);color:#92400e;border-color:#f6dcb2}.smp-app .smp-btn-soft:hover{background:#fbe8c9}
.smp-app .smp-btn-sm{padding:6px 11px;font-size:13px;border-radius:8px}.smp-btn-sm .smp-ico{width:16px;height:16px}
.smp-app .smp-btn-lg{padding:13px 26px;font-size:16px;border-radius:12px}
.smp-app .smp-btn[disabled]{opacity:.45;cursor:not-allowed}
.smp-app .smp-icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--smp-line);background:#fff;color:var(--smp-ink-2);cursor:pointer;padding:0}
.smp-app .smp-icon-btn:hover{background:#f9fafb;color:var(--smp-primary)}
.smp-app .smp-icon-danger:hover{color:var(--smp-danger);border-color:#f9c9c4}
.smp-icon-btn .smp-ico{width:16px;height:16px}

/* Forms */
.smp-app .smp-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px 16px;align-items:end}
.smp-app .smp-form-row,.smp-app .smp-form:not(:has(.smp-form-grid)){display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end}
.smp-span-2{grid-column:span 2}
.smp-form-actions{grid-column:1/-1;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.smp-form-actions small{font-size:12.5px}
.smp-field{display:flex;flex-direction:column;gap:6px;min-width:0;margin:0;border:0;padding:0}
.smp-field>span{font-size:13px;font-weight:600;color:var(--smp-ink-2)}
.smp-app .smp-field input,.smp-app .smp-field select,.smp-app .smp-field textarea,.smp-app .smp-filter input,.smp-app .smp-filter select,.smp-app .smp-form-inline input{font-size:14px;line-height:1.35;color:var(--smp-ink);background:#fff;border:1px solid #d0d5dd;border-radius:9px;padding:9px 11px;min-height:40px;width:100%;box-shadow:0 1px 2px rgba(16,24,40,.04);margin:0;max-width:none}
.smp-app .smp-field textarea{resize:vertical;min-height:96px}
.smp-app input:focus,.smp-app select:focus,.smp-app textarea:focus{outline:0;border-color:#a5b4fc;box-shadow:0 0 0 3px #e0e7ff}
.smp-check{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--smp-ink-2);cursor:pointer}
.smp-check input{width:16px;height:16px;accent-color:var(--smp-primary)}
.smp-days{grid-column:span 2}
.smp-days>div{display:flex;flex-wrap:wrap;gap:6px}
.smp-days label{position:relative;cursor:pointer}
.smp-days input{position:absolute;opacity:0;pointer-events:none}
.smp-days label span{display:inline-block;padding:8px 11px;border-radius:9px;border:1px solid #d0d5dd;font-size:13px;font-weight:600;color:var(--smp-ink-2);background:#fff;user-select:none}
.smp-days input:checked+span{background:var(--smp-primary);border-color:var(--smp-primary);color:#fff}
.smp-days input:focus-visible+span{outline:3px solid #c7d2fe}
.smp-app .smp-form-inline{display:flex;gap:6px;align-items:center;flex-wrap:nowrap}
.smp-app .smp-form-inline input{width:auto;min-height:34px;padding:6px 9px;font-size:13px;border-radius:8px}
.smp-app .smp-form-inline input[type=number]{width:96px}.smp-app .smp-form-inline input[name=label],.smp-app .smp-form-inline input[name=note]{width:150px}.smp-app .smp-form-inline input[type=date]{width:140px}
.smp-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.smp-review{flex-wrap:wrap}

/* Drawer (collapsible form card) */
.smp-drawer{padding:0}
.smp-drawer>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:16px 20px;cursor:pointer;font-weight:650;font-size:15px;color:var(--smp-ink);flex-wrap:wrap}
.smp-drawer>summary::-webkit-details-marker{display:none}
.smp-drawer>summary .smp-ico{width:30px;height:30px;padding:6px;border-radius:9px;background:var(--smp-primary-soft);color:var(--smp-primary)}
.smp-drawer>summary small{font-weight:400;font-size:13px;color:var(--smp-muted)}
.smp-drawer>summary::after{content:"";margin-left:auto;width:9px;height:9px;border-right:2px solid var(--smp-muted);border-bottom:2px solid var(--smp-muted);transform:rotate(45deg);transition:transform .15s}
.smp-drawer[open]>summary::after{transform:rotate(-135deg)}
.smp-drawer[open]>summary{border-bottom:1px solid var(--smp-line-2)}
.smp-drawer>form,.smp-drawer>.smp-form{padding:18px 20px 20px}

/* Toolbar, week nav, tabs, segmented */
.smp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.smp-toolbar-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.smp-weeknav{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--smp-line);border-radius:12px;padding:5px;box-shadow:var(--smp-shadow)}
.smp-weeknav strong{padding:0 8px;font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}
.smp-weeknav .smp-icon-btn{border:0}
.smp-tabs{display:flex;gap:4px;border-bottom:1px solid var(--smp-line);overflow-x:auto;scrollbar-width:none}
.smp-app .smp-tabs a{padding:10px 14px;font-weight:600;font-size:14px;color:var(--smp-muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}
.smp-app .smp-tabs a:hover{color:var(--smp-ink)}
.smp-app .smp-tabs a.is-active{color:var(--smp-primary);border-bottom-color:var(--smp-primary)}
.smp-seg{display:inline-flex;background:#eceef3;border-radius:10px;padding:3px;gap:2px;overflow-x:auto;max-width:100%}
.smp-app .smp-seg a{padding:6px 12px;border-radius:8px;font-size:13px;font-weight:600;color:var(--smp-ink-2);white-space:nowrap}
.smp-app .smp-seg a.is-active{background:#fff;color:var(--smp-ink);box-shadow:0 1px 2px rgba(16,24,40,.1)}
.smp-app .smp-filter{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.smp-app .smp-filter select,.smp-app .smp-filter input{width:auto;min-height:36px;padding:7px 10px;font-size:13.5px}
.smp-filter-wide{flex:1}
.smp-search{position:relative;flex:1;min-width:220px;max-width:420px}
.smp-search .smp-ico{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--smp-muted);width:17px;height:17px}
.smp-app .smp-search input{width:100%;padding-left:36px}
.smp-legend{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--smp-muted)}
.smp-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-left:8px}
.smp-lg-shift{background:#c7d2fe}.smp-lg-leave{background:#ddd6fe}.smp-lg-pending{background:#fde68a}

/* Tables */
.smp-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.smp-app table.smp-table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0;margin:0;border:0;font-size:14px;background:none}
.smp-app .smp-table th,.smp-app .smp-table td{padding:11px 12px;text-align:left;border:0;border-bottom:1px solid var(--smp-line-2);vertical-align:middle;background:none;color:inherit}
.smp-app .smp-table thead th{font-size:12px;font-weight:600;color:var(--smp-muted);background:#f9fafb;border-bottom:1px solid var(--smp-line);white-space:nowrap;text-transform:none;letter-spacing:0}
.smp-app .smp-table thead th:first-child{border-top-left-radius:10px}.smp-app .smp-table thead th:last-child{border-top-right-radius:10px}
.smp-app .smp-table tbody tr:hover td{background:#fafbff}
.smp-app .smp-table td:first-child{white-space:nowrap}
.smp-table .num{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}
.smp-app .smp-table td.smp-nw,.smp-nw{white-space:nowrap}
.smp-row-actions{display:flex;justify-content:flex-end;gap:6px;align-items:center}
.smp-app .smp-total-row th{background:#f9fafb;font-weight:700;color:var(--smp-ink);border-bottom:0}
.smp-app .smp-empty{text-align:center!important;color:var(--smp-muted);padding:32px 12px!important;white-space:normal!important}
.smp-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--smp-bg);border:1px solid var(--smp-line);font-size:12.5px;font-weight:600;color:var(--smp-ink-2);white-space:nowrap}
.smp-chip .smp-ico{width:15px;height:15px;color:var(--smp-muted)}
.smp-hbar{position:relative;display:flex;align-items:center;gap:8px;min-width:150px}
.smp-hbar i{display:block;height:8px;border-radius:999px;background:linear-gradient(90deg,#6366f1,#8b5cf6);min-width:2px}
.smp-hbar b{font-variant-numeric:tabular-nums;font-size:13px}

/* Callouts, notices, empty states */
.smp-callout{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;font-size:13.5px;margin-bottom:12px}
.smp-callout .smp-ico{margin-top:1px}
.smp-callout-warn{background:#fffaeb;color:#7a2e0e;border:1px solid #fedf89}
.smp-notice{padding:12px 16px;border:1px solid var(--smp-line);border-left-width:4px;border-radius:12px;background:#fff;font-size:14px;box-shadow:var(--smp-shadow)}
.smp-notice-success{border-left-color:var(--smp-ok,#0f9d6b);background:#f3fbf7}.smp-notice-error{border-left-color:var(--smp-danger,#d92d20);background:#fef5f4}
.smp-empty-box{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:28px 16px;color:var(--smp-muted);font-size:14px}
.smp-empty-box>.smp-ico{width:40px;height:40px;padding:9px;border-radius:12px;background:var(--smp-bg);color:#98a2b3}
.smp-allclear{display:flex;align-items:center;gap:12px;padding:16px;border-radius:12px;background:var(--smp-ok-soft);color:#05603a;font-size:14px}
.smp-allclear .smp-ico{width:22px;height:22px;color:var(--smp-ok)}

/* Dashboard lists */
.smp-today{display:flex;flex-direction:column}
.smp-today li,.smp-attention li,.smp-mini-list li,.smp-shift-list li{display:flex;align-items:center;gap:12px;padding:11px 2px;border-bottom:1px solid var(--smp-line-2)}
.smp-today li:last-child,.smp-attention li:last-child,.smp-mini-list li:last-child,.smp-shift-list li:last-child{border-bottom:0}
.smp-today .smp-person{flex:1.3}
.smp-today-sched{flex:1;display:flex;align-items:center;gap:6px;color:var(--smp-ink-2);font-size:13px;white-space:nowrap}
.smp-today-sched .smp-ico{width:15px;height:15px;color:var(--smp-muted)}
.smp-today-state{flex:1.2;display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
.smp-today-state small{font-size:12px;color:var(--smp-muted)}
.smp-att-main,.smp-mini-list li>div,.smp-shift-list li>div{flex:1;min-width:0}
.smp-att-main strong,.smp-mini-list strong,.smp-shift-list strong{display:block;font-weight:600;font-size:14px}
.smp-att-main span,.smp-mini-list li>div span,.smp-shift-list li>div span{display:block;font-size:12.5px;color:var(--smp-muted)}
.smp-attention li{flex-wrap:wrap}
.smp-kv li{display:flex;justify-content:space-between;align-items:center;padding:9px 2px;border-bottom:1px solid var(--smp-line-2);font-size:14px}
.smp-kv li:last-child{border-bottom:0}.smp-kv span{display:flex;align-items:center;gap:8px;color:var(--smp-ink-2)}.smp-kv .smp-ico{width:16px;height:16px;color:var(--smp-muted)}
.smp-date-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;width:46px;height:50px;border-radius:11px;background:var(--smp-primary-soft);color:var(--smp-primary);font-size:11px;font-weight:600;text-transform:uppercase;line-height:1.1;flex:none}
.smp-date-chip b{font-size:18px;font-weight:700}

/* Compact funding list */
.smp-fund li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 2px;border-bottom:1px solid var(--smp-line-2)}
.smp-fund li>div{min-width:0}.smp-fund strong{display:block;font-size:14px;font-weight:600}.smp-fund span{font-size:12.5px;color:var(--smp-muted)}
.smp-fund li>b{font-size:15px;font-variant-numeric:tabular-nums;white-space:nowrap}
.smp-fund .smp-fund-total{border-bottom:0;margin-top:4px;padding:12px 14px;border-radius:12px;background:linear-gradient(135deg,#4f46e5,#6d28d9);color:#fff}
.smp-fund .smp-fund-total span{color:rgba(255,255,255,.8)}.smp-fund .smp-fund-total>b{font-size:19px}

/* Announcements */
.smp-news li{display:flex;gap:12px;padding:14px 2px;border-bottom:1px solid var(--smp-line-2);align-items:flex-start}
.smp-news li:last-child{border-bottom:0}
.smp-news li>div{flex:1;min-width:0}
.smp-news li.is-pinned{background:linear-gradient(90deg,#f7f5ff,transparent);margin:0 -8px;padding:14px 10px;border-radius:10px}
.smp-news-meta{font-size:12.5px;color:var(--smp-muted)}.smp-news-meta strong{color:var(--smp-ink-2)}
.smp-news h4{font-size:14.5px;font-weight:650;margin:3px 0 2px}
.smp-news-body{font-size:13.5px;color:var(--smp-ink-2)}.smp-news-body p{margin:0 0 6px}
.smp-news-del{flex:none}

/* Charts */
.smp-bars{display:flex;align-items:flex-end;gap:10px;height:190px;padding-top:6px}
.smp-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;min-width:0}
.smp-bar-track{flex:1;width:100%;max-width:46px;display:flex;align-items:flex-end;background:repeating-linear-gradient(0deg,var(--smp-line-2) 0 1px,transparent 1px 38px);border-radius:8px}
.smp-bar-track i{display:block;width:100%;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,#818cf8,#6366f1);min-height:2px}
.smp-bar-col.is-today .smp-bar-track i{background:linear-gradient(180deg,#a78bfa,#7c3aed)}
.smp-bar-val{font-size:12px;font-weight:600;color:var(--smp-ink-2);min-height:18px;font-variant-numeric:tabular-nums}
.smp-bar-lbl{font-size:12px;color:var(--smp-muted);white-space:nowrap}
.smp-bar-col.is-today .smp-bar-lbl{color:var(--smp-accent);font-weight:700}

/* Time clock */
.smp-emp-top{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px}
.smp-clock{display:flex;flex-direction:column}
.smp-clock-face{display:flex;flex-direction:column;align-items:center;text-align:center;padding:26px 12px;margin-bottom:16px;border-radius:14px;background:var(--smp-bg);flex:1;justify-content:center}
.smp-clock-open .smp-clock-face{background:radial-gradient(120% 120% at 50% 0%,#e7f8f0,#eef0ff)}
.smp-clock-break .smp-clock-face{background:radial-gradient(120% 120% at 50% 0%,#fff3dc,#fdf2e2)}
.smp-clock-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--smp-muted)}
.smp-clock-face strong{font-size:52px;font-weight:700;line-height:1.1;margin:6px 0;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.smp-clock-sub{color:var(--smp-muted);font-size:13.5px}
.smp-clock-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.smp-clock-actions form{display:inline-flex}

/* Supervisor clock on manager dashboard: compact, horizontal */
.smp-mgr-clock .smp-clock{flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px}
.smp-mgr-clock .smp-clock .smp-card-head{margin:0;flex:1;min-width:220px}
.smp-mgr-clock .smp-clock-face{flex:none;flex-direction:row;gap:12px;padding:10px 18px;margin:0;align-items:baseline}
.smp-mgr-clock .smp-clock-face strong{font-size:28px;margin:0}
.smp-mgr-clock .smp-clock-sub{display:none}

/* Schedule grid */
.smp-sched-wrap{overflow-x:auto}
.smp-app table.smp-sched{width:100%;min-width:980px;border-collapse:separate;border-spacing:0;font-size:13px;table-layout:fixed;margin:0}
.smp-app .smp-sched th,.smp-app .smp-sched td{border:0;border-right:1px solid var(--smp-line-2);border-bottom:1px solid var(--smp-line-2);padding:8px;vertical-align:top;background:#fff;text-align:left}
.smp-app .smp-sched thead th{background:#f9fafb;text-align:center;font-weight:600;color:var(--smp-muted);padding:10px 6px;border-bottom:1px solid var(--smp-line)}
.smp-sched thead th span{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em}
.smp-sched thead th b{display:block;font-size:18px;color:var(--smp-ink);font-weight:700}
.smp-app .smp-sched thead th.is-today{background:var(--smp-primary-soft)}
.smp-app .smp-sched thead th.is-today b{color:var(--smp-primary)}
.smp-app .smp-sched td.is-today{background:#fbfbff}
.smp-app .smp-sched .smp-sched-emp{width:210px;position:sticky;left:0;z-index:2;background:#fff;vertical-align:middle;text-align:left}
.smp-app .smp-sched thead .smp-sched-emp{background:#f9fafb}
.smp-app .smp-sched .smp-sched-total{width:72px;text-align:center;vertical-align:middle;font-variant-numeric:tabular-nums;border-right:0}
.smp-app .smp-sched tfoot th,.smp-app .smp-sched tfoot td{background:#f9fafb;text-align:center;font-size:12.5px}
.smp-app .smp-sched tfoot .smp-sched-emp{text-align:left;font-weight:700;color:var(--smp-ink)}
.smp-sched tfoot small{display:block;color:var(--smp-muted)}
.smp-sched td{position:relative;min-height:74px;height:74px}
.smp-shift-chip{--smp-hue:240;position:relative;display:flex;align-items:flex-start;margin-bottom:5px;border-radius:8px;background:hsl(var(--smp-hue) 85% 95%);border-left:3px solid hsl(var(--smp-hue) 60% 55%);color:hsl(var(--smp-hue) 45% 25%)}
.smp-shift-chip>a,.smp-shift-chip>span{flex:1;min-width:0;padding:5px 7px;color:inherit!important;display:block}
.smp-shift-chip b{display:block;font-size:12px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-shift-chip small{display:block;font-size:11px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-shift-chip.is-editing{outline:2px solid var(--smp-primary)}
.smp-shift-chip form{position:absolute;top:2px;right:2px;opacity:0;transition:opacity .15s}
.smp-shift-chip:hover form,.smp-shift-chip:focus-within form{opacity:1}
.smp-shift-chip form button{display:grid;place-items:center;width:20px;height:20px;border:0;border-radius:6px;background:rgba(255,255,255,.85);color:#b42318;cursor:pointer;padding:0}
.smp-shift-chip form .smp-ico{width:13px;height:13px}
.smp-chip-leave{display:flex;align-items:center;gap:5px;margin-bottom:5px;padding:5px 7px;border-radius:8px;background:repeating-linear-gradient(135deg,#f3effe 0 6px,#ebe4fd 6px 12px);color:var(--smp-accent);font-size:11.5px;font-weight:650}
.smp-chip-leave .smp-ico{width:13px;height:13px}
.smp-app .smp-cell-add{display:grid;place-items:center;height:24px;border-radius:7px;border:1px dashed transparent;color:transparent;transition:all .15s}
.smp-app .smp-sched td:hover .smp-cell-add,.smp-app .smp-cell-add:focus{border-color:#c7d2fe;color:var(--smp-primary);background:#f8f9ff}
.smp-cell-add .smp-ico{width:15px;height:15px}

/* Employee week */
.smp-week-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.smp-day-card{background:#fff;border:1px solid var(--smp-line);border-radius:var(--smp-radius);padding:12px;min-height:150px;box-shadow:var(--smp-shadow)}
.smp-day-card header{display:flex;align-items:baseline;gap:6px;margin-bottom:10px}
.smp-day-card header span{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--smp-muted)}
.smp-day-card header b{font-size:20px}
.smp-day-card.is-today{border-color:#a5b4fc;box-shadow:0 0 0 3px #eef0ff}
.smp-day-card.is-today header b{color:var(--smp-primary)}
.smp-day-card.is-off{background:#fbfbfd}
.smp-off{font-size:13px;color:#98a2b3}
.smp-team-on{display:flex;gap:5px;align-items:flex-start;font-size:11.5px;color:var(--smp-muted);margin-top:6px!important}
.smp-team-on .smp-ico{width:13px;height:13px;margin-top:2px}

/* Time off */
.smp-balances{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.smp-balance{display:flex;gap:13px;background:#fff;border:1px solid var(--smp-line);border-radius:var(--smp-radius);padding:16px;box-shadow:var(--smp-shadow)}
.smp-balance>div{flex:1}
.smp-balance strong{display:block;font-size:24px;font-weight:700;margin:2px 0 8px}
.smp-balance strong small{font-size:13px;font-weight:500;color:var(--smp-muted)}
.smp-balance>div>small{font-size:12px;color:var(--smp-muted)}
.smp-meter{height:7px;border-radius:999px;background:var(--smp-line-2);overflow:hidden;margin-bottom:6px}
.smp-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6366f1,#8b5cf6)}
.smp-cal-head{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:14px 0 6px}
.smp-cal-head span{font-size:12px;font-weight:600;color:var(--smp-muted);text-align:center}
.smp-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.smp-cal-day{min-height:92px;border:1px solid var(--smp-line-2);border-radius:10px;padding:6px;background:#fff;display:flex;flex-direction:column;gap:3px;min-width:0}
.smp-cal-day b{font-size:12.5px;color:var(--smp-ink-2)}
.smp-cal-day.is-out{background:#fafbfc}.smp-cal-day.is-out b{color:#c0c5d0}
.smp-cal-day.is-today{border-color:#a5b4fc;background:#fbfbff}.smp-cal-day.is-today b{color:var(--smp-primary)}
.smp-cal-ev{display:block;font-size:11.5px;font-weight:600;padding:2px 6px;border-radius:6px;background:var(--smp-accent-soft);color:var(--smp-accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-cal-ev.is-pending{background:#fef3c7;color:#92400e}

/* People */
.smp-people-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.smp-app .smp-person-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--smp-line);border-radius:var(--smp-radius);padding:18px;box-shadow:var(--smp-shadow);color:var(--smp-ink);transition:border-color .15s,box-shadow .15s,transform .15s}
.smp-app .smp-person-card:hover{border-color:#c7cdfa;box-shadow:0 8px 24px rgba(79,70,229,.1);transform:translateY(-1px)}
.smp-pc-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}
.smp-person-card>strong{font-size:15.5px;font-weight:650}
.smp-pc-title{font-size:13px;color:var(--smp-muted);margin-bottom:12px}
.smp-person-card ul{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px solid var(--smp-line-2);font-size:13px;color:var(--smp-ink-2)}
.smp-person-card li{display:flex;align-items:center;gap:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-person-card li .smp-ico{width:15px;height:15px;color:var(--smp-muted)}
.smp-profile-hero{padding:0;overflow:hidden}
.smp-ph-cover{height:110px;background:radial-gradient(120% 140% at 0% 0%,#818cf8 0%,transparent 55%),radial-gradient(120% 140% at 100% 0%,#2dd4bf 0%,transparent 50%),linear-gradient(120deg,#4f46e5,#7c3aed 55%,#0e9488)}
.smp-ph-body{display:flex;align-items:flex-end;gap:18px;padding:0 24px 16px;margin-top:-44px;flex-wrap:wrap}
.smp-ph-info{flex:1;min-width:240px;padding-top:50px}
.smp-ph-info h2{font-size:24px;font-weight:700;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.smp-ph-title{color:var(--smp-ink-2);font-size:14.5px;margin-top:2px!important}
.smp-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:10px!important;color:var(--smp-muted);font-size:13px}
.smp-meta li{display:flex;align-items:center;gap:6px}.smp-meta .smp-ico{width:15px;height:15px}
.smp-ph-edit{margin-left:auto}
.smp-profile-hero .smp-tabs{padding:0 20px}
.smp-dl{display:grid;grid-template-columns:1fr;gap:0}
.smp-dl>div{display:grid;grid-template-columns:minmax(120px,40%) 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--smp-line-2)}
.smp-dl>div:last-child{border-bottom:0}
.smp-dl dt{font-size:13px;color:var(--smp-muted)}.smp-dl dd{font-size:14px;font-weight:500;word-break:break-word}

/* Settings checks */
.smp-checks{display:flex;flex-direction:column;gap:8px}
.smp-checks li{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:10px;font-size:14px}
.smp-checks li.is-ok{background:var(--smp-ok-soft);color:#05603a}.smp-checks li.is-bad{background:var(--smp-danger-soft);color:#912018}
.smp-checks .smp-ico{margin-top:1px}
.smp-steps-list{list-style:decimal!important;padding-left:20px!important;display:flex;flex-direction:column;gap:6px;color:var(--smp-ink-2)}

/* Gate */
.smp-app-gate{display:block;min-height:0;padding:40px 16px;border:0;background:transparent}
.smp-gate{max-width:440px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:44px 28px;background:#fff;border:1px solid var(--smp-line);border-radius:18px;box-shadow:var(--smp-shadow)}
.smp-gate>.smp-ico{width:48px;height:48px;padding:11px;border-radius:14px;background:var(--smp-primary-soft);color:var(--smp-primary)}
.smp-gate h2{font-size:21px;font-weight:700}.smp-gate p{color:var(--smp-muted);margin-bottom:8px!important}

/* Currency (USD for owners, PHP for staff) */
.smp-fx-note{display:flex;align-items:center;gap:7px;margin:10px 2px 0!important;font-size:12.5px;color:var(--smp-muted)}
.smp-fx-note .smp-ico{width:15px;height:15px}
.smp-app .smp-link-btn{background:none;border:0;padding:0;font:600 12.5px inherit;font-family:inherit;color:var(--smp-primary);cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.smp-fund li>b small{display:block;font-size:12px;font-weight:500;color:var(--smp-muted);text-align:right}
.smp-fund .smp-fund-total>b small{color:rgba(255,255,255,.8)}
.smp-fx-hero{display:flex;align-items:center;gap:24px;flex-wrap:wrap;background:linear-gradient(120deg,#fff 30%,#f1eefe)}
.smp-fx-now{flex:1;min-width:220px}
.smp-fx-now strong{display:block;font-size:34px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:2px 0}
.smp-fx-now strong small{font-size:15px;font-weight:500;color:var(--smp-muted)}
.smp-fx-src{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--smp-muted)}
.smp-live-dot{width:8px;height:8px;border-radius:50%;background:var(--smp-ok);box-shadow:0 0 0 4px var(--smp-ok-soft);animation:smpPulse 2s infinite}
@keyframes smpPulse{50%{box-shadow:0 0 0 7px rgba(15,157,107,.08)}}
.smp-fx-eg{display:flex;gap:12px;flex-wrap:wrap}
.smp-fx-eg>div{background:#fff;border:1px solid var(--smp-line);border-radius:12px;padding:10px 14px;min-width:170px}
.smp-fx-eg span{display:block;font-size:12px;color:var(--smp-muted)}.smp-fx-eg b{display:block;font-size:18px;font-variant-numeric:tabular-nums}.smp-fx-eg small{font-size:11.5px;color:var(--smp-muted)}
.smp-radio-card{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--smp-line);border-radius:12px;cursor:pointer;background:#fff}
.smp-radio-card:has(input:checked){border-color:#a5b4fc;background:#f8f8ff;box-shadow:0 0 0 3px #eef0ff}
.smp-radio-card input{margin-top:3px;accent-color:var(--smp-primary);width:16px;height:16px;flex:none}
.smp-radio-card b{display:block;font-size:14px}.smp-radio-card small{display:block;font-size:12.5px;color:var(--smp-muted);margin-top:2px}
@media (prefers-reduced-motion:reduce){.smp-live-dot{animation:none}}

.smp-app .smp-tz-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;border:1px solid var(--smp-line);background:#fff;color:var(--smp-ink-2);font-size:12.5px;font-weight:600;white-space:nowrap}
.smp-tz-chip .smp-ico{width:15px;height:15px;color:var(--smp-primary)}

/* Payroll breakdown by employee */
.smp-pe-head,.smp-pay-emp>summary,.smp-pe-total{display:grid;grid-template-columns:minmax(200px,1.6fr) minmax(150px,1.3fr) .8fr .9fr .9fr 1.1fr 24px;gap:12px;align-items:center}
.smp-pe-head{padding:10px 14px;background:#f9fafb;border:1px solid var(--smp-line);border-radius:10px 10px 0 0;font-size:12px;font-weight:600;color:var(--smp-muted)}
.smp-pe-head span:nth-child(n+3){text-align:right}
.smp-pay-emp{border:1px solid var(--smp-line);border-top:0;background:#fff}
.smp-pay-emp>summary{list-style:none;cursor:pointer;padding:12px 14px}
.smp-pay-emp>summary::-webkit-details-marker{display:none}
.smp-pay-emp>summary:hover{background:#fafbff}
.smp-pay-emp[open]>summary{background:#f8f8ff;border-bottom:1px solid var(--smp-line-2)}
.smp-pay-emp .smp-person small{display:flex;gap:4px;flex-wrap:wrap;margin-top:2px}
.smp-pay-emp .smp-person small .smp-pill{font-size:11px;padding:1px 7px}
.smp-pe-c{display:flex;flex-direction:column;align-items:flex-end;text-align:right;min-width:0;font-variant-numeric:tabular-nums}
.smp-pe-c:nth-child(2){align-items:flex-start;text-align:left}
.smp-pe-c b{font-size:14.5px;font-weight:650}.smp-pe-c small{font-size:12px;color:var(--smp-muted)}
.smp-pe-net b{font-size:15.5px;color:var(--smp-ink)}
.smp-warn-txt{color:var(--smp-warn)!important;font-weight:600}
.smp-pe-chev{width:9px;height:9px;border-right:2px solid var(--smp-muted);border-bottom:2px solid var(--smp-muted);transform:rotate(45deg);justify-self:center;transition:transform .15s}
.smp-pay-emp[open] .smp-pe-chev{transform:rotate(-135deg)}
.smp-pe-body{padding:12px 14px 14px;background:#fcfcfe}
.smp-app .smp-pe-body table.smp-table{min-width:720px}
.smp-app .smp-ded-row td{color:var(--smp-danger);font-size:13px}
.smp-pe-total{padding:13px 14px;border:1px solid transparent;border-radius:0 0 12px 12px;background:linear-gradient(135deg,#4f46e5,#6d28d9);color:#fff}
.smp-pe-total .smp-pe-c b,.smp-pe-total .smp-pe-net b{color:#fff}.smp-pe-total small{color:rgba(255,255,255,.8)!important}
@media (max-width:900px){
  .smp-pe-head{display:none}
  .smp-pay-emp{border-top:1px solid var(--smp-line);border-radius:12px;margin-bottom:10px;overflow:hidden}
  .smp-pay-emp>summary,.smp-pe-total{grid-template-columns:1fr 1fr;row-gap:10px}
  .smp-pay-emp>summary .smp-person{grid-column:1/-1}
  .smp-pe-c,.smp-pe-c:nth-child(2){align-items:flex-start;text-align:left}
  .smp-pe-c::before{content:attr(data-l);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--smp-muted)}
  .smp-pe-total .smp-pe-c::before{color:rgba(255,255,255,.75)}
  .smp-pe-chev{display:none}
  .smp-pe-total{border-radius:12px}.smp-pe-total>span:first-child{grid-column:1/-1}
}

/* ---------- Responsive ---------- */
@media (max-width:1200px){
  .smp-stats:has(.smp-stat-hero){grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
  .smp-dash-grid{grid-template-columns:minmax(0,1fr)}
  .smp-emp-top{grid-template-columns:minmax(0,1fr)}
  .smp-week-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:1024px){
  .smp-app{grid-template-columns:minmax(0,1fr)}
  .smp-sidebar{position:fixed;left:0;top:0;bottom:0;height:100vh;height:100dvh;max-height:none;width:270px;transform:translateX(-102%);transition:transform .22s ease;z-index:100000;box-shadow:0 0 40px rgba(0,0,0,.25)}
  .smp-nav-toggle:checked~.smp-sidebar{transform:none}
  .smp-nav-toggle:checked~.smp-scrim{display:block;position:fixed;inset:0;background:rgba(15,20,48,.45);z-index:99999}
  .smp-burger{display:grid}
  .smp-topbar{padding:10px 16px}
  .smp-content{padding:18px 16px 32px}
  .smp-grid-even{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .smp-app{border-radius:0;border-left:0;border-right:0}
  .smp-tb-title h1{font-size:17px}
  .smp-tb-title p{display:none}
  .smp-hide-sm,.smp-tb-me{display:none!important}
  .smp-tb-right .smp-btn{padding:7px 10px}
  .smp-stats,.smp-stats:has(.smp-stat-hero){grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.35fr)}
.smp-stats-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .smp-app .smp-stat{flex-direction:column;gap:8px;padding:13px}
  .smp-stat strong{font-size:20px}
  .smp-stat-hero{grid-column:1/-1}
  .smp-card,.smp-card-section{padding:16px}
  .smp-today li{flex-wrap:wrap}
  .smp-today-sched{order:3;flex-basis:100%;padding-left:52px}
  .smp-today-state{flex:1}
  .smp-week-cards{grid-template-columns:minmax(0,1fr)}
  .smp-day-card{min-height:0;display:grid;grid-template-columns:56px 1fr;gap:4px 12px}
  .smp-day-card header{flex-direction:column;gap:0;grid-row:span 4;margin:0}
  .smp-clock-face strong{font-size:42px}
  .smp-span-2,.smp-days{grid-column:auto}
  .smp-cal-day{min-height:64px;padding:4px}
  .smp-cal-ev{font-size:10px;padding:1px 4px}
  .smp-ph-body{padding:0 16px 12px}
  .smp-ph-edit{margin-left:0}
  .smp-dl>div{grid-template-columns:1fr;gap:2px}
  .smp-weeknav{width:100%;justify-content:space-between}
  .smp-search{min-width:0;max-width:none;flex-basis:100%}
}

/* ---------- wp-admin screens ---------- */
.smp-wrap{max-width:1400px}
.smp-admin-head{margin:14px 0 18px;padding:22px 26px;border-radius:16px;color:#fff;background:radial-gradient(120% 160% at 100% 0%,#2dd4bf 0%,transparent 45%),linear-gradient(120deg,#4f46e5,#6d28d9)}
.smp-wrap .smp-admin-head h1{color:#fff;font-size:24px;font-weight:700;padding:0;margin:2px 0 4px}
.smp-wrap .smp-admin-head p{margin:0;color:rgba(255,255,255,.85)}
.smp-wrap .smp-admin-head .smp-eyebrow{color:rgba(255,255,255,.75)!important}
.smp-wrap .smp-cards{display:flex;gap:16px;flex-wrap:wrap;margin:22px 0}
.smp-wrap .smp-card,.smp-wrap .smp-panel{background:#fff;border:1px solid var(--smp-line);border-radius:14px;padding:18px;min-width:200px;box-shadow:var(--smp-shadow)}
.smp-wrap .smp-card .smp-ico{width:22px;height:22px;color:var(--smp-primary);margin-bottom:8px}
.smp-wrap .smp-card span{display:block;color:#646970}.smp-wrap .smp-card strong{display:block;font-size:28px;margin-top:6px}
.smp-wrap .smp-panel{margin:12px 0}
.smp-wrap .smp-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.smp-wrap .smp-inline input{max-width:150px}
.smp-wrap table.smp-table{border-radius:12px;overflow:hidden;border-color:var(--smp-line)}
.smp-wrap .smp-table td,.smp-wrap .smp-table th{vertical-align:middle}
.smp-wrap .smp-table .num{text-align:right}
.smp-wrap .smp-total-row th{font-weight:700;background:#f6f7fb}
.smp-wrap .smp-empty{text-align:center;color:#646970}
.smp-wrap .smp-callout{max-width:900px}
.smp-wrap .smp-sub{display:block;font-size:11px;color:#646970}
.smp-wrap .smp-btn-sm{padding:4px 10px;font-size:12px;border-radius:6px}
.smp-wrap .smp-table-scroll{overflow-x:auto}

/* ---------- Payday card + Pay history (v2.4) ---------- */
.smp-payrun{padding:20px;margin-bottom:18px;border:1px solid #e0e7ff;background:linear-gradient(180deg,#fafaff,#fff 60%)}
.smp-payrun-top{display:flex;gap:16px;align-items:center}
.smp-payrun-date{flex:none;width:64px;border-radius:14px;overflow:hidden;text-align:center;background:#fff;border:1px solid var(--smp-line);box-shadow:0 2px 6px rgba(15,23,42,.06)}
.smp-payrun-date span{display:block;background:linear-gradient(135deg,#4f46e5,#6d28d9);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 0}
.smp-payrun-date strong{display:block;font-size:24px;line-height:1.1;padding-top:4px;color:var(--smp-ink)}
.smp-payrun-date small{display:block;font-size:11px;color:var(--smp-muted);padding-bottom:5px}
.smp-payrun-title h3{margin:2px 0;font-size:19px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.smp-payrun-title p{margin:0;color:var(--smp-muted);font-size:13.5px}
.smp-payrun-title .smp-eyebrow{margin:0}
.smp-payrun-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0 12px}
.smp-payrun-stats>div{background:#fff;border:1px solid var(--smp-line);border-radius:12px;padding:10px 12px;min-width:0}
.smp-payrun-stats span{display:block;font-size:12px;font-weight:600;color:var(--smp-muted)}
.smp-payrun-stats strong{display:block;font-size:19px;font-variant-numeric:tabular-nums;color:var(--smp-ink)}
.smp-payrun-stats small{display:block;font-size:12px;color:var(--smp-muted)}
.smp-payrun-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:4px}
.smp-payrun-actions form{margin:0}
.smp-payrun .smp-callout{margin:0 0 12px}
.smp-payrun .smp-fx-note{margin:12px 0 0}
.smp-flag-info{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
@media (max-width:760px){.smp-payrun-stats{grid-template-columns:1fr 1fr}.smp-payrun-actions .smp-btn{flex:1 1 auto;justify-content:center}}
@media print{
  .smp-sidebar,.smp-topbar .smp-tb-right,.smp-burger,.smp-scrim,.smp-notice,.smp-pe-chev{display:none!important}
  .smp-app{display:block!important;background:#fff!important}.smp-app-main{margin:0!important}
  .smp-content{padding:0!important}.smp-pay-emp{break-inside:avoid}
  .smp-pe-total{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ---------- v2.5: money + team features ---------- */
.smp-payrun-extra{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px;margin-top:14px}
.smp-fxh{display:flex;gap:12px;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--smp-line);border-radius:12px;padding:10px 12px;min-width:0}
.smp-fxh-txt{min-width:0}.smp-fxh-txt strong{display:block;font-size:14.5px}.smp-fxh-txt small{display:block;font-size:12px;line-height:1.4}
.smp-fxh-good .smp-fxh-txt small:first-of-type{color:#047857}.smp-fxh-bad .smp-fxh-txt small:first-of-type{color:#b45309}
.smp-fxh-spark{flex:none;width:120px;height:46px}
.smp-fxh-spark polyline{fill:none;stroke:#6366f1;stroke-width:2;vector-effect:non-scaling-stroke}
.smp-fxh-spark .avg{stroke:#cbd5e1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}
.smp-fxh-spark circle{fill:#4f46e5}
.smp-payrun-forecast{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--smp-line);border-radius:12px;padding:10px 12px;color:inherit;text-decoration:none;min-width:0}
.smp-payrun-forecast>.smp-ico{flex:none;color:#6366f1;margin-top:2px}
.smp-payrun-forecast span{display:block;font-size:12px;font-weight:600;color:var(--smp-muted)}
.smp-payrun-forecast strong{display:block;font-size:16px}.smp-payrun-forecast small{display:block;font-size:12px;color:var(--smp-muted);line-height:1.4}
a.smp-payrun-forecast:hover{border-color:#c7d2fe}
@media (max-width:980px){.smp-payrun-extra{grid-template-columns:1fr}}
.smp-input-sm{height:32px;padding:4px 8px;border:1px solid var(--smp-line);border-radius:8px;font-size:13px;max-width:150px}
.smp-app .smp-inline{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0}
.smp-adv-list li{flex-wrap:wrap}
.smp-drawer-inline{margin-top:10px;border-top:1px solid var(--smp-line-2);padding-top:10px}
.smp-drawer-inline>summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--smp-primary);display:flex;align-items:center;gap:6px;list-style:none}
.smp-drawer-inline>summary::-webkit-details-marker{display:none}
.smp-drawer-inline[open]>summary{margin-bottom:10px}
.smp-callout-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}
.smp-callout-ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#064e3b}
.smp-received{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.smp-received>span{flex:1 1 260px}
.smp-payout-line{display:flex;gap:8px;align-items:center;margin:0}
/* Earned this week */
.smp-earn-label{display:block;font-size:12.5px;font-weight:600;color:var(--smp-muted)}
.smp-earn-amt{display:block;font-size:30px;line-height:1.15;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.smp-earn-sub{display:block;font-size:13px;color:var(--smp-muted);margin-bottom:10px}
.smp-earn-bar{display:flex;height:8px;border-radius:99px;background:#eef2f7;overflow:hidden}
.smp-earn-bar i{display:block;height:100%}
.smp-earn-bar .ok,.smp-earn-legend .ok{background:#10b981}.smp-earn-bar .warn,.smp-earn-legend .warn{background:#f59e0b}.smp-earn-bar .info,.smp-earn-legend .info{background:#6366f1}
.smp-earn-legend{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:4px;font-size:13px}
.smp-earn-legend li{display:flex;align-items:center;gap:8px}.smp-earn-legend i{width:9px;height:9px;border-radius:3px;display:inline-block}.smp-earn-legend b{margin-left:auto;font-variant-numeric:tabular-nums}
.smp-earn-next{display:flex;gap:8px;align-items:center;margin:10px 0 0;padding:8px 10px;background:#f8fafc;border-radius:10px;font-size:13px}
.smp-earn-note{font-size:12px;margin:10px 0 0}
/* Questions */
.smp-threads{list-style:none;margin:0;padding:0}
.smp-threads li a{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--smp-line-2);color:inherit;text-decoration:none}
.smp-threads li:last-child a{border-bottom:0}.smp-threads li a:hover{background:#fafbff}
.smp-threads li a>div{flex:1;min-width:0}.smp-threads strong{display:block;font-size:14px}.smp-threads span{font-size:12.5px;color:var(--smp-muted)}
.smp-threads li.is-unread strong{color:var(--smp-primary)}
.smp-thread-head{display:flex;gap:12px;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--smp-line-2);margin-bottom:12px}
.smp-thread-head strong{display:block}.smp-thread-head span{font-size:13px;color:var(--smp-muted)}
.smp-thread{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}
.smp-msg{display:flex;gap:10px;align-items:flex-start;max-width:640px}
.smp-msg>div{background:#f8fafc;border:1px solid var(--smp-line-2);border-radius:4px 14px 14px 14px;padding:10px 12px;min-width:0}
.smp-msg.is-mine{flex-direction:row-reverse;margin-left:auto}.smp-msg.is-mine>div{background:#eef2ff;border-color:#e0e7ff;border-radius:14px 4px 14px 14px}
.smp-msg header{display:flex;gap:8px;align-items:baseline;font-size:12.5px}.smp-msg time{color:var(--smp-muted)}
.smp-msg p{margin:4px 0 0;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.smp-about{display:flex;gap:8px;align-items:center;background:#f8fafc;border-radius:10px;padding:8px 10px;margin:0 0 12px;font-size:13px}
.smp-app textarea{width:100%;border:1px solid var(--smp-line);border-radius:10px;padding:8px 10px;font:inherit;font-size:14px;resize:vertical;box-sizing:border-box}
/* Holidays + clocks */
.smp-hol{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:2px 7px 2px 3px;border-radius:99px;background:#f1f5f9;color:#334155;white-space:nowrap}
.smp-hol b{font-size:9.5px;letter-spacing:.04em;padding:1px 4px;border-radius:99px;color:#fff;background:#64748b}
.smp-hol-ph b{background:#0038a8}.smp-hol-us b{background:#b22234}.smp-hol-co b{background:#7c3aed}
.smp-hol-row{display:flex;gap:3px;justify-content:center;flex-wrap:wrap;margin-top:3px;font-style:normal}
.smp-sched thead .smp-hol{padding:1px 3px}
.smp-day-card .smp-hol-row{justify-content:flex-start;margin:0 0 6px}.smp-day-card .smp-hol{white-space:normal}
.smp-hol-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 12px;font-size:13px;color:var(--smp-muted)}
.smp-chip-you{opacity:.75;font-style:italic}
.smp-clocks{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;margin:0 0 16px}
.smp-cityclock,.smp-overlap{background:#fff;border:1px solid var(--smp-line);border-radius:12px;padding:10px 14px}
.smp-cityclock span,.smp-overlap span{display:block;font-size:12px;font-weight:600;color:var(--smp-muted)}
.smp-cityclock strong{display:block;font-size:22px;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.smp-cityclock small,.smp-overlap small{display:block;font-size:12px;color:var(--smp-muted)}
.smp-overlap{flex:1 1 240px}.smp-overlap strong{display:block;font-size:15px;margin-top:2px}
.smp-clock-gap{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--smp-muted);font-size:12px}
/* Work notes */
.smp-worknote{display:flex;gap:4px;align-items:center;font-weight:400;font-size:12px;color:var(--smp-muted);margin-top:2px;max-width:260px;white-space:normal}
.smp-worknote .smp-ico{width:13px;height:13px;flex:none}
.smp-worklog .smp-worknote-full{white-space:normal;color:var(--smp-ink-2)!important;font-size:13px!important;line-height:1.45}
.smp-clockout{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.smp-clockout .smp-field span{font-size:13px}
.smp-checkset{display:flex;flex-direction:column;gap:6px;border:0;padding:0;margin:0}
.smp-checkset>span{font-size:13px;font-weight:600}

/* =====================================================================
   v2.5.1 — Compact UI + fixed form controls
   ===================================================================== */
/* Checkboxes and radios must never pick up text-input styles (theme or .smp-field rules). */
.smp-app input[type=checkbox],.smp-app input[type=radio],.smp-app .smp-field input[type=checkbox],.smp-app .smp-field input[type=radio]{
  -webkit-appearance:auto;appearance:auto;width:16px!important;height:16px!important;min-height:0!important;min-width:0!important;max-width:16px!important;
  padding:0!important;margin:0!important;border:0;box-shadow:none!important;flex:none;accent-color:var(--smp-primary);background:none;vertical-align:middle}

/* Density */
.smp-app{font-size:14px;line-height:1.45}
.smp-topbar{min-height:58px;padding:9px 24px}
.smp-tb-title h1{font-size:18px}
.smp-tb-title p{font-size:12.5px}
.smp-content{padding:18px 24px 32px;gap:14px}
.smp-card,.smp-card-section{padding:16px;border-radius:12px}
.smp-card-head,.smp-card-section>header{margin-bottom:10px}
.smp-card-head h3,.smp-card-section h3{font-size:14.5px}
.smp-card-head p,.smp-card-section>header p{font-size:12.5px}
.smp-dash-grid{gap:14px}.smp-col{gap:14px}
.smp-stats{gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.smp-app .smp-stat{padding:12px 13px;gap:11px;border-radius:12px}
.smp-stat strong{font-size:20px}
.smp-stat-ico{width:34px;height:34px;border-radius:9px}.smp-stat-ico .smp-ico{width:18px;height:18px}
.smp-stat-label{font-size:12.5px}
.smp-app .smp-sb-link{padding:7px 10px;font-size:13.5px}
.smp-sb-brand{padding-bottom:12px}
.smp-app .smp-btn{padding:7px 13px;font-size:13.5px;border-radius:9px}
.smp-app .smp-btn-sm{padding:5px 10px;font-size:12.5px}
.smp-app .smp-btn-lg{padding:10px 18px;font-size:15px}
.smp-app .smp-icon-btn{width:30px;height:30px}
.smp-app .smp-table th,.smp-app .smp-table td{padding:8px 10px}
.smp-app .smp-table thead th{font-size:11.5px}
.smp-today li,.smp-attention li,.smp-mini-list li,.smp-shift-list li{padding:8px 2px;gap:10px}
.smp-app .smp-tabs a{padding:8px 12px;font-size:13.5px}
.smp-drawer>summary{padding:12px 16px;font-size:14px}
.smp-weeknav{padding:3px;border-radius:10px}
.smp-app .smp-form-grid{gap:10px 12px}
.smp-field{gap:4px}.smp-field>span{font-size:12.5px}
.smp-app .smp-field input,.smp-app .smp-field select,.smp-app .smp-field textarea,.smp-app .smp-filter input,.smp-app .smp-filter select,.smp-app .smp-form-inline input{min-height:36px;padding:7px 10px;font-size:13.5px;border-radius:8px}
.smp-app .smp-field textarea{min-height:76px}
.smp-callout{padding:10px 12px;font-size:13px;margin-bottom:8px}
.smp-payrun{padding:16px}
.smp-payrun-stats{margin:12px 0 10px;gap:8px}.smp-payrun-stats strong{font-size:17px}
.smp-payrun-date{width:56px}.smp-payrun-date strong{font-size:21px}
.smp-payrun-title h3{font-size:17px}
.smp-sched td{height:64px}
.smp-earn-amt{font-size:26px}
@media (max-width:1024px){.smp-topbar{padding:8px 16px}.smp-content{padding:14px 14px 28px}}

/* Settings page */
.smp-settings-card{padding:0}
.smp-set-group{display:grid;grid-template-columns:minmax(180px,250px) minmax(0,1fr);gap:16px 28px;padding:18px 20px;border-bottom:1px solid var(--smp-line-2)}
.smp-set-group>header h4{font-size:14px;font-weight:650;margin:0 0 3px}
.smp-set-group>header p{font-size:12.5px;color:var(--smp-muted);line-height:1.45}
.smp-set-body{display:flex;flex-direction:column;gap:12px;min-width:0}
.smp-set-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px;align-items:start}
.smp-set-grid .smp-span-2{grid-column:span 2}
.smp-hint{display:block;font-size:11.5px;color:var(--smp-muted);line-height:1.4}
.smp-input-wrap{position:relative;display:block}
.smp-input-wrap em{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-style:normal;font-size:12px;color:var(--smp-muted);pointer-events:none}
.smp-app .smp-input-wrap input{padding-right:42px}
.smp-set-save{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 20px;background:#fafbfc;border-radius:0 0 12px 12px}
/* Toggle switches */
.smp-toggles{display:flex;flex-direction:column;border:1px solid var(--smp-line);border-radius:10px;overflow:hidden}
.smp-toggles-row{flex-direction:row}.smp-toggles-row .smp-toggle{flex:1 1 0;border-bottom:0}.smp-toggles-row .smp-toggle+.smp-toggle{border-left:1px solid var(--smp-line-2)}
.smp-toggle{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--smp-line-2);background:#fff}
.smp-toggle:last-child{border-bottom:0}.smp-toggle:hover{background:#fafbff}
.smp-app .smp-toggle input{position:absolute!important;opacity:0;pointer-events:none}
.smp-toggle i{flex:none;position:relative;width:34px;height:20px;margin-top:1px;border-radius:99px;background:#d0d5dd;transition:background .15s}
.smp-toggle i::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .15s}
.smp-toggle input:checked+i{background:var(--smp-primary)}
.smp-toggle input:checked+i::after{transform:translateX(14px)}
.smp-toggle input:focus-visible+i{outline:3px solid #c7d2fe;outline-offset:2px}
.smp-toggle strong{display:block;font-size:13.5px;font-weight:600;color:var(--smp-ink)}
.smp-toggle small{display:block;font-size:12px;color:var(--smp-muted);line-height:1.4}
@media (max-width:900px){.smp-set-group{grid-template-columns:1fr;gap:10px;padding:16px}.smp-set-grid{grid-template-columns:1fr 1fr}.smp-toggles-row{flex-direction:column}.smp-toggles-row .smp-toggle+.smp-toggle{border-left:0;border-top:1px solid var(--smp-line-2)}}
@media (max-width:520px){.smp-set-grid{grid-template-columns:1fr}.smp-set-grid .smp-span-2{grid-column:auto}}
.smp-app .smp-form.smp-settings{display:block}
.smp-set-save{border-top:1px solid var(--smp-line)}
.smp-set-group:last-of-type{border-bottom:0}
.smp-app .smp-empty-box{padding:14px 10px;gap:6px}
.smp-app .smp-empty-box .smp-ico{width:30px;height:30px;padding:6px}
.smp-payrun{margin-bottom:0}
.smp-clock-face{padding:18px 12px;margin-bottom:12px}
.smp-clock-face strong{font-size:42px}
.smp-app .smp-mgr-clock .smp-clock-face{padding:8px 16px;margin:0}
.smp-app .smp-mgr-clock .smp-clock-face strong{font-size:26px}
.smp-app .smp-earn-next{margin-top:10px}.smp-app .smp-earn-note{margin-top:8px}
.smp-app .smp-earn-legend{margin-top:8px}
@media (max-width:640px){.smp-clock-face strong{font-size:36px}}

/* ---------- v2.6: simpler Payroll page ---------- */
.smp-payrun-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.smp-payrun-row .smp-payrun-title{flex:1 1 260px;min-width:0}
.smp-payrun-row .smp-payrun-title h3{font-size:16px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0}
.smp-payrun-row .smp-payrun-title p{font-size:13px;color:var(--smp-muted);margin-top:2px}
.smp-payrun-money{display:flex;gap:22px}
.smp-payrun-money span{display:block;font-size:12px;font-weight:600;color:var(--smp-muted)}
.smp-payrun-money strong{display:block;font-size:22px;letter-spacing:-.01em;font-variant-numeric:tabular-nums;line-height:1.2}
.smp-payrun-cta form{margin:0}.smp-payrun-cta .smp-btn{padding:10px 18px;font-size:14px}
.smp-payrun-wait{font-size:13px}
.smp-payrun-more{margin-top:12px;border-top:1px solid var(--smp-line-2);padding-top:10px}
.smp-payrun-more>summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--smp-muted)}
.smp-payrun-more>summary::-webkit-details-marker{display:none}
.smp-payrun-more>summary span{flex:1;min-width:0}
.smp-payrun-more>summary em{font-style:normal;font-weight:600;color:var(--smp-primary);white-space:nowrap}
.smp-payrun-more>summary em::after{content:" ▾"}.smp-payrun-more[open]>summary em::after{content:" ▴"}
.smp-payrun-more .smp-payrun-extra{margin-top:10px}
.smp-attn{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 14px;border-radius:10px;background:#fffbeb;border:1px solid #fde68a;font-size:13px;color:#78350f}
.smp-attn>.smp-ico{width:16px;height:16px;color:#d97706}
.smp-attn strong{font-weight:650;margin-right:4px}
.smp-app .smp-attn a{color:#92400e;font-weight:600;text-decoration:underline;text-decoration-color:#fcd34d;text-underline-offset:2px}
.smp-attn i{font-style:normal;color:#d6a64a}
.smp-tab-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;margin-left:4px;border-radius:99px;background:#f59e0b;color:#fff;font-size:11px;font-style:normal;font-weight:700}
.smp-pe-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px;padding:10px 12px;background:#fff;border:1px solid var(--smp-line);border-radius:10px}
.smp-pe-actions-right{display:flex;gap:6px}
.smp-app .smp-input-xs{max-width:96px}
.smp-pe-note{display:flex;align-items:center;gap:6px;margin-top:10px!important;font-size:12.5px;color:var(--smp-muted)}
@media (max-width:760px){.smp-payrun-money{width:100%;justify-content:space-between}.smp-payrun-cta{width:100%}.smp-payrun-cta .smp-btn{width:100%}.smp-payrun-row .smp-payrun-date{display:none}}
@media (max-width:760px){
  .smp-pay-emp>summary{grid-template-columns:1fr auto;row-gap:6px;padding:10px 12px}
  .smp-pay-emp>summary .smp-pe-c[data-l="Rate"],.smp-pay-emp>summary .smp-pe-c[data-l="Gross"],.smp-pay-emp>summary .smp-pe-c[data-l="Deductions"]{display:none}
  .smp-pay-emp>summary .smp-pe-c[data-l="Net pay"]{align-items:flex-end;text-align:right}
  .smp-pay-emp{margin-bottom:8px}
  .smp-pe-total{grid-template-columns:1fr auto}.smp-pe-total>span:empty,.smp-pe-total .smp-pe-c[data-l="Gross"],.smp-pe-total .smp-pe-c[data-l="Deductions"]{display:none}
  .smp-pe-total .smp-pe-c[data-l="Net pay"]{align-items:flex-end;text-align:right}
}
/* Staff roles */
.smp-role-chip{display:inline-flex;align-items:center;padding:1px 8px;border-radius:99px;font-size:11.5px;font-weight:600;white-space:nowrap;background:#f1f5f9;color:#334155}
.smp-role-owner{background:#fef3c7;color:#92400e}.smp-role-ea{background:#ede9fe;color:#5b21b6}.smp-role-app_dev{background:#e0f2fe;color:#075985}.smp-role-dispatcher{background:#dcfce7;color:#166534}
.smp-person-card .smp-role-chip{align-self:flex-start;margin-top:4px}
.smp-role-list{display:grid;gap:6px;font-size:13px;color:var(--smp-ink-2)}
.smp-role-list li{display:grid;grid-template-columns:150px 1fr;gap:10px;align-items:center}
@media (max-width:520px){.smp-role-list li{grid-template-columns:1fr;gap:2px}}
.smp-role-list .smp-role-chip{justify-self:start}
.smp-app .smp-filter .smp-search input{padding-left:34px}

/* =====================================================================
   v2.7.1 — Phone layout pass
   ===================================================================== */
.smp-sched-agenda{display:none}
@media (max-width:760px){
  /* Top bar: keep the title readable, buttons become icons */
  .smp-topbar{gap:8px;min-height:54px}
  .smp-tb-title{min-width:0;flex:1}
  .smp-tb-title h1{font-size:17px}
  .smp-tb-right{gap:6px;flex:none}
  .smp-app .smp-tb-right .smp-btn{font-size:0;gap:0;padding:0;width:36px;height:36px;border-radius:10px}
  .smp-app .smp-tb-right .smp-btn .smp-ico{width:18px;height:18px}
  .smp-app .smp-tb-right form{margin:0}
  .smp-bell{width:36px;height:36px}

  /* KPI tiles: two per row, compact */
  .smp-stats,.smp-stats:has(.smp-stat-hero),.smp-stats-stack{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
  .smp-app .smp-stat{flex-direction:row;align-items:center;gap:0;padding:10px 12px}
  .smp-app .smp-stat .smp-stat-ico{display:none}
  .smp-stat strong{font-size:18px}
  .smp-stat-label{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .smp-stat small{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
  .smp-stat>div{min-width:0}
  .smp-stat-hero{grid-column:1/-1}

  /* Content spacing */
  .smp-content{padding:12px 12px 28px;gap:12px}
  .smp-card,.smp-card-section{padding:14px}
  .smp-dash-grid,.smp-col{gap:12px}

  /* Tables become cards */
  .smp-app .smp-table-scroll{overflow:visible}
  .smp-app table.smp-cardify,.smp-app .smp-pe-body table.smp-cardify{min-width:0!important;width:100%;border:0}
  .smp-app .smp-cardify thead{display:none}
  .smp-app .smp-cardify,.smp-app .smp-cardify tbody,.smp-app .smp-cardify tr{display:block;width:100%}
  .smp-app .smp-cardify tbody tr{border:1px solid var(--smp-line);border-radius:12px;padding:8px 12px;margin-bottom:8px;background:#fff}
  .smp-app .smp-cardify td,.smp-app .smp-cardify tbody th{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 0!important;border:0!important;text-align:right!important;white-space:normal!important;min-height:0}
  .smp-app .smp-cardify td::before{content:attr(data-label);flex:none;font-size:12px;font-weight:600;color:var(--smp-muted);text-align:left}
  .smp-app .smp-cardify td[data-label=""]::before{display:none}
  .smp-app .smp-cardify td:first-child{justify-content:flex-start;text-align:left!important;font-weight:600;padding-bottom:6px!important;margin-bottom:2px;border-bottom:1px solid var(--smp-line-2)!important}
  .smp-app .smp-cardify td:first-child::before{display:none}
  .smp-app .smp-cardify td:empty{display:none}
  .smp-app .smp-cardify td.smp-empty{justify-content:center;text-align:center!important;border:0!important}
  .smp-app .smp-cardify tr.smp-total-row,.smp-app .smp-cardify tr.smp-ded-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;background:#f8fafc}
  .smp-app .smp-cardify tr.smp-total-row>*,.smp-app .smp-cardify tr.smp-ded-row>*{display:block;width:auto;border:0!important;padding:2px 0!important}
  .smp-app .smp-cardify tr.smp-total-row>*::before,.smp-app .smp-cardify tr.smp-ded-row>*::before{display:none}
  .smp-app .smp-cardify .smp-row-actions,.smp-app .smp-cardify .smp-actions{justify-content:flex-end;flex-wrap:wrap}
  .smp-app .smp-cardify .smp-person{gap:8px}
  .smp-app .smp-cardify .smp-bar{flex:1;max-width:60%}

  /* Schedule: agenda instead of the wide grid */
  .smp-sched-card{display:none}
  .smp-sched-agenda{display:flex;flex-direction:column;gap:8px}
  .smp-ag-day{background:#fff;border:1px solid var(--smp-line);border-radius:12px;overflow:hidden}
  .smp-ag-day.is-today{border-color:#c7d2fe;box-shadow:0 0 0 2px #eef2ff}
  .smp-ag-day header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 12px;background:#f8fafc;border-bottom:1px solid var(--smp-line-2)}
  .smp-ag-day header b{font-size:13.5px}.smp-ag-day header span{font-size:13px;color:var(--smp-muted)}
  .smp-ag-day header em{margin-left:auto;font-style:normal;font-size:12.5px;font-weight:600;color:var(--smp-ink-2)}
  .smp-ag-day ul{padding:4px 0}
  .smp-ag-day li>a,.smp-ag-day li.is-leave{display:flex;align-items:center;gap:10px;padding:8px 12px;color:var(--smp-ink);border-left:3px solid hsl(var(--smp-hue,240) 60% 55%)}
  .smp-ag-day li.is-leave{border-left-color:#a78bfa;background:#faf5ff}
  .smp-ag-day li div{flex:1;min-width:0}
  .smp-ag-day li strong{display:block;font-size:13.5px}
  .smp-ag-day li span,.smp-ag-day li small{display:block;font-size:12.5px;color:var(--smp-muted)}
  .smp-ag-day li small{font-style:italic}
  .smp-ag-day li>a>.smp-ico{width:16px;height:16px;color:var(--smp-muted)}
  .smp-ag-day .smp-off{padding:10px 12px;font-size:13px;color:var(--smp-muted)}
  .smp-hol-bar{display:none}

  /* People: compact rows */
  .smp-people-grid{grid-template-columns:1fr;gap:8px}
  .smp-app .smp-person-card{display:grid;grid-template-columns:44px 1fr auto;grid-template-areas:"av name st" "av title st" "av chip chip" "meta meta meta";column-gap:12px;row-gap:1px;padding:12px}
  .smp-pc-top{display:contents}
  .smp-pc-top>.smp-avatar,.smp-pc-top>span:first-child{grid-area:av;width:44px!important;height:44px!important;font-size:15px!important;align-self:start}
  .smp-pc-status{grid-area:st;align-self:start}
  .smp-person-card>strong{grid-area:name;font-size:14.5px}
  .smp-pc-title{grid-area:title;margin:0}
  .smp-person-card .smp-role-chip{grid-area:chip;margin-top:4px}
  .smp-person-card ul{grid-area:meta;flex-direction:row;flex-wrap:wrap;gap:4px 14px;margin-top:8px;padding-top:8px;font-size:12.5px}

  /* Filters */
  .smp-filter-wide{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;width:100%}
  .smp-filter-wide .smp-search{grid-column:1/-1}
  .smp-filter-wide select{min-width:0;width:100%}

  /* Misc */
  .smp-fund li>div span{white-space:normal}
  .smp-app .smp-tabs a{padding:8px 10px}
  .smp-today-sched{padding-left:0}
}
@media (max-width:760px){
  .smp-stat strong small{display:inline}
  /* Card tables: two facts per row, label above value */
  .smp-app .smp-cardify tbody tr{display:grid;grid-template-columns:1fr 1fr;column-gap:14px;row-gap:6px;padding:10px 12px}
  .smp-app .smp-cardify td{flex-direction:column;align-items:flex-start!important;justify-content:flex-start;gap:1px;text-align:left!important;padding:0!important;min-width:0;overflow-wrap:anywhere}
  .smp-app .smp-cardify td::before{font-size:11px;text-transform:uppercase;letter-spacing:.03em}
  .smp-app .smp-cardify td:first-child,.smp-app .smp-cardify td.smp-empty,.smp-app .smp-cardify td:has(form),.smp-app .smp-cardify td:has(.smp-row-actions),.smp-app .smp-cardify td:has(.smp-actions),.smp-app .smp-cardify td[colspan]{grid-column:1/-1}
  .smp-app .smp-cardify td:first-child{flex-direction:row;align-items:center!important;padding-bottom:8px!important}
  .smp-app .smp-cardify td.num{align-items:flex-start!important}
  .smp-app .smp-cardify td:has(form)::before,.smp-app .smp-cardify td:has(.smp-row-actions)::before{display:none}
  .smp-app .smp-cardify td form,.smp-app .smp-cardify .smp-form-inline{display:flex;flex-wrap:wrap;gap:6px;width:100%}
  .smp-app .smp-cardify td input:not([type=checkbox]):not([type=hidden]){flex:1 1 120px;min-width:0;max-width:none!important}
  .smp-app .smp-cardify .smp-row-actions,.smp-app .smp-cardify .smp-actions{display:flex;gap:6px;width:100%;justify-content:flex-start}
  .smp-app .smp-cardify tr.smp-total-row,.smp-app .smp-cardify tr.smp-ded-row{display:flex}
  .smp-app .smp-cardify .smp-bar{max-width:none;width:100%}
  .smp-person-card .smp-role-chip{justify-self:start}
}
@media (max-width:760px){.smp-app .smp-cardify .smp-row-actions form{width:auto}.smp-app .smp-cardify .smp-row-actions{align-items:center}}

/* ---------- v2.7.2 Timesheets: grouped by day ---------- */
.smp-ts{display:flex;flex-direction:column}
.smp-ts-head,.smp-ts-row{display:grid;grid-template-columns:minmax(0,1.7fr) 72px 72px minmax(0,1.4fr) 132px;gap:12px;align-items:center}
.smp-ts.is-mgr .smp-ts-head,.smp-ts.is-mgr .smp-ts-row{grid-template-columns:minmax(150px,1.1fr) minmax(0,1.6fr) 72px 72px minmax(0,1.4fr) 132px}
.smp-ts-head{padding:8px 16px;font-size:11.5px;font-weight:600;color:var(--smp-muted);background:#f9fafb;border-bottom:1px solid var(--smp-line)}
.smp-ts-head .num{text-align:right}
.smp-ts-day{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fbfbfe;border-bottom:1px solid var(--smp-line-2);font-size:13px}
.smp-ts-day strong{font-weight:650}
.smp-ts-day>span:last-child{margin-left:auto;color:var(--smp-muted);font-size:12.5px}
.smp-ts-row{padding:10px 16px;border-bottom:1px solid var(--smp-line-2);border-left:3px solid transparent}
.smp-ts-row.is-pending{border-left-color:#f59e0b}.smp-ts-row.is-open{border-left-color:#6366f1}
.smp-ts-row:hover{background:#fafbff}
.smp-ts-who{min-width:0}.smp-ts-who strong{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-ts-time{min-width:0}
.smp-ts-time b{display:block;font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.smp-ts-time small{display:block;font-size:12px;color:var(--smp-muted)}
.smp-ts-time .smp-worknote{max-width:none}
.smp-ts-brk{font-size:13px;color:var(--smp-ink-2)}.smp-ts-brk small{color:var(--smp-muted)}
.smp-ts-hrs{text-align:right;font-variant-numeric:tabular-nums}.smp-ts-hrs b{font-size:15px}.smp-ts-hrs small{font-size:12px;color:var(--smp-muted)}
.smp-ts-st{display:flex;flex-wrap:wrap;gap:4px;align-items:center;min-width:0}
.smp-ts-act{display:flex;gap:6px;justify-content:flex-end;align-items:center}
.smp-ts-act form{margin:0}
.smp-ts-total{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#f8fafc;border-radius:0 0 12px 12px}
.smp-ts-total span{color:var(--smp-muted);font-size:13px}.smp-ts-total b{margin-left:auto;font-size:16px}
.smp-ts .smp-empty-box{padding:28px 12px}
@media (max-width:1100px) and (min-width:761px){.smp-ts.is-mgr .smp-ts-head,.smp-ts.is-mgr .smp-ts-row{grid-template-columns:minmax(130px,1fr) minmax(0,1.5fr) 60px 64px minmax(0,1.2fr) 120px}}
@media (max-width:760px){
  .smp-ts-head{display:none}
  .smp-ts-day{padding:8px 12px}
  .smp-ts-row,.smp-ts.is-mgr .smp-ts-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who hrs" "time hrs" "st act";row-gap:6px;column-gap:10px;padding:10px 12px}
  .smp-ts:not(.is-mgr) .smp-ts-row{grid-template-areas:"time hrs" "st act"}
  .smp-ts-who{grid-area:who}.smp-ts-time{grid-area:time}.smp-ts-hrs{grid-area:hrs;align-self:start}.smp-ts-st{grid-area:st}.smp-ts-act{grid-area:act}
  .smp-ts-brk{display:none}
  .smp-ts-time small:first-of-type::after{content:""}
  .smp-ts-hrs b{font-size:17px}
  .smp-ts-total{padding:12px}
}
.smp-idle-note{display:flex;align-items:flex-start;gap:8px;margin-top:10px!important;padding:8px 10px;border-radius:10px;background:#f8fafc;font-size:12.5px;color:var(--smp-muted)}
.smp-idle-note .smp-ico{width:15px;height:15px;flex:none;margin-top:1px}

/* ---------- v2.8: Owner (internal rate) vs pay staff (wage + internal) ---------- */
@media (min-width:761px){
.smp-pe-head,.smp-pay-emp>summary,.smp-pe-total{grid-template-columns:minmax(190px,1.5fr) minmax(140px,1.2fr) .9fr .9fr 1fr 1fr 24px}
.smp-pe-head.is-owner,.smp-pay-emp.is-owner>summary,.smp-pe-total.is-owner{grid-template-columns:minmax(200px,1.6fr) minmax(150px,1.3fr) 1fr 1.1fr 24px}
}
.smp-pe-c b small{font-size:11px;font-weight:500;color:var(--smp-muted)}
.smp-pe-cost b{color:#6d28d9}.smp-pe-total .smp-pe-cost b{color:#fff}
.smp-payrun-money small{display:block;font-size:12px;color:var(--smp-muted)}
.smp-payrun-extra.is-owner{grid-template-columns:1fr}
@media (max-width:760px){
  .smp-pay-emp>summary .smp-pe-c[data-l="Internal rate"]{display:none}
  .smp-pay-emp>summary .smp-pe-c[data-l="Amount due"]{align-items:flex-end;text-align:right}
  .smp-pe-total .smp-pe-c[data-l="Amount due"]{align-items:flex-end;text-align:right}
}

/* ---------- v2.8.1: EA sees wage + internal everywhere; owner statement ---------- */
@media (max-width:760px){
  .smp-pay-emp:not(.is-owner)>summary,.smp-pe-total:not(.is-owner){grid-template-columns:1fr auto auto}
  .smp-pay-emp:not(.is-owner)>summary .smp-person,.smp-pe-total:not(.is-owner)>span:first-child{grid-column:1/-1}
  .smp-pay-emp>summary .smp-pe-c[data-l="Internal cost"],.smp-pe-total .smp-pe-c[data-l="Internal cost"]{display:flex;align-items:flex-end;text-align:right}
  .smp-pay-emp:not(.is-owner)>summary .smp-pe-c b{font-size:14px}
  .smp-pe-total .smp-pe-c[data-l="Net pay"]{align-items:flex-end;text-align:right}
}
.smp-statement{padding:18px}
.smp-st-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.smp-st-top h3{font-size:18px;margin:2px 0}
.smp-st-amt{text-align:right}
.smp-st-amt span{display:block;font-size:12px;font-weight:600;color:var(--smp-muted)}
.smp-st-amt strong{display:block;font-size:28px;letter-spacing:-.02em;color:#6d28d9;font-variant-numeric:tabular-nums}
.smp-st-amt small{font-size:12px;color:var(--smp-muted)}
.smp-statement textarea{font-family:inherit;font-size:13.5px;line-height:1.5;background:#fafbfc}
.smp-st-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.smp-st-actions form{margin:0}
.smp-st-note{font-size:12.5px;margin-top:8px!important}
.smp-payrun-money small a{color:var(--smp-primary);font-weight:600}
@media (max-width:760px){.smp-st-amt{text-align:left}.smp-st-actions .smp-btn{flex:1 1 auto;justify-content:center}}
.smp-paidfrom{display:flex!important;align-items:center;gap:4px;color:#1d4ed8!important;font-size:12px}
.smp-paidfrom .smp-ico{width:13px;height:13px}
td .smp-paidfrom{display:block!important}
.smp-app .smp-table tr.is-highlight td{background:#eef2ff}
.smp-pe-body .smp-callout{margin:10px 0 0}
/* v2.9.8 — agreed coverage hours (owner/manager only) */
.smp-app .smp-cover{display:flex;align-items:center;gap:4px;color:#5b21b6;font-weight:600}
.smp-app .smp-cover .smp-ico{width:12px;height:12px}
.smp-app .smp-shift-chip .smp-cover{font-size:11px;margin-top:2px}
.smp-app .smp-cover-fields{border:1px dashed #c4b5fd;border-radius:12px;padding:10px 12px;background:#faf8ff}
.smp-app .smp-cover-fields>summary{cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-weight:600;font-size:13.5px;list-style:none}
.smp-app .smp-cover-fields>summary::-webkit-details-marker{display:none}
.smp-app .smp-cover-fields>summary small{flex-basis:100%;font-weight:400;color:var(--smp-muted);font-size:12px}
.smp-app .smp-cover-fields[open]>summary{margin-bottom:8px}
.smp-app .smp-cover-help{font-size:12px;margin:0}
.smp-app .smp-shift-chip .smp-cover{white-space:normal;flex-wrap:wrap}
.smp-app .smp-sched-agenda .smp-cover{font-style:normal}
/* v2.9.9 — simpler owner breakdown */
.smp-app .smp-clock-more{margin:6px 0 0;border-top:1px dashed var(--smp-line,#e5e7eb);padding-top:6px}
.smp-app .smp-clock-more>summary{cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--smp-muted);font-weight:600;list-style:none;padding:4px 0}
.smp-app .smp-clock-more>summary::-webkit-details-marker{display:none}
.smp-app .smp-clock-more>summary .smp-ico{width:14px;height:14px}
.smp-app .smp-clock-more[open]>summary{color:var(--smp-text,#111)}
/* v3.0 — client companies: plain wages (no internal-cost column) */
@media (min-width:761px){
.smp-pe-head.is-plain,.smp-pay-emp.is-plain>summary,.smp-pe-total.is-plain{grid-template-columns:minmax(190px,1.5fr) minmax(140px,1.2fr) .9fr .9fr 1fr 24px}
}
/* v3.1 — Meetings */
.smp-app .smp-meet-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.smp-app .smp-meet{display:grid;grid-template-columns:auto 1fr auto auto;gap:14px;align-items:center;padding:12px 4px;border-top:1px solid var(--smp-line,#eef0f4)}
.smp-app .smp-meet:first-child{border-top:0}
.smp-app .smp-meet-main{display:flex;flex-direction:column;gap:2px;min-width:0}
.smp-app .smp-meet-main strong{font-size:14.5px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.smp-app .smp-meet-main span{font-size:13px;color:var(--smp-muted)}
.smp-app .smp-meet-main small{font-size:12px;color:var(--smp-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-app .smp-meet-who{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.smp-app .smp-meet-who small{font-size:11.5px;color:var(--smp-muted)}
.smp-app .smp-avatars{display:flex}.smp-app .smp-avatars>*{margin-left:-6px;box-shadow:0 0 0 2px #fff;border-radius:50%}.smp-app .smp-avatars>*:first-child{margin-left:0}
.smp-app .smp-meet-act{display:flex;align-items:center;gap:6px;justify-content:flex-end}
.smp-app .smp-meet-act form{margin:0}
.smp-app .smp-meet-wait{font-size:12px}
.smp-app .smp-meet.is-cancelled{opacity:.6}
.smp-app .smp-meet.is-live .smp-date-chip{background:#dcfce7;color:#166534}
.smp-app .smp-meet-list.is-past .smp-meet{opacity:.75}
.smp-app .smp-meet-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:14px;border-radius:14px;background:linear-gradient(135deg,#eef2ff,#f5f3ff);border:1px solid #c7d2fe}
.smp-app .smp-meet-banner>.smp-ico{width:26px;height:26px;color:#4f46e5;flex:none}
.smp-app .smp-meet-banner div{flex:1;display:flex;flex-direction:column}
.smp-app .smp-meet-banner span{font-size:13px;color:var(--smp-muted)}
.smp-app .smp-meet-banner.is-live{background:linear-gradient(135deg,#ecfdf5,#f0fdf4);border-color:#86efac}.smp-app .smp-meet-banner.is-live>.smp-ico{color:#16a34a}
.smp-app .smp-meet-stage{position:relative;width:100%;height:calc(100vh - 200px);min-height:420px;border-radius:16px;overflow:hidden;background:#0f172a}
.smp-app .smp-meet-stage iframe{border:0;width:100%;height:100%}
.smp-app .smp-meet-loading,.smp-app .smp-meet-err{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;color:#cbd5e1;margin:0}
.smp-app .smp-meet-loading .smp-ico{width:22px;height:22px}
.smp-app .smp-meet-open{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:36px 20px}
.smp-app .smp-meet-open>.smp-ico{width:40px;height:40px;color:#4f46e5}
.smp-app .smp-meet-open h3{margin:0}.smp-app .smp-meet-open p{margin:0;color:var(--smp-muted)}
.smp-app .smp-meet-open small{max-width:460px}
.smp-app .smp-meet-agenda p{margin:8px 0 0;font-size:14px}
.smp-app .smp-seg-radio{display:inline-flex;gap:4px;padding:3px;border-radius:10px;background:#f1f5f9;margin-bottom:8px}
.smp-app .smp-seg-radio label{position:relative;cursor:pointer}
.smp-app .smp-seg-radio input{position:absolute;opacity:0;pointer-events:none}
.smp-app .smp-seg-radio span{display:block;padding:6px 12px;border-radius:8px;font-size:13px;font-weight:600;color:var(--smp-muted)}
.smp-app .smp-seg-radio input:checked+span{background:#fff;color:var(--smp-text,#0f172a);box-shadow:0 1px 2px rgba(15,23,42,.12)}
.smp-app .smp-invite-list{display:none;flex-wrap:wrap;gap:6px}
.smp-app .smp-invite:has(input[value="some"]:checked) .smp-invite-list{display:flex}
.smp-app .smp-invite-list label{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--smp-line,#e5e7eb);border-radius:999px;font-size:13px;cursor:pointer}
.smp-app .smp-invite-list label:has(input:checked){border-color:#a5b4fc;background:#eef2ff}
@media (max-width:760px){
  .smp-app .smp-meet{grid-template-columns:auto 1fr;row-gap:8px}
  .smp-app .smp-meet-who{grid-column:2;align-items:flex-start;flex-direction:row;gap:8px;align-items:center}
  .smp-app .smp-meet-act{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap}
  .smp-app .smp-meet-banner{flex-wrap:wrap}.smp-app .smp-meet-banner .smp-btn{width:100%;justify-content:center}
  .smp-app .smp-meet-stage{height:calc(100vh - 160px);border-radius:12px}
}
.smp-app .smp-form-grid>.smp-full{grid-column:1/-1}
.smp-app .smp-invite .smp-seg-radio{width:max-content;justify-self:start;align-self:flex-start}
.smp-app .smp-meet-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:9999;display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;background:#0f172a;color:#fff;font-size:13.5px;box-shadow:0 10px 30px rgba(15,23,42,.3)}
.smp-app .smp-meet-toast[hidden]{display:none}
.smp-app .smp-meet-toast .smp-ico{width:16px;height:16px;color:#a5b4fc}
/* ---------- v3.2: swaps, availability, handover, action items, app, platform ---------- */
.smp-notice-warning{border-left-color:var(--smp-warn,#b45309);background:#fffaeb}
.smp-app .smp-pre{white-space:normal;margin:0;font-size:14px;line-height:1.6}
.smp-app .smp-handover{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.smp-app .smp-handover li{display:flex;gap:10px;align-items:flex-start}
.smp-app .smp-handover strong{font-size:13.5px}.smp-app .smp-handover strong small{font-weight:400;color:var(--smp-muted)}
.smp-app .smp-handover p{margin:4px 0 0;padding:8px 10px;background:#f8fafc;border-radius:10px;font-size:13.5px;line-height:1.5}
.smp-app .smp-card-handover{border-color:#c7d2fe;background:linear-gradient(180deg,#f5f7ff,#fff 60%)}
.smp-app .smp-swap-list{list-style:none;margin:0;padding:0}
.smp-app .smp-swap-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--smp-line-2)}
.smp-app .smp-swap-list li:first-child{border-top:0}
.smp-app .smp-swap-list li>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.smp-app .smp-swap-list span{font-size:13px;color:var(--smp-muted)}.smp-app .smp-swap-list small{font-size:12px;color:var(--smp-muted)}
.smp-app .smp-swap-act{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.smp-app .smp-swap-act form{margin:0}
.smp-app .smp-card-attention{border-color:#fcd34d;box-shadow:0 0 0 3px #fef3c7}
.smp-app .smp-chip-na{display:block;font-size:11px;font-weight:600;color:#9a3412;background:repeating-linear-gradient(135deg,#fff7ed,#fff7ed 6px,#ffedd5 6px,#ffedd5 12px);border:1px dashed #fdba74;border-radius:8px;padding:3px 6px;margin-bottom:4px;cursor:help}
.smp-app .smp-offer{margin-top:6px}
.smp-app .smp-offer>summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--smp-primary);list-style:none}
.smp-app .smp-offer>summary::-webkit-details-marker{display:none}
.smp-app .smp-offer form{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.smp-app .smp-offer input{font-size:12.5px;padding:6px 8px}
.smp-app .smp-swap-tag{display:inline-block;margin-top:6px;font-size:11.5px;font-weight:600;color:#92400e;background:#fef3c7;border-radius:6px;padding:2px 6px}
.smp-app .smp-drawer-inline{margin-top:10px}
.smp-app .smp-drawer-inline>summary{cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--smp-primary);list-style:none}
.smp-app .smp-drawer-inline>summary::-webkit-details-marker{display:none}
.smp-app .smp-drawer-inline>summary .smp-ico{width:15px;height:15px}
.smp-app .smp-drawer-inline[open]>summary{margin-bottom:10px}
.smp-app .smp-avail-list li{display:flex;justify-content:space-between;align-items:center;gap:8px}
.smp-app .smp-avail-list li form{margin:0}
.smp-app .smp-actions{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.smp-app .smp-action{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--smp-line-2)}
.smp-app .smp-action:first-child{border-top:0}
.smp-app .smp-action>div{flex:1;display:flex;flex-direction:column;min-width:0}
.smp-app .smp-action strong{font-size:14px;font-weight:600}.smp-app .smp-action span{font-size:12.5px;color:var(--smp-muted)}
.smp-app .smp-action.is-done strong{text-decoration:line-through;color:var(--smp-muted);font-weight:500}
.smp-app .smp-action.is-late span{color:var(--smp-danger)}
.smp-app .smp-action form{margin:0}
.smp-app .smp-check-btn{width:24px;height:24px;border-radius:50%;border:2px solid #cbd5e1;background:#fff;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;color:transparent;flex:none}
.smp-app .smp-check-btn .smp-ico{width:14px;height:14px}
.smp-app .smp-check-btn:hover{border-color:var(--smp-ok);color:var(--smp-ok)}
.smp-app .smp-check-btn.is-done{background:var(--smp-ok);border-color:var(--smp-ok);color:#fff}
.smp-app .smp-action-form{margin-top:12px;padding-top:12px;border-top:1px dashed var(--smp-line)}
.smp-app .smp-push-btn{position:relative}
.smp-app .smp-push-btn i{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--smp-primary);box-shadow:0 0 0 2px #fff}
.smp-app .smp-push-btn[hidden],.smp-app .smp-install-btn[hidden]{display:none}
.smp-app .smp-ios-hint{position:fixed;left:12px;right:12px;bottom:12px;z-index:9998;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:#0f172a;color:#fff;font-size:13.5px;box-shadow:0 10px 30px rgba(15,23,42,.3)}
.smp-app .smp-ios-hint[hidden]{display:none}.smp-app .smp-ios-hint .smp-ico{flex:none;width:18px;height:18px;color:#a5b4fc}
.smp-app .smp-ios-hint button{margin-left:auto;background:none;border:0;color:#cbd5e1;padding:4px;cursor:pointer}
.smp-app .smp-sb-mark.has-logo{background:#fff;padding:3px;overflow:hidden}
.smp-app .smp-sb-mark.has-logo img{width:100%;height:100%;object-fit:contain;border-radius:6px}
.smp-app .smp-logo-prev img{max-width:120px;max-height:60px;border:1px solid var(--smp-line);border-radius:8px;padding:4px;background:#fff}
.smp-app input[type=color]{height:40px;padding:3px;width:80px}
/* Sign-up page (outside the app shell) */
.smp-signup{max-width:520px;margin:24px auto;padding:28px;border:1px solid #e7e9f0;border-radius:18px;background:#fff;font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#101828;box-shadow:0 8px 30px rgba(16,24,40,.06)}
.smp-signup h2{margin:0 0 4px;font-size:24px}.smp-signup .smp-muted{color:#667085}
.smp-signup .smp-signup-form{display:flex;flex-direction:column;gap:14px;margin-top:18px}
.smp-signup .smp-field{display:flex;flex-direction:column;gap:6px}.smp-signup .smp-field>span{font-size:13px;font-weight:600}
.smp-signup input[type=text],.smp-signup input[type=email],.smp-signup input[type=password],.smp-signup input:not([type]){width:100%;padding:10px 12px;border:1px solid #d0d5dd;border-radius:10px;font-size:15px;box-sizing:border-box}
.smp-signup .smp-slug{display:flex;align-items:center;border:1px solid #d0d5dd;border-radius:10px;overflow:hidden}
.smp-signup .smp-slug em{font-style:normal;color:#667085;font-size:13px;padding:0 8px;white-space:nowrap;background:#f8fafc;align-self:stretch;display:flex;align-items:center}
.smp-signup .smp-slug input{border:0!important;border-radius:0!important;min-width:0}
.smp-signup .smp-hint{font-size:12px;color:#667085}
.smp-signup .smp-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.smp-signup .smp-btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:0;border-radius:12px;padding:12px 18px;font-weight:700;font-size:15px;cursor:pointer;background:#4f46e5;color:#fff}
.smp-signup .smp-check{display:flex;gap:8px;align-items:center;font-size:14px}
.smp-signup .smp-notice{padding:10px 12px;border-radius:10px;margin-top:12px;border-left:4px solid #0f9d6b;background:#f3fbf7}.smp-signup .smp-notice-error{border-left-color:#d92d20;background:#fef5f4}
@media (max-width:760px){
  .smp-app .smp-swap-list li{flex-direction:column;align-items:flex-start}
  .smp-app .smp-swap-act{justify-content:flex-start}
  .smp-signup{margin:12px;padding:20px}
}
.smp-app .smp-day-card .smp-offer,.smp-app .smp-day-card .smp-swap-tag{margin:-2px 0 8px}
.smp-app .smp-day-card .smp-offer>summary{padding:2px 0}
@media (max-width:760px){.smp-app .smp-day-card{row-gap:0;align-content:start}.smp-app .smp-day-card>header{grid-row:1 / span 12}.smp-app .smp-day-card>*:not(header){grid-column:2;margin-bottom:4px}}
.smp-app .smp-rec-form{display:flex;gap:8px;margin-bottom:8px}.smp-app .smp-rec-form input{flex:1;min-width:0}.smp-app .smp-rec-help span{font-size:13px;color:var(--smp-muted)}.smp-app .smp-rec-help li>div{display:flex;flex-direction:column;gap:2px}
.smp-app .smp-logo-prev.is-icon img{width:64px;height:64px;max-width:none;object-fit:cover;border-radius:14px;padding:0}
.smp-app .smp-icon-row{display:flex;align-items:center;gap:14px}
.smp-app .smp-icon-row img{width:72px;height:72px;border-radius:18px;box-shadow:0 2px 8px rgba(15,23,42,.18);flex:none;background:#fff}
/* v3.3 — setup guide */
.smp-app .smp-setup{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:14px;counter-reset:st}
.smp-app .smp-setup-step{display:flex;gap:12px;align-items:flex-start;counter-increment:st}
.smp-app .smp-setup-dot{flex:none;width:26px;height:26px;border-radius:50%;border:2px solid #c7d2fe;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--smp-primary);margin-top:1px}
.smp-app .smp-setup-dot:empty::before{content:counter(st)}
.smp-app .smp-setup-step.is-done .smp-setup-dot{background:var(--smp-ok);border-color:var(--smp-ok);color:#fff}
.smp-app .smp-setup-step.is-done .smp-setup-dot .smp-ico{width:14px;height:14px}
.smp-app .smp-setup-step>div{flex:1;min-width:0}
.smp-app .smp-setup-step strong{font-size:14.5px}
.smp-app .smp-setup-step.is-done strong{color:var(--smp-muted)}
.smp-app .smp-setup-step p{margin:4px 0;font-size:13.5px;color:var(--smp-ink-2);line-height:1.55}
.smp-app .smp-code{position:relative;margin:6px 0 8px}
.smp-app .smp-code pre{margin:0;padding:12px 14px;padding-right:90px;background:#0f172a;color:#e2e8f0;border-radius:10px;font:12.5px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;overflow-x:auto}
.smp-app .smp-code .smp-btn{position:absolute;top:8px;right:8px;background:#1e293b;color:#e2e8f0;border-color:#334155}
.smp-app .smp-setup code{background:#f1f5f9;padding:1px 5px;border-radius:5px;font-size:12.5px}
.smp-app .smp-mail-preview iframe{width:100%;height:720px;border:0;border-radius:12px;background:#f4f5f9}
.smp-app .smp-test-all{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:6px 0 14px}
.smp-app .smp-test-to{min-width:260px;flex:1;max-width:360px;margin:0}
/* v3.3.5 — cash advances layout */
.smp-app .smp-adv-list li{flex-wrap:nowrap}
.smp-app .smp-adv-side{display:flex;align-items:center;gap:8px;flex:none}
.smp-app .smp-adv-edit{position:relative}
.smp-app .smp-adv-edit>summary{list-style:none;cursor:pointer}
.smp-app .smp-adv-edit>summary::-webkit-details-marker{display:none}
.smp-app .smp-adv-edit>summary .smp-ico{width:14px;height:14px}
.smp-app .smp-adv-edit form{position:absolute;right:0;top:calc(100% + 8px);z-index:30;width:260px;background:#fff;border:1px solid var(--smp-line);border-radius:14px;box-shadow:0 12px 32px rgba(16,24,40,.14);padding:14px;display:flex;flex-direction:column;gap:10px}
.smp-app .smp-adv-pop-title{margin:0;font-weight:700;font-size:14px}
.smp-app .smp-adv-pop-sub{margin:-8px 0 0;font-size:12.5px}
.smp-app .smp-adv-pop-actions{display:flex;gap:6px;justify-content:space-between}
.smp-app .smp-adv-stop{color:var(--smp-danger)}
.smp-app .smp-adv-form{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px 16px;align-items:start;padding:16px;border:1px solid var(--smp-line);border-radius:14px;background:#fafbfd}
.smp-app .smp-adv-form .smp-field{margin:0}
.smp-app .smp-adv-form .smp-field>span em{font-style:normal;font-weight:400;color:var(--smp-muted);font-size:12px}
.smp-app .smp-adv-reason{grid-column:span 2}
.smp-app .smp-adv-help{grid-column:1/-1;margin:-4px 0 0;font-size:12.5px;color:var(--smp-muted)}
.smp-app .smp-adv-foot{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--smp-line-2)}
.smp-app .smp-adv-calc{margin:0;font-size:13.5px;font-weight:600;color:var(--smp-primary)}
.smp-app .smp-adv-calc:empty::before{content:"Fill in the amount to see the weekly deduction.";font-weight:400;color:var(--smp-muted)}
@media (max-width:760px){
  .smp-app .smp-adv-form{grid-template-columns:1fr;padding:12px}
  .smp-app .smp-adv-reason{grid-column:auto}
  .smp-app .smp-adv-list li{flex-wrap:wrap}
  .smp-app .smp-adv-side{width:100%;justify-content:space-between;padding-left:44px}
  .smp-app .smp-adv-edit form{right:auto;left:auto;right:0}
}
.smp-adv-edit form{text-align:left}.smp-adv-edit form label{display:block}
/* v3.3.8 — real payslip preview */
.smp-app .smp-slip-pick{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:10px 0 12px}
.smp-app .smp-slip-pick .smp-field{flex:1 1 320px;margin:0}
.smp-app .smp-slip-preview{margin-top:8px}
.smp-app .smp-slip-preview p{margin:0 0 10px;font-size:13px;color:var(--smp-muted,#64748b)}
.smp-app .smp-slip-link{font-weight:500;font-size:12px;margin-left:8px}
/* v3.4.1 — Wise transfer fee row (owner views) */
.smp-pe-fee{display:grid;grid-template-columns:minmax(200px,1.6fr) minmax(150px,1.3fr) 1fr 1.1fr 24px;gap:12px;align-items:center;padding:12px 14px;margin-top:6px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc}
.smp-pe-fee>span:first-child{display:flex;flex-direction:column}.smp-pe-fee small{color:#64748b;font-size:12px}
@media (max-width:760px){.smp-pe-fee{grid-template-columns:1fr auto}.smp-pe-fee>span:empty{display:none}.smp-pe-fee .smp-pe-c::before{display:none}}
.smp-app .smp-fee-who{margin-top:12px}.smp-app .smp-check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 14px;margin-top:6px}.smp-app .smp-check-grid .smp-check{display:flex;gap:8px;align-items:center;font-size:14px}
/* v3.5.0 — Team profiles ("Friendster mode") */
.smp-avatar.has-photo{padding:0;overflow:hidden;background:#e2e8f0}
.smp-avatar.has-photo img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
.smp-avatar.lg{width:56px;height:56px;font-size:18px}
.smp-app .smp-fun-link{margin:0 0 14px}
.smp-app .smp-tw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.smp-app .smp-tw-card{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;padding:0 14px 16px;border:1px solid var(--smp-line,#e5e7eb);border-radius:16px;background:#fff;color:inherit;text-decoration:none;overflow:hidden;transition:transform .15s,box-shadow .15s}
.smp-app .smp-tw-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.1)}
.smp-app .smp-tw-cover{display:block;align-self:stretch;height:64px;margin:0 -14px -28px}
.smp-app .smp-tw-card .smp-avatar{border:3px solid #fff;box-shadow:0 2px 8px rgba(15,23,42,.15)}
.smp-app .smp-tw-card strong{margin-top:6px;font-size:15px}.smp-app .smp-tw-card strong small{font-weight:500;color:#64748b}
.smp-app .smp-tw-card>small{color:#64748b;font-size:12.5px}
.smp-app .smp-tw-card em{font-style:normal;font-size:12.5px;background:#f1f5f9;border-radius:999px;padding:3px 10px;margin-top:4px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-app .smp-fun-badge{display:inline-block;margin-top:4px;font-size:12px;font-weight:600;background:#fef3c7;color:#92400e;border-radius:999px;padding:2px 10px}
.smp-app .smp-bday{margin-bottom:14px}
.smp-app .smp-fun{border-radius:20px;padding:14px;margin-bottom:16px}
.smp-app .smp-fun .smp-card{margin-bottom:14px}
.smp-app .smp-fun-hero{position:relative;border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--smp-line,#e5e7eb);margin-bottom:14px}
.smp-app .smp-fun-cover{height:170px}
.smp-app .smp-fun-id{display:flex;align-items:flex-end;gap:16px;padding:0 22px 18px;margin-top:-46px}
.smp-app .smp-fun-id .smp-avatar.xl{width:108px;height:108px;font-size:34px;border:4px solid #fff;box-shadow:0 4px 14px rgba(15,23,42,.2)}
.smp-app .smp-fun-id h2{margin:0;font-size:24px}.smp-app .smp-fun-id p{margin:2px 0 0;color:#64748b}
.smp-app .smp-fun-status{font-style:italic;color:#334155!important}
.smp-app .smp-fun-dl{margin:0;display:grid;gap:12px}.smp-app .smp-fun-dl dt{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8}.smp-app .smp-fun-dl dd{margin:2px 0 0}
.smp-app .smp-fun-song iframe{width:100%;border:0;border-radius:12px}
.smp-app .smp-fun-play{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid var(--smp-line,#e5e7eb);border-radius:14px;background:#f8fafc;cursor:pointer;text-align:left;font:inherit;color:inherit}
.smp-app .smp-fun-play:hover{background:#eef2ff}
.smp-app .smp-fun-play-ico{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--smp-primary,#4f46e5);color:#fff;font-size:16px;flex:none}
.smp-app .smp-fun-play strong{display:block}.smp-app .smp-fun-play small{color:#64748b}
.smp-app .smp-fun-top{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.smp-app .smp-fun-top a{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;color:inherit;font-size:13px;font-weight:600}
.smp-app .smp-testis{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:12px}
.smp-app .smp-testi{display:flex;gap:10px;padding:12px;border-radius:14px;background:#f8fafc}
.smp-app .smp-testi.is-pending{background:#fffbeb;border:1px dashed #f59e0b}
.smp-app .smp-testi p{margin:0 0 4px;white-space:pre-line}.smp-app .smp-testi small{color:#64748b}
.smp-app .smp-testi-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.smp-app .smp-testi-form textarea{width:100%}
.smp-app .smp-cover-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:6px 0 8px}
.smp-app .smp-cover-pick input,.smp-app .smp-skin-pick input{position:absolute;opacity:0;pointer-events:none}
.smp-app .smp-cover-pick span{display:block;height:44px;border-radius:10px;border:3px solid transparent;cursor:pointer}
.smp-app .smp-cover-pick input:checked+span{border-color:#0f172a;box-shadow:0 0 0 2px #fff inset}
.smp-app .smp-skin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:6px}
.smp-app .smp-skin-pick span{display:block;padding:12px 8px;border-radius:12px;border:2px solid #e2e8f0;text-align:center;font-size:13px;font-weight:600;cursor:pointer}
.smp-app .smp-skin-pick input:checked+span{border-color:var(--smp-primary,#4f46e5);box-shadow:0 0 0 3px rgba(79,70,229,.18)}
.smp-app .smp-bday-pick{display:flex;gap:8px}.smp-app .smp-inline-check{display:inline-flex}
/* skins */
.smp-app .smp-skin-classic{background:linear-gradient(180deg,#eef2ff,transparent 70%)}
.smp-app .smp-skin-plain{background:transparent;padding:0}
.smp-app .smp-skin-y2k{background:radial-gradient(circle at 12% 20%,#fff 0 2px,transparent 3px) 0 0/48px 48px,radial-gradient(circle at 60% 70%,#fde047 0 1.5px,transparent 2.5px) 0 0/36px 36px,linear-gradient(135deg,#f9a8d4,#c4b5fd 50%,#a5f3fc);font-family:"Trebuchet MS",Verdana,sans-serif}
.smp-app .smp-skin-y2k .smp-card,.smp-app .smp-skin-y2k .smp-fun-hero{border:2px solid #f472b6;box-shadow:0 0 0 3px rgba(255,255,255,.6),0 8px 20px rgba(236,72,153,.25)}
.smp-app .smp-skin-y2k h2,.smp-app .smp-skin-y2k h3{color:#be185d}
.smp-app .smp-skin-pastel{background:linear-gradient(135deg,#d1fae5,#e0e7ff 50%,#fce7f3)}
.smp-app .smp-skin-night{background:linear-gradient(160deg,#0f172a,#312e81)}
.smp-app .smp-skin-night .smp-card,.smp-app .smp-skin-night .smp-fun-hero{background:#1e293b;border-color:#334155;color:#e2e8f0}
.smp-app .smp-skin-night h2,.smp-app .smp-skin-night h3,.smp-app .smp-skin-night strong{color:#f8fafc}.smp-app .smp-skin-night .smp-testi,.smp-app .smp-skin-night .smp-fun-play{background:#0f172a;color:#e2e8f0}
.smp-app .smp-skin-night .smp-fun-id .smp-avatar{border-color:#1e293b}
.smp-app .smp-skin-pixel{background:conic-gradient(#e0e7ff 25%,#fff 0 50%,#e0e7ff 0 75%,#fff 0) 0 0/24px 24px;font-family:"Courier New",Courier,monospace}
.smp-app .smp-skin-pixel .smp-card,.smp-app .smp-skin-pixel .smp-fun-hero{border:3px solid #0f172a;border-radius:0;box-shadow:5px 5px 0 #0f172a}
.smp-app .smp-skin-pixel .smp-fun-cover{border-bottom:3px solid #0f172a}.smp-app .smp-skin-pixel .smp-testi,.smp-app .smp-skin-pixel .smp-fun-play{border-radius:0}
.smp-app .smp-skin-ocean{background:linear-gradient(180deg,#cffafe,#bfdbfe)}
.smp-app .smp-skin-sunset{background:linear-gradient(160deg,#fed7aa,#fbcfe8 60%,#ddd6fe)}
@media (max-width:760px){
  .smp-app .smp-fun{padding:8px}.smp-app .smp-fun-cover{height:120px}
  .smp-app .smp-fun-id{flex-direction:column;align-items:flex-start;padding:0 16px 16px}
  .smp-app .smp-fun-id .smp-avatar.xl{width:88px;height:88px}
  .smp-app .smp-tw-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .smp-app .smp-skin-grid{grid-template-columns:repeat(2,1fr)}.smp-app .smp-cover-grid{grid-template-columns:repeat(5,1fr)}
}
.smp-app .smp-testi-form{display:grid;gap:8px;justify-items:start}.smp-app .smp-testi-form .smp-field{width:100%}
.smp-app .smp-skin-pick{border-radius:12px;padding:0!important;font-family:inherit}
.smp-app .smp-skin-pick.smp-skin-night span{color:#f8fafc}.smp-app .smp-skin-pick.smp-skin-pixel span{font-family:"Courier New",monospace;border-color:#0f172a;border-radius:0}
.smp-app .smp-fun-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.smp-app .smp-fun-form>.smp-span-2,.smp-app .smp-fun-form>.smp-form-actions{grid-column:1/-1}
@media (max-width:760px){.smp-app .smp-fun-form{grid-template-columns:1fr}}
.smp-app .smp-fun.has-bg{background-size:cover;background-position:center top;background-attachment:scroll;padding:18px}
@media (max-width:760px){.smp-app .smp-fun.has-bg{background-attachment:scroll}}
/* v3.5.2 — one Profile page; see-through sections over the background */
.smp-app .smp-fun-who{flex:1;min-width:0}
.smp-app .smp-fun-who h2{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.smp-app .smp-fun-id .smp-ph-edit{align-self:flex-end;margin-left:auto}
.smp-app .smp-fun-hero .smp-tabs{padding:0 20px;margin:0;border-top:1px solid rgba(148,163,184,.25)}
.smp-app .smp-fun-hero .smp-meta{margin-top:8px!important}
.smp-app .smp-edit-h{margin:6px 0 12px;font-size:15px}.smp-app .smp-edit-h+form{margin-bottom:22px}
.smp-app .smp-fun .smp-card,.smp-app .smp-fun .smp-fun-hero,.smp-app .smp-fun .smp-drawer{background:rgba(255,255,255,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-color:rgba(255,255,255,.55)}
.smp-app .smp-fun.has-bg .smp-card,.smp-app .smp-fun.has-bg .smp-fun-hero,.smp-app .smp-fun.has-bg .smp-drawer{background:rgba(255,255,255,.6)}
.smp-app .smp-fun .smp-testi,.smp-app .smp-fun .smp-fun-play,.smp-app .smp-fun .smp-table thead th{background:rgba(255,255,255,.55)}
.smp-app .smp-fun .smp-table td,.smp-app .smp-fun .smp-table th{background:transparent}
.smp-app .smp-skin-night .smp-card,.smp-app .smp-skin-night .smp-fun-hero,.smp-app .smp-skin-night .smp-drawer{background:rgba(15,23,42,.62);border-color:rgba(148,163,184,.25);color:#e2e8f0}
.smp-app .smp-skin-night .smp-testi,.smp-app .smp-skin-night .smp-fun-play{background:rgba(2,6,23,.5)}
.smp-app .smp-skin-night .smp-meta,.smp-app .smp-skin-night .smp-fun-id p,.smp-app .smp-skin-night dt,.smp-app .smp-skin-night .smp-card-head p{color:#cbd5e1}
.smp-app .smp-skin-night input,.smp-app .smp-skin-night select,.smp-app .smp-skin-night textarea{background:rgba(255,255,255,.92);color:#0f172a}
.smp-app .smp-skin-pixel .smp-card,.smp-app .smp-skin-pixel .smp-fun-hero,.smp-app .smp-skin-pixel .smp-drawer{border:3px solid #0f172a;border-radius:0;box-shadow:5px 5px 0 #0f172a}
.smp-app .smp-skin-y2k .smp-drawer{border:2px solid #f472b6}
@media (max-width:760px){.smp-app .smp-fun-id .smp-ph-edit{align-self:flex-start;margin-left:0}}
/* v3.6.0 — profile playlist */
.smp-app .smp-pl{display:grid;gap:10px}
.smp-app .smp-pl-screen iframe,.smp-app .smp-pl-screen #smp-pl-yt{width:100%;border:0;border-radius:12px;display:block}
.smp-app .smp-pl-idle{display:grid;place-items:center;height:72px;border-radius:12px;background:linear-gradient(135deg,rgba(79,70,229,.14),rgba(236,72,153,.14));font-weight:700;color:#4338ca}
.smp-app .smp-pl-ctl{display:flex;align-items:center;gap:8px}
.smp-app .smp-pl-ctl button{width:38px;height:38px;border-radius:50%;border:1px solid rgba(148,163,184,.4);background:rgba(255,255,255,.8);cursor:pointer;font-size:14px;line-height:1;color:#0f172a}
.smp-app .smp-pl-ctl button.is-main{width:46px;height:46px;background:var(--smp-primary,#4f46e5);color:#fff;border:0;font-size:16px}
.smp-app .smp-pl-now{font-weight:600;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-app .smp-pl-blocked{width:100%;padding:14px;border:0;border-radius:14px;background:linear-gradient(135deg,#ec4899,#8b5cf6);color:#fff;font-weight:700;font-size:15px;cursor:pointer;box-shadow:0 6px 18px rgba(139,92,246,.35)}
.smp-app .smp-pl-blocked[hidden]{display:none}
.smp-app .smp-pl-list{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:320px;overflow:auto}
.smp-app .smp-pl-list li{display:flex;align-items:center;gap:6px;border-radius:10px}
.smp-app .smp-pl-list li.is-on{background:rgba(79,70,229,.12)}
.smp-app .smp-pl-pick{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit;border-radius:10px}
.smp-app .smp-pl-pick:hover{background:rgba(148,163,184,.15)}
.smp-app .smp-pl-n{width:22px;text-align:center;color:#94a3b8;font-weight:700;font-size:13px}
.smp-app .smp-pl-list li.is-on .smp-pl-n{color:var(--smp-primary,#4f46e5)}
.smp-app .smp-pl-t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.smp-app .smp-pl-pick small{color:#94a3b8;font-size:11.5px}
.smp-app .smp-pl-own{display:flex;gap:2px}
.smp-app .smp-pl-ic{width:28px;height:28px;border-radius:8px;border:1px solid rgba(148,163,184,.35);background:rgba(255,255,255,.7);cursor:pointer;font-size:12px;color:#475569}
.smp-app .smp-pl-ic:hover{background:#fff;color:#0f172a}
.smp-app .smp-pl-add{display:grid;grid-template-columns:2fr 1.2fr auto;gap:8px;margin-top:12px}
.smp-app .smp-pl-auto{font-size:13px}
.smp-app .smp-skin-night .smp-pl-ctl button:not(.is-main),.smp-app .smp-skin-night .smp-pl-ic{background:rgba(30,41,59,.8);color:#e2e8f0}
@media (max-width:760px){.smp-app .smp-pl-add{grid-template-columns:1fr}}
.smp-app .smp-pl-add input{min-width:0;width:100%;height:38px;padding:0 12px;border:1px solid rgba(148,163,184,.55);border-radius:10px;background:rgba(255,255,255,.9);font:inherit;font-size:14px}
.smp-app .smp-pl-add .smp-btn{height:38px;white-space:nowrap}
.smp-app .smp-pl-own form{margin:0}
/* v3.7.0 — Team chat */
.smp-app .smp-chat{position:relative;display:grid;grid-template-columns:270px 1fr;height:calc(100vh - 150px);min-height:520px;border:1px solid var(--smp-line,#e5e7eb);border-radius:16px;overflow:hidden;background:#fff}
.smp-app .smp-chat-side{background:#f8fafc;border-right:1px solid var(--smp-line,#e5e7eb);overflow:auto;padding:12px 10px}
.smp-app .smp-chat-sec{margin-bottom:16px}
.smp-app .smp-chat-sec h4{margin:4px 8px 6px;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8}
.smp-app .smp-chl{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:9px;color:#334155;text-decoration:none;font-size:14.5px}
.smp-app .smp-chl:hover{background:#eef2f7}.smp-app .smp-chl.is-on{background:var(--smp-primary,#4f46e5);color:#fff}
.smp-app .smp-chl i{font-style:normal;width:16px;text-align:center;opacity:.7}
.smp-app .smp-chl span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-app .smp-chl.is-unread span{font-weight:700;color:#0f172a}
.smp-app .smp-chl em{font-style:normal;font-size:11.5px;font-weight:700;background:#ef4444;color:#fff;border-radius:999px;padding:1px 7px}
.smp-app .smp-chl small{font-size:11px;opacity:.6}.smp-app .smp-chl.is-arch{opacity:.55}
.smp-app .smp-avatar.xs{width:22px;height:22px;font-size:9.5px;border-width:0}
.smp-app .smp-chat-new>summary{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:9px;color:#64748b;font-size:14px;cursor:pointer;list-style:none}
.smp-app .smp-chat-new>summary::-webkit-details-marker{display:none}.smp-app .smp-chat-new>summary:hover{background:#eef2f7;color:#0f172a}
.smp-app .smp-chat-new>summary .smp-ico{width:15px;height:15px}
.smp-app .smp-chat-new[open]>form,.smp-app .smp-chat-new[open]>ul,.smp-app .smp-chat-new[open]>p{margin:6px 6px 10px;padding:10px;border-radius:12px;background:#fff;border:1px solid var(--smp-line,#e5e7eb);display:grid;gap:10px}
.smp-app .smp-chat-pick{max-height:160px;overflow:auto;display:grid;gap:4px}
.smp-app .smp-chat-browse{list-style:none}.smp-app .smp-chat-browse a{text-decoration:none;font-weight:600}
.smp-app .smp-chat-admin ul{list-style:none}.smp-app .smp-chat-admin li{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.smp-app .smp-chat-admin li>span{flex:1 1 100%;font-weight:600}
.smp-app .smp-chat-none{margin:4px 10px;font-size:13px}
.smp-app .smp-chat-main{display:flex;flex-direction:column;min-width:0;min-height:0}
.smp-app .smp-chat-head{position:relative;display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--smp-line,#e5e7eb)}
.smp-app .smp-chat-head>div{flex:1;min-width:0}.smp-app .smp-chat-head h3{margin:0;font-size:16.5px}.smp-app .smp-chat-head p{margin:1px 0 0;font-size:12.5px;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-app .smp-chat-back{display:none}
.smp-app .smp-chat-info>summary{display:flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid var(--smp-line,#e5e7eb);border-radius:9px;cursor:pointer;list-style:none;font-size:13px;font-weight:600;color:#475569}
.smp-app .smp-chat-info>summary::-webkit-details-marker{display:none}.smp-app .smp-chat-info>summary .smp-ico{width:16px;height:16px}
.smp-app .smp-chat-info-pop{position:absolute;right:12px;top:56px;z-index:30;width:300px;max-height:70vh;overflow:auto;padding:14px;background:#fff;border:1px solid var(--smp-line,#e5e7eb);border-radius:14px;box-shadow:0 16px 40px rgba(15,23,42,.18);display:grid;gap:10px}
.smp-app .smp-chat-info-pop h5{margin:4px 0 0;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8}
.smp-app .smp-chat-members{list-style:none;margin:0;padding:0;display:grid;gap:6px;max-height:180px;overflow:auto}.smp-app .smp-chat-members li{display:flex;align-items:center;gap:8px;font-size:14px}
.smp-app .smp-chat-mf{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.smp-app .smp-chat-mf input,.smp-app .smp-chat-mf select{flex:1 1 140px;min-width:0}
.smp-app .smp-chat-danger{display:grid;gap:8px;padding-top:8px;border-top:1px dashed #fecaca}
.smp-app .smp-btn-danger{background:#ef4444;color:#fff;border-color:#ef4444}
.smp-app .smp-chat-log{flex:1;overflow:auto;padding:10px 6px 10px 0;overscroll-behavior:contain}
.smp-app .smp-chat-empty{display:grid;place-items:center;text-align:center;height:100%;color:#64748b;gap:6px}.smp-app .smp-chat-empty .smp-ico{width:40px;height:40px;opacity:.4}
.smp-app .smp-chat-day{display:flex;align-items:center;gap:10px;margin:14px 16px 6px;font-size:12px;font-weight:700;color:#94a3b8}
.smp-app .smp-chat-day::before,.smp-app .smp-chat-day::after{content:"";flex:1;height:1px;background:var(--smp-line,#e5e7eb)}
.smp-app .smp-cm{position:relative;display:flex;gap:10px;padding:5px 16px;margin-top:6px}
.smp-app .smp-cm.is-cont{margin-top:0;padding-top:1px}
.smp-app .smp-cm:hover{background:#f8fafc}
.smp-app .smp-cm-av{width:32px;flex:none}.smp-app .smp-cm-av .smp-avatar{width:32px;height:32px;font-size:12px}
.smp-app .smp-cm-av time{display:none;font-size:10.5px;color:#94a3b8;padding-top:3px}.smp-app .smp-cm.is-cont:hover .smp-cm-av time{display:block}
.smp-app .smp-cm-main{flex:1;min-width:0}
.smp-app .smp-cm-head{display:flex;align-items:baseline;gap:8px}.smp-app .smp-cm-head strong{font-size:14.5px}.smp-app .smp-cm-head time{font-size:11.5px;color:#94a3b8}
.smp-app .smp-cm-body{font-size:14.5px;line-height:1.5;word-wrap:break-word;overflow-wrap:anywhere}
.smp-app .smp-cm-body a{color:var(--smp-primary,#4f46e5)}
.smp-app .smp-cm-del{margin:0;font-style:italic;color:#94a3b8;font-size:13.5px}
.smp-app .smp-at{background:#fef3c7;color:#92400e;border-radius:5px;padding:0 3px;font-weight:600}
.smp-app .smp-cm-quote{display:block;margin:2px 0 4px;padding:3px 10px;border-left:3px solid #c7d2fe;color:#64748b;font-size:13px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-app .smp-cm-img img{display:block;max-width:min(320px,100%);max-height:260px;border-radius:12px;margin-top:6px;border:1px solid var(--smp-line,#e5e7eb)}
.smp-app .smp-cm-file{display:inline-flex;align-items:center;gap:8px;margin-top:6px;padding:8px 12px;border:1px solid var(--smp-line,#e5e7eb);border-radius:10px;text-decoration:none;color:#0f172a;font-weight:600;font-size:13.5px;background:#f8fafc}
.smp-app .smp-rxs{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}
.smp-app .smp-rx{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;border:1px solid var(--smp-line,#e5e7eb);background:#fff;font-size:13px;cursor:pointer}
.smp-app .smp-rx b{font-size:12px;color:#475569}.smp-app .smp-rx.is-me{border-color:#a5b4fc;background:#eef2ff}
.smp-app .smp-cm-acts{position:absolute;right:14px;top:-12px;display:none;gap:2px;padding:3px;background:#fff;border:1px solid var(--smp-line,#e5e7eb);border-radius:10px;box-shadow:0 4px 12px rgba(15,23,42,.08)}
.smp-app .smp-cm:hover .smp-cm-acts{display:flex}
.smp-app .smp-cm-acts button{width:30px;height:28px;border:0;background:transparent;border-radius:7px;cursor:pointer;font-size:15px}.smp-app .smp-cm-acts button:hover{background:#f1f5f9}
.smp-app .smp-rx-pick{position:absolute;z-index:40;display:flex;gap:2px;padding:6px;background:#fff;border:1px solid var(--smp-line,#e5e7eb);border-radius:999px;box-shadow:0 10px 30px rgba(15,23,42,.18)}
.smp-app .smp-rx-pick[hidden]{display:none}.smp-app .smp-rx-pick button{width:34px;height:34px;border:0;background:transparent;border-radius:50%;font-size:19px;cursor:pointer}.smp-app .smp-rx-pick button:hover{background:#f1f5f9}
.smp-app .smp-chat-comp{position:relative;padding:10px 14px 14px;border-top:1px solid var(--smp-line,#e5e7eb)}
.smp-app .smp-chat-row{display:flex;align-items:flex-end;gap:8px;padding:6px;border:1px solid #cbd5e1;border-radius:14px;background:#fff}
.smp-app .smp-chat-row:focus-within{border-color:var(--smp-primary,#4f46e5);box-shadow:0 0 0 3px rgba(79,70,229,.12)}
.smp-app .smp-chat-row textarea{flex:1;border:0;outline:0;resize:none;font:inherit;font-size:15px;line-height:1.45;padding:7px 4px;max-height:160px;background:transparent}
.smp-app .smp-chat-attach{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;cursor:pointer;color:#64748b;flex:none}.smp-app .smp-chat-attach:hover{background:#f1f5f9}
.smp-app .smp-chat-attach input{display:none}
.smp-app .smp-chat-send{width:40px;height:38px;padding:0;justify-content:center;flex:none;border-radius:10px}
.smp-app .smp-chat-replying,.smp-app .smp-chat-filebar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;padding:6px 10px;border-radius:10px;background:#eef2ff;color:#3730a3;font-size:13px}
.smp-app .smp-chat-replying[hidden],.smp-app .smp-chat-filebar[hidden],.smp-app .smp-chat-mention[hidden]{display:none}
.smp-app .smp-chat-replying button,.smp-app .smp-chat-filebar button{border:0;background:transparent;cursor:pointer;color:inherit}
.smp-app .smp-chat-mention{position:absolute;left:14px;bottom:100%;margin-bottom:-6px;display:grid;min-width:220px;padding:6px;background:#fff;border:1px solid var(--smp-line,#e5e7eb);border-radius:12px;box-shadow:0 10px 30px rgba(15,23,42,.15)}
.smp-app .smp-chat-mention button{text-align:left;padding:7px 10px;border:0;background:transparent;border-radius:8px;cursor:pointer;font:inherit}.smp-app .smp-chat-mention button:hover{background:#f1f5f9}
.smp-app .smp-chat-join{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:16px;border-top:1px solid var(--smp-line,#e5e7eb);background:#f8fafc}.smp-app .smp-chat-join p{margin:0}
.smp-app .smp-ph-msg{display:inline-flex;margin-left:8px}
@media (max-width:760px){
  .smp-app .smp-chat{grid-template-columns:1fr;height:calc(100vh - 120px);border-radius:12px}
  .smp-app .smp-chat .smp-chat-main{display:none}.smp-app .smp-chat.is-open .smp-chat-main{display:flex}.smp-app .smp-chat.is-open .smp-chat-side{display:none}
  .smp-app .smp-chat-side{border-right:0}
  .smp-app .smp-chat-back{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:#334155}
  .smp-app .smp-cm-acts{display:flex;position:static;box-shadow:none;border:0;padding:0;margin-left:auto;opacity:.6;align-self:flex-start}
  .smp-app .smp-cm-acts button{width:26px;height:24px;font-size:13px}
  .smp-app .smp-chat-info-pop{left:8px;right:8px;width:auto}
}
.smp-app .smp-chl .smp-avatar{flex:none;width:22px;height:22px}
.smp-app .smp-chat-row textarea,.smp-app .smp-chat-row textarea:focus{border:0!important;box-shadow:none!important;background:transparent!important;min-height:0}
/* v3.8.0 — chat emoji picker + mini games */
.smp-app .smp-chat-tool{width:34px;height:36px;flex:none;border:0;background:transparent;border-radius:10px;font-size:19px;cursor:pointer;line-height:1}
.smp-app .smp-chat-tool:hover{background:#f1f5f9}
.smp-app .smp-emoji-pop,.smp-app .smp-game-menu{position:absolute;z-index:45;background:#fff;border:1px solid var(--smp-line,#e5e7eb);border-radius:16px;box-shadow:0 18px 44px rgba(15,23,42,.2)}
.smp-app .smp-emoji-pop[hidden],.smp-app .smp-game-menu[hidden]{display:none}
.smp-app .smp-emoji-pop{width:330px;max-width:calc(100% - 16px)}
.smp-app .smp-ep-tabs{display:flex;gap:2px;padding:6px;border-bottom:1px solid var(--smp-line,#e5e7eb);overflow-x:auto}
.smp-app .smp-ep-tabs button{flex:none;width:36px;height:32px;border:0;border-radius:8px;background:transparent;font-size:18px;cursor:pointer;opacity:.6}
.smp-app .smp-ep-tabs button.is-on{background:#eef2ff;opacity:1}
.smp-app .smp-ep-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px;max-height:230px;overflow:auto}
.smp-app .smp-ep-grid button{height:36px;border:0;border-radius:8px;background:transparent;font-size:22px;cursor:pointer;padding:0}
.smp-app .smp-ep-grid button:hover{background:#f1f5f9;transform:scale(1.15)}
.smp-app .smp-game-menu{display:grid;gap:2px;padding:8px;width:240px}
.smp-app .smp-game-menu p{margin:2px 8px 6px;font-size:12px;color:#64748b}
.smp-app .smp-game-menu button{display:flex;align-items:center;gap:10px;padding:9px 10px;border:0;border-radius:10px;background:transparent;font:inherit;font-weight:600;font-size:14px;cursor:pointer;text-align:left}
.smp-app .smp-game-menu button:hover{background:#f1f5f9}.smp-app .smp-game-menu button span{width:42px;font-size:18px;text-align:center}
.smp-app .smp-game{display:inline-block;margin-top:6px;padding:12px 14px;border-radius:16px;background:linear-gradient(135deg,#eef2ff,#fdf2f8);border:1px solid #e0e7ff;min-width:230px;max-width:100%}
.smp-app .smp-game-top{display:flex;align-items:center;gap:8px;font-size:14px}.smp-app .smp-game-ico{font-size:18px}
.smp-app .smp-game-vs{margin:4px 0 8px;font-size:13px;color:#475569}
.smp-app .smp-game-st{margin:8px 0 0;font-size:13.5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.smp-app .smp-game-big{font-size:56px;line-height:1.1;text-align:center;margin:6px 0 0}
.smp-app .smp-coin{animation:smpflip .7s ease-out}@keyframes smpflip{0%{transform:rotateY(0)}100%{transform:rotateY(720deg)}}
.smp-app .smp-ttt{display:grid;grid-template-columns:repeat(3,58px);gap:6px}
.smp-app .smp-ttt-c{height:58px;border:0;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1px #e2e8f0;font-size:28px;font-weight:800;cursor:pointer;color:#0f172a}
.smp-app .smp-ttt-c:not([disabled]):hover{background:#eef2ff;box-shadow:inset 0 0 0 2px #a5b4fc}
.smp-app .smp-ttt-c[disabled]{cursor:default}.smp-app .smp-ttt-c.is-x{color:#4f46e5}.smp-app .smp-ttt-c.is-o{color:#db2777}
.smp-app .smp-ttt-c.is-win{background:#fef9c3;box-shadow:inset 0 0 0 2px #facc15}
.smp-app .smp-rps-picks{display:flex;gap:8px}
.smp-app .smp-rps-b{width:58px;height:58px;border:0;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px #e2e8f0;font-size:30px;cursor:pointer;transition:transform .12s}
.smp-app .smp-rps-b:hover{transform:translateY(-2px) scale(1.06);box-shadow:inset 0 0 0 2px #a5b4fc}
.smp-app .smp-rps-reveal{display:flex;align-items:center;gap:14px}.smp-app .smp-rps-reveal span{display:flex;flex-direction:column;align-items:center;font-size:12.5px;color:#475569}.smp-app .smp-rps-reveal b{font-size:36px}.smp-app .smp-rps-reveal i{color:#94a3b8;font-style:normal;font-weight:700}
@media (max-width:760px){.smp-app .smp-chat-tool[data-tool=games]{width:30px}.smp-app .smp-ep-grid{grid-template-columns:repeat(7,1fr)}}
.smp-app .smp-game-menu button span{width:58px;white-space:nowrap;font-size:16px;flex:none}
.smp-app .smp-chat-noowner{margin-left:26px;align-items:flex-start!important}.smp-app .smp-chat-noowner span{display:flex;flex-direction:column}.smp-app .smp-chat-noowner small{font-size:12px;font-weight:400}
.smp-app form:has(input[name=kind][value=public]:checked) .smp-chat-noowner{display:none}
/* v3.9.0 — calls, paste screenshots, draw & guess */
.smp-app .smp-chat-callb{width:38px;height:36px;flex:none;border:1px solid var(--smp-line,#e5e7eb);border-radius:10px;background:#fff;font-size:17px;cursor:pointer}
.smp-app .smp-chat-callb:hover{background:#eef2ff;border-color:#c7d2fe}
.smp-app .smp-call{display:flex;align-items:center;gap:12px;margin-top:6px;padding:10px 14px;border-radius:14px;background:#f1f5f9;border:1px solid #e2e8f0;max-width:420px}
.smp-app .smp-call.is-live{background:linear-gradient(135deg,#dcfce7,#e0f2fe);border-color:#86efac}
.smp-app .smp-call>div{flex:1;min-width:0}.smp-app .smp-call strong{display:block}.smp-app .smp-call small{color:#64748b;font-size:12.5px}
.smp-app .smp-call-ico{font-size:24px}.smp-app .smp-call.is-live .smp-call-ico{animation:smpring 1.2s ease-in-out infinite}
@keyframes smpring{0%,100%{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(14deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(8deg)}}
.smp-app .smp-chat-thumb{width:34px;height:34px;object-fit:cover;border-radius:6px;vertical-align:middle}
.smp-app .smp-chat-main.is-drop{outline:3px dashed #818cf8;outline-offset:-8px;background:#eef2ff}
.smp-app .smp-game-draw{min-width:280px;width:min(440px,100%)}
.smp-app .smp-dg{position:relative;margin:6px 0}
.smp-app .smp-dg canvas{display:block;width:100%;aspect-ratio:600/420;height:auto;background:#fff;border-radius:12px;box-shadow:inset 0 0 0 1px #e2e8f0;touch-action:none}
.smp-app .smp-dg[data-role=draw] canvas{cursor:crosshair}
.smp-app .smp-dg-time{position:absolute;top:8px;right:8px;padding:3px 9px;border-radius:999px;background:rgba(15,23,42,.75);color:#fff;font-size:12.5px}
.smp-app .smp-dg-word{margin:4px 0;font-size:13.5px}.smp-app .smp-dg-word small{color:#64748b}
.smp-app .smp-dg-tools{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.smp-app .smp-dg-tools button{width:26px;height:26px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #cbd5e1;cursor:pointer;padding:0}
.smp-app .smp-dg-tools button.is-on{box-shadow:0 0 0 2px #4f46e5}
.smp-app .smp-dg-tools .smp-dg-sz{background:#fff;border-radius:8px;width:30px;font-size:14px}
.smp-app .smp-dg-tools .smp-dg-clr{width:auto;border-radius:8px;padding:0 10px;background:#fff;font-size:12.5px;font-weight:600}
.smp-app .smp-dg-guess{display:flex;gap:6px;margin-top:4px}.smp-app .smp-dg-guess input{flex:1;min-width:0;height:34px;padding:0 10px;border:1px solid #cbd5e1;border-radius:10px;font:inherit}
.smp-app .smp-dg-guesses{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:2px;font-size:13px;color:#475569}.smp-app .smp-dg-guesses li.is-ok{color:#15803d;font-weight:700}
/* v4.0.0 — phone tab bar */
.smp-app .smp-tabbar{display:none}
@media (max-width:1024px){
  .smp-app .smp-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:9000;display:flex;justify-content:space-around;align-items:stretch;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--smp-line,#e5e7eb);box-shadow:0 -6px 20px rgba(15,23,42,.06)}
  .smp-app .smp-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:48px;padding:4px 2px;border-radius:12px;color:#64748b;text-decoration:none;font-size:11px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .smp-app .smp-tab .smp-tab-ico{position:relative;display:grid;place-items:center;width:44px;height:28px;border-radius:999px;transition:background .15s}
  .smp-app .smp-tab .smp-ico{width:22px;height:22px}
  .smp-app .smp-tab.is-on{color:var(--smp-primary,#4f46e5)}
  .smp-app .smp-tab.is-on .smp-tab-ico{background:rgba(79,70,229,.12)}
  .smp-app .smp-tab em{position:absolute;top:-4px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-style:normal;font-size:10.5px;font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px #fff}
  .smp-app.has-tabbar .smp-content{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
  .smp-app .smp-burger{display:none}
  .smp-app .smp-chat{height:calc(100vh - 190px);height:calc(100dvh - 190px - env(safe-area-inset-bottom));min-height:420px}
}
@media print{.smp-app .smp-tabbar{display:none!important}}
/* v4.0.0 — compact view (per person) */
.smp-app.is-compact{font-size:13.5px}
.smp-app.is-compact .smp-content{padding:12px 18px 28px;gap:12px}
.smp-app.is-compact .smp-card,.smp-app.is-compact .smp-card-section{padding:12px 14px;border-radius:10px}
.smp-app.is-compact .smp-card-head{margin-bottom:8px}
.smp-app.is-compact .smp-card-head h3{font-size:14.5px}.smp-app.is-compact .smp-card-head p{font-size:12px}
.smp-app.is-compact .smp-dash-grid,.smp-app.is-compact .smp-col{gap:10px}
.smp-app.is-compact .smp-stats{gap:8px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.smp-app.is-compact .smp-stat{padding:9px 11px;gap:9px}.smp-app.is-compact .smp-stat strong{font-size:18px}
.smp-app.is-compact .smp-table th,.smp-app.is-compact .smp-table td{padding:5px 8px;font-size:13px}
.smp-app.is-compact .smp-topbar{min-height:48px;padding:6px 18px}
.smp-app.is-compact .smp-tb-title h1{font-size:17px}
.smp-app.is-compact .smp-sb-link{padding:5px 10px;font-size:13px}.smp-app.is-compact .smp-sb-group{margin-top:10px}
.smp-app.is-compact .smp-mini-list li{padding-top:6px;padding-bottom:6px}
.smp-app.is-compact .smp-pay-emp>summary,.smp-app.is-compact .smp-pe-total{padding-top:7px;padding-bottom:7px}
.smp-app.is-compact .smp-cm{padding-top:2px;padding-bottom:2px;margin-top:3px}.smp-app.is-compact .smp-cm-body{font-size:13.5px}
.smp-app.is-compact .smp-tw-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
@media (min-width:1025px){.smp-app.is-compact .smp-btn{padding-top:6px;padding-bottom:6px}.smp-app.is-compact .smp-field input,.smp-app.is-compact .smp-field select{min-height:34px}}
@media (max-width:1024px){.smp-app.is-compact .smp-content{padding:10px 10px calc(92px + env(safe-area-inset-bottom))}}
.smp-app .smp-display-opts{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.smp-app.is-compact .smp-fun{padding:8px}.smp-app.is-compact .smp-fun-cover{height:96px}.smp-app.is-compact .smp-fun-id{margin-top:-34px;padding:0 16px 10px}
.smp-app.is-compact .smp-fun-id .smp-avatar.xl{width:72px;height:72px;font-size:24px;border-width:3px}.smp-app.is-compact .smp-fun-id h2{font-size:19px}
.smp-app.is-compact .smp-fun .smp-card{margin-bottom:10px}.smp-app.is-compact .smp-empty-box{padding:10px 8px}
/* v4.1.0 — merged pages */
.smp-app .smp-chl-meet span{display:flex;flex-direction:column}.smp-app .smp-chl-meet small{font-size:11.5px;opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.smp-app .smp-chl-meet.is-live{background:#dcfce7;color:#166534}
.smp-app a.smp-chat-meetlink{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:9px;color:#64748b;font-size:14px;text-decoration:none}
.smp-app a.smp-chat-meetlink:hover{background:#eef2f7;color:#0f172a}.smp-app a.smp-chat-meetlink .smp-ico{width:15px;height:15px}
.smp-app .smp-link-tabs{margin-bottom:4px}
.smp-app .smp-chat-mention button.is-on{background:#eef2ff;color:#3730a3}
/* v4.1.0 — GIFs */
.smp-app .smp-chat-gifb{font-size:11.5px!important;font-weight:800;letter-spacing:.04em;color:#475569;width:38px!important}
.smp-app .smp-chat-gifb::before{content:"";}
.smp-app .smp-gif-pop{position:absolute;z-index:45;width:360px;max-width:calc(100% - 16px);background:#fff;border:1px solid var(--smp-line,#e5e7eb);border-radius:16px;box-shadow:0 18px 44px rgba(15,23,42,.2);overflow:hidden}
.smp-app .smp-gif-pop[hidden]{display:none}
.smp-app .smp-gif-search{padding:8px;border-bottom:1px solid var(--smp-line,#e5e7eb)}
.smp-app .smp-gif-search input{width:100%;height:36px;padding:0 12px;border:1px solid #cbd5e1;border-radius:10px;font:inherit}
.smp-app .smp-gif-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:8px;max-height:300px;overflow:auto}
.smp-app .smp-gif-grid button{padding:0;border:0;border-radius:10px;overflow:hidden;cursor:pointer;background:#f1f5f9;aspect-ratio:4/3}
.smp-app .smp-gif-grid button:hover{outline:3px solid #a5b4fc}
.smp-app .smp-gif-grid img{width:100%;height:100%;object-fit:cover;display:block}
.smp-app .smp-gif-h{grid-column:1/-1;margin:6px 2px 0;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8}
.smp-app .smp-gif-none{grid-column:1/-1;margin:8px}
.smp-app .smp-gif-foot{margin:0;padding:0 10px 8px;font-size:11px;color:#94a3b8;text-align:right}.smp-app .smp-gif-foot:empty{display:none}
.smp-app .smp-cm-gif img{display:block;max-width:min(260px,100%);border-radius:12px;margin-top:4px}
@media (max-width:760px){.smp-app .smp-gif-grid{grid-template-columns:repeat(2,1fr)}.smp-app .smp-chat-row{gap:4px}.smp-app .smp-chat-tool{width:30px}}
/* v4.2.0 — foldable cards + compact by default */
.smp-app .smp-foldable>.smp-card-head{cursor:pointer;-webkit-user-select:none;user-select:none}
.smp-app .smp-fold-btn{display:inline-flex;align-items:center;gap:6px;margin-left:8px;padding:0 4px;height:28px;border:0;background:transparent;cursor:pointer;color:#94a3b8;flex:none;align-self:flex-start}
.smp-app .smp-fold-btn i{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-4px;transition:transform .15s}
.smp-app .smp-fold-btn em{font-style:normal;font-size:11.5px;font-weight:700;display:none}
.smp-app .smp-foldable.is-folded .smp-fold-btn em:not(:empty){display:inline-block;background:#eef2ff;color:#4338ca;border-radius:999px;padding:1px 7px}
.smp-app .smp-foldable.is-folded .smp-fold-btn i{transform:rotate(-45deg);margin-top:0}
.smp-app .smp-foldable.is-folded>:not(.smp-card-head){display:none!important}
.smp-app .smp-foldable.is-folded>.smp-card-head{margin-bottom:0}
.smp-app .smp-foldable.is-folded .smp-card-head p{display:none}
.smp-app .smp-foldable.is-folded .smp-card-actions{display:none}
.smp-app .smp-card-head{display:flex;align-items:flex-start}.smp-app .smp-card-head>div:first-child{flex:1;min-width:0}
.smp-app .smp-clock-notes{margin:8px 0}.smp-app .smp-clock-notes>summary{cursor:pointer;font-size:13.5px;font-weight:600;color:#475569;padding:6px 0;list-style:none}
.smp-app .smp-clock-notes>summary::-webkit-details-marker{display:none}.smp-app .smp-clock-notes>summary small{font-weight:400;color:#94a3b8}
/* compact: tighter on phones too (tap targets stay ≥ 40px) */
.smp-app.is-compact .smp-bars{height:120px}
.smp-app.is-compact .smp-clock-face{padding:12px}.smp-app.is-compact .smp-clock-face strong{font-size:34px}
.smp-app.is-compact .smp-today li,.smp-app.is-compact .smp-attention li,.smp-app.is-compact .smp-mini-list li,.smp-app.is-compact .smp-shift-list li{padding:6px 2px;gap:9px}
.smp-app.is-compact .smp-avatar.sm{width:30px;height:30px;font-size:11px}
.smp-app.is-compact .smp-news li,.smp-app.is-compact .smp-news-item{padding-top:8px;padding-bottom:8px}
@media (max-width:1024px){
  .smp-app.is-compact .smp-card,.smp-app.is-compact .smp-card-section{padding:11px 12px}
  .smp-app.is-compact .smp-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .smp-app.is-compact .smp-stat{padding:8px 10px}.smp-app.is-compact .smp-stat strong{font-size:17px}.smp-app.is-compact .smp-stat small{font-size:11px}
  .smp-app.is-compact .smp-stat-ico{display:none}
  .smp-app.is-compact .smp-dash-grid{grid-template-columns:1fr}
  .smp-app.is-compact .smp-topbar{min-height:48px}
}
.smp-app .smp-foldable.is-folded{padding-top:10px;padding-bottom:10px}.smp-app .smp-foldable.is-folded h3{font-size:14.5px}
.smp-app .smp-payrun-why{display:block;margin:6px 0;font-size:12px;max-width:260px}.smp-app .smp-payrun-cta{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
/* v4.3.1 — phone/tablet menu opens as a bottom sheet above the "More" tab */
@media (max-width:1024px){
  .smp-app .smp-sidebar{top:auto;left:0;right:0;bottom:0;width:auto;height:auto;max-height:min(82vh,680px);max-height:min(82dvh,680px);border-radius:22px 22px 0 0;transform:translateY(105%);transition:transform .26s cubic-bezier(.2,.8,.2,1);padding:8px 12px calc(14px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;box-shadow:0 -12px 40px rgba(0,0,0,.3)}
  .smp-app .smp-nav-toggle:checked~.smp-sidebar{transform:none}
  .smp-app .smp-sidebar::before{content:"";display:block;flex:none;width:42px;height:5px;border-radius:99px;background:rgba(255,255,255,.35);margin:2px auto 10px}
  .smp-app .smp-sb-brand{display:none}
  .smp-app .smp-sb-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;flex:none}
  .smp-app .smp-sb-group{grid-column:1/-1;margin:6px 4px 0}
  .smp-app .smp-sb-link{flex-direction:column;justify-content:center;gap:6px;min-height:74px;padding:10px 4px;text-align:center;font-size:12.5px;line-height:1.2;border-radius:14px;background:rgba(255,255,255,.06)}
  .smp-app .smp-sb-link .smp-ico{width:22px;height:22px}
  .smp-app .smp-sb-link em{position:absolute;top:6px;right:8px;margin:0}
  .smp-app .smp-sb-link.is-active::before{display:none}
  .smp-app .smp-sb-user{margin-top:12px;flex:none}
}
@media (max-width:360px){.smp-app .smp-sb-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* v4.5.0 — read aloud, talk to type, auto-read */
.smp-app .smp-say.is-on{background:#dcfce7!important;border-radius:8px;animation:smppulse 1s ease-in-out infinite}
@keyframes smppulse{50%{transform:scale(1.12)}}
.smp-app .smp-say-inline{margin-left:6px;padding:0 6px;height:24px;border:1px solid var(--smp-line,#e5e7eb);border-radius:8px;background:#fff;cursor:pointer;font-size:13px;vertical-align:middle}
.smp-app .smp-say-inline:hover{background:#eef2ff}
.smp-app .smp-chat-mic.is-on{background:#fee2e2!important;border-radius:50%;animation:smppulse 1s ease-in-out infinite}
.smp-app .smp-chat-mic[hidden]{display:none}
.smp-app .smp-autoread.is-on{background:#dcfce7;border-color:#86efac}
.smp-app .smp-voice-lang{height:36px;padding:0 6px;border:1px solid var(--smp-line,#e5e7eb);border-radius:10px;background:#fff;font-size:13px;max-width:118px;cursor:pointer}
@media (max-width:760px){.smp-app .smp-voice-lang{max-width:58px;font-size:12px;padding:0 2px}}
/* v4.5.3 — pay an older unpaid week from the Payroll breakdown */
.smp-oldpay{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:10px 12px;margin:0 0 12px}
.smp-oldpay>span{flex:1;min-width:200px;font-size:13px}.smp-oldpay>svg{width:18px;height:18px;color:#c2410c;flex:none}
.smp-oldpay form{margin:0}
/* v4.5.4 — phone menu: "More" stays on top to close it, Sign out moved to the top of the sheet, swipe down to close */
.smp-app .smp-sb-out span{display:none}
@media (max-width:1024px){
  .smp-app .smp-tabbar{z-index:100001}
  .smp-app .smp-sidebar{bottom:calc(61px + env(safe-area-inset-bottom));max-height:calc(100dvh - 120px);border-radius:22px 22px 0 0;box-shadow:0 -12px 40px rgba(0,0,0,.3);touch-action:pan-y}
  .smp-app .smp-sidebar::before{width:48px;height:5px;margin:4px auto 12px}
  .smp-app .smp-sb-user{order:-1;margin:0 0 10px;padding:4px 4px 12px;border-top:0;border-bottom:1px solid rgba(255,255,255,.1)}
  .smp-app .smp-sidebar::before{order:-2}
  .smp-app .smp-sb-user a.smp-sb-out{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.08);color:#fecaca;font-size:12.5px;font-weight:600}
  .smp-app .smp-sb-out span{display:inline}
  .smp-app .smp-sb-out .smp-ico{width:16px;height:16px}
  .smp-app .smp-tab-more .smp-close-t,.smp-app .smp-tab-more .smp-tab-x{display:none}
  .smp-app .smp-nav-toggle:checked~.smp-tabbar .smp-tab-more{color:var(--smp-primary,#4f46e5)}
  .smp-app .smp-nav-toggle:checked~.smp-tabbar .smp-tab-more .smp-tab-ico{background:rgba(79,70,229,.12)}
  .smp-app .smp-nav-toggle:checked~.smp-tabbar .smp-tab-more .smp-more-t,.smp-app .smp-nav-toggle:checked~.smp-tabbar .smp-tab-more .smp-tab-ico>.smp-ico,.smp-app .smp-nav-toggle:checked~.smp-tabbar .smp-tab-more .smp-tab-ico>em{display:none}
  .smp-app .smp-nav-toggle:checked~.smp-tabbar .smp-tab-more .smp-close-t{display:inline}
  .smp-app .smp-nav-toggle:checked~.smp-tabbar .smp-tab-more .smp-tab-x{display:block;font-size:18px;line-height:1}
  html.smp-sheet-open,html.smp-sheet-open body{overflow:hidden}
}
/* v4.7.0 — Home company workspace move */
.smp-app .smp-slug{display:flex;align-items:stretch;border:1px solid var(--smp-line,#d9dee8);border-radius:10px;overflow:hidden;background:#fff}
.smp-app .smp-slug em{display:flex;align-items:center;padding:0 8px;background:#f6f7fb;color:#64748b;font-style:normal;font-size:13px;white-space:nowrap}
.smp-app .smp-slug input{border:0!important;border-radius:0!important;flex:1;min-width:80px;box-shadow:none!important}
.smp-app .smp-homeco-count td.num{width:90px}
.smp-app .smp-homeco-undo{margin-top:14px;border-top:1px solid var(--smp-line,#e5e7eb);padding-top:10px}.smp-app .smp-homeco-undo summary{cursor:pointer;font-weight:600;color:#b91c1c}
.smp-app .smp-homeco-undo form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}
/* v4.8.0 — Tasks: one checkbox per task, ticked = crossed out */
.smp-app .smp-tasks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.smp-app .smp-task{display:flex;align-items:flex-start;gap:12px;padding:11px 4px;border-bottom:1px solid var(--smp-line,#eef0f4)}
.smp-app .smp-task:last-child{border-bottom:0}
.smp-app .smp-task-form{margin:0;flex:none}
.smp-app .smp-task-box{position:relative;display:grid;place-items:center;width:26px;height:26px;margin-top:1px;cursor:pointer}
.smp-app .smp-task-box input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.smp-app .smp-task-box i{width:22px;height:22px;border:2px solid #c7cdd8;border-radius:7px;background:#fff;transition:.15s;display:grid;place-items:center}
.smp-app .smp-task-box input:checked+i{background:var(--smp-primary,#4f46e5);border-color:var(--smp-primary,#4f46e5)}
.smp-app .smp-task-box input:checked+i::after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translate(-1px,-1px)}
.smp-app .smp-task-box input:focus-visible+i{outline:3px solid rgba(79,70,229,.35);outline-offset:2px}
.smp-app .smp-task-box.is-locked{cursor:default;opacity:.55}
.smp-app .smp-task-body{flex:1;min-width:0}
.smp-app .smp-task-body strong{display:block;font-size:14.5px;font-weight:600;color:var(--smp-ink,#0f172a);line-height:1.35;transition:color .15s}
.smp-app .smp-task-note{margin:3px 0 0;font-size:13px;color:#475569}
.smp-app .smp-task-meta{display:block;margin-top:3px;font-size:12px;color:#64748b}
.smp-app .smp-task.is-done .smp-task-body strong{text-decoration:line-through;text-decoration-thickness:2px;color:#94a3b8}
.smp-app .smp-task.is-done .smp-task-note{text-decoration:line-through;color:#a3acb9}
.smp-app .smp-task-late{color:#dc2626;font-weight:600}.smp-app .smp-task-today{color:#b45309;font-weight:600}
.smp-app .smp-task-flag{font-style:normal;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;background:#ef4444;border-radius:6px;padding:2px 6px;vertical-align:2px}
.smp-app .smp-task.is-urgent:not(.is-done){background:linear-gradient(90deg,rgba(239,68,68,.06),transparent 60%)}
.smp-app .smp-task-del{opacity:.5}.smp-app .smp-task:hover .smp-task-del{opacity:1}
.smp-app .smp-task-add{padding:0}.smp-app .smp-task-add>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:14px 18px;font-weight:700;color:var(--smp-primary,#4f46e5)}
.smp-app .smp-task-add>summary::-webkit-details-marker{display:none}.smp-app .smp-task-add>form{padding:0 18px 18px}
.smp-app .smp-task-chips{display:flex;flex-wrap:wrap;gap:8px}
.smp-app .smp-task-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--smp-line,#d9dee8);border-radius:999px;background:#fff;font-size:13px;cursor:pointer}
.smp-app .smp-task-chip:has(input:checked){background:rgba(79,70,229,.08);border-color:var(--smp-primary,#4f46e5);color:var(--smp-primary,#4f46e5)}
.smp-app .smp-task-all{font-weight:700}
.smp-app .smp-task-filter{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:8px}
.smp-app .smp-task-filter select{height:36px;border:1px solid var(--smp-line,#d9dee8);border-radius:10px;padding:0 10px;background:#fff}
.smp-app .smp-seg{display:inline-flex;border:1px solid var(--smp-line,#d9dee8);border-radius:10px;overflow:hidden}
.smp-app .smp-seg a{padding:7px 12px;font-size:13px;color:#475569;text-decoration:none;border-right:1px solid var(--smp-line,#d9dee8)}.smp-app .smp-seg a:last-child{border-right:0}
.smp-app .smp-seg a.is-on{background:var(--smp-primary,#4f46e5);color:#fff}
.smp-app .smp-task-empty{padding:10px 4px}
.smp-app .smp-task-add .smp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.smp-app .smp-task-add .smp-form-grid>.smp-span-2{grid-column:1/-1}
.smp-app .smp-task-add>form>.smp-btn{margin-top:12px}
@media (max-width:640px){.smp-app .smp-task-add .smp-form-grid{grid-template-columns:1fr}}
/* v4.8.2 — Tasks up front */
.smp-app .smp-tasks-top{margin-bottom:16px}.smp-app .smp-tasks-top .smp-tasks-card{border:1px solid rgba(79,70,229,.35);box-shadow:0 0 0 3px rgba(79,70,229,.07)}
.smp-app .smp-task-banner{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:10px 12px;border-radius:12px;background:#eef2ff;border:1px solid #c7d2fe;color:#3730a3;font-size:13.5px}
.smp-app .smp-task-banner>span{flex:1}.smp-app .smp-task-banner>.smp-ico{width:18px;height:18px;flex:none}
/* v4.8.3 — instant tap feedback */
.smp-loadbar{position:fixed;top:0;left:0;height:3px;width:0;z-index:100002;background:var(--smp-primary,#4f46e5);box-shadow:0 0 8px rgba(79,70,229,.6);opacity:0;pointer-events:none}
html.smp-loading .smp-loadbar{opacity:1;animation:smpload 2.5s cubic-bezier(.1,.7,.2,1) forwards}
@keyframes smpload{0%{width:0}30%{width:55%}100%{width:92%}}
html.smp-loading .smp-app .smp-content{opacity:.55;transition:opacity .15s .12s}
.smp-app .smp-sb-link,.smp-app .smp-tab{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.smp-app .smp-sb-link:active,.smp-app .smp-tab:active{transform:scale(.97)}
/* v4.9.0 — trust features: outage, check-in, offline */
.smp-app .smp-outage{margin:10px 0 0;border:1px dashed var(--smp-line,#d9dee8);border-radius:12px;padding:8px 12px;background:#fffbeb}
.smp-app .smp-outage>summary{cursor:pointer;font-weight:600;font-size:13.5px;color:#92400e;list-style:none}.smp-app .smp-outage>summary::-webkit-details-marker{display:none}
.smp-app .smp-outage p{margin:6px 0 8px;font-size:12.5px}
.smp-app .smp-outage-btns{display:flex;gap:8px;flex-wrap:wrap}.smp-app .smp-outage-btns form{margin:0}
.smp-app .smp-outage-on{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 0;padding:10px 12px;border-radius:12px;background:#fef3c7;border:1px solid #fcd34d;color:#78350f;font-size:13.5px}
.smp-app .smp-outage-on>span{flex:1;min-width:180px}.smp-app .smp-outage-on form{margin:0}
.smp-app .smp-clock-outage .smp-clock-face strong{color:#b45309}
.smp-app .smp-checkin{margin:12px 0;padding:12px;border:1px solid var(--smp-line,#e5e7eb);border-radius:12px;background:#fafbff}
.smp-app .smp-checkin-h{margin:0 0 8px;font-weight:700;font-size:14px}
.smp-app .smp-checkin-tasks{list-style:none;margin:4px 0;padding:0;display:flex;flex-direction:column;gap:6px}
.smp-app .smp-checkin-tasks label{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;cursor:pointer}
.smp-app .smp-checkin-tasks li.is-done{color:#64748b}
.smp-app .smp-checkin .smp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (max-width:640px){.smp-app .smp-checkin .smp-form-grid{grid-template-columns:1fr}}
.smp-app .smp-checkin-more summary{cursor:pointer;font-size:13px;color:#475569;margin-top:6px}.smp-app .smp-checkin-more textarea{margin-top:6px;width:100%}
.smp-app .smp-worknote-next{display:block;font-size:12.5px;color:#3730a3;margin-top:2px}.smp-app .smp-worknote-block{display:block;font-size:12.5px;color:#b45309;font-weight:600;margin-top:2px}
.smp-offline-note{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:#ecfeff;border:1px solid #a5f3fc;color:#155e75;font-size:13.5px}
/* v4.9.1 — task list preview */
.smp-app .smp-task-preview{background:#f8fafc;border:1px dashed var(--smp-line,#d9dee8);border-radius:12px;padding:10px 12px}
.smp-app .smp-task-preview ul{list-style:none;margin:6px 0 8px;padding:0;display:flex;flex-direction:column;gap:4px;max-height:220px;overflow:auto}
.smp-app .smp-task-preview li{position:relative;padding-left:26px;font-size:13.5px}
.smp-app .smp-task-preview li::before{content:"";position:absolute;left:0;top:1px;width:16px;height:16px;border:2px solid #c7cdd8;border-radius:5px;background:#fff}
/* v4.9.2 — checklist editor */
.smp-app .smp-task-editor{display:flex;flex-direction:column;border:1px solid var(--smp-line,#d9dee8);border-radius:12px;background:#fff;padding:4px 10px}
.smp-app .smp-task-editor:focus-within{border-color:var(--smp-primary,#4f46e5);box-shadow:0 0 0 3px rgba(79,70,229,.12)}
.smp-app .smp-te-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid #f1f3f7}.smp-app .smp-te-row:last-child{border-bottom:0}
.smp-app .smp-te-row i{flex:none;width:18px;height:18px;border:2px solid #c7cdd8;border-radius:6px}
.smp-app .smp-te-row input{flex:1;border:0!important;box-shadow:none!important;outline:0;padding:10px 0!important;font-size:14.5px;background:transparent;min-width:0}
/* v4.9.3 — ticking a task anywhere crosses it out right away */
.smp-app .smp-checkin-tasks label:has(input:checked){text-decoration:line-through;text-decoration-thickness:2px;color:#94a3b8}
.smp-app .smp-checkin-tasks label:has(input:checked) .smp-task-flag{display:none}
.smp-app .smp-task-box input:checked~i{background:var(--smp-primary,#4f46e5)}
.smp-app .smp-task:has(.smp-task-box input:checked) .smp-task-body strong{text-decoration:line-through;text-decoration-thickness:2px;color:#94a3b8}
.smp-app .smp-task:has(.smp-task-box input:checked) .smp-task-flag{display:none}
.smp-app .smp-checkin-tasks li.is-saving{opacity:.6}
.smp-app .smp-resend-list{list-style:none;margin:0;padding:0}.smp-app .smp-resend-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--smp-line,#eef0f4)}.smp-app .smp-resend-list li:last-child{border-bottom:0}.smp-app .smp-resend-list small{display:block}
/* v4.9.7 — in-app photo viewer */
.smp-viewer{position:fixed;inset:0;z-index:100010;background:rgba(5,8,20,.94);display:flex;flex-direction:column}
.smp-viewer[hidden]{display:none}
.smp-viewer-bar{display:flex;justify-content:space-between;align-items:center;padding:calc(10px + env(safe-area-inset-top)) 14px 10px}
.smp-viewer-bar a,.smp-viewer-bar button{color:#fff;background:rgba(255,255,255,.12);border:0;border-radius:999px;padding:8px 14px;font-size:14px;text-decoration:none;cursor:pointer}
.smp-viewer-stage{flex:1;display:flex;align-items:center;justify-content:center;overflow:auto;touch-action:pinch-zoom;padding:10px}
.smp-viewer-stage img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px}
html.smp-viewer-open,html.smp-viewer-open body{overflow:hidden}
/* v4.9.8 — desktop: tidy clock card + check-in on the manager dashboard */
.smp-app .smp-mgr-clock .smp-clock>.smp-clockout{flex:1 1 100%;margin:0}
.smp-app .smp-mgr-clock .smp-clock>.smp-outage{margin:0;flex:none}
.smp-app .smp-mgr-clock .smp-clock>.smp-outage[open]{flex:1 1 100%}
.smp-app .smp-mgr-clock .smp-clock>.smp-outage-on{flex:1 1 100%;margin:0}
.smp-app .smp-mgr-clock .smp-clock-actions{margin:0}
.smp-app .smp-checkin-tasks{max-height:380px;overflow:auto;padding-right:4px}
.smp-app .smp-checkin-tasks label{line-height:1.4}
@media (min-width:1100px){
  .smp-app .smp-mgr-clock .smp-checkin{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:6px 28px;align-items:start;margin:0 0 12px}
  .smp-app .smp-mgr-clock .smp-checkin>.smp-checkin-h{grid-column:1/-1;margin:0}
  .smp-app .smp-mgr-clock .smp-checkin>.smp-checkin-done{grid-row:2/span 4;margin:0}
  .smp-app .smp-mgr-clock .smp-checkin:has(.smp-checkin-done)>:not(.smp-checkin-h):not(.smp-checkin-done){grid-column:2}
  .smp-app .smp-mgr-clock .smp-checkin:not(:has(.smp-checkin-done)){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .smp-app .smp-mgr-clock .smp-checkin .smp-form-grid{grid-template-columns:1fr;gap:8px}
  .smp-app .smp-mgr-clock .smp-checkin textarea[name=work_note]{min-height:64px}
  .smp-app .smp-mgr-clock .smp-clockout>button.smp-btn-danger{width:auto;min-width:220px;display:flex;margin-left:auto}
}
/* v4.9.9 — notifications bell + check page */
.smp-app .smp-push-btn.is-on i{display:none}
.smp-app .smp-notify-status{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.smp-app .smp-notify-status li{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--smp-line,#e5e7eb);border-radius:12px;background:#fff}
.smp-app .smp-notify-status li>div>b{display:block}
.smp-app .smp-notify-status li small{color:var(--smp-muted,#667085)}
.smp-app .smp-notify-status .dot{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700;color:#fff;background:#98a2b3;margin-top:1px}
.smp-app .smp-notify-status .ok .dot{background:#12b76a}.smp-app .smp-notify-status .bad .dot{background:#f04438}.smp-app .smp-notify-status .warn .dot{background:#f79009}
.smp-app .smp-notify-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.smp-app .smp-notify-log td small{display:block;color:var(--smp-muted,#667085)}
.smp-app .smp-notify-tips li{margin:4px 0}
/* v4.9.12 — payslip colors */
.smp-app .smp-pay-colors{border:0;padding:0;margin:0}
.smp-app .smp-pay-colors-row{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin:6px 0 8px}
.smp-app .smp-pay-colors-row label{display:inline-flex;align-items:center;gap:8px;font-size:13px}
.smp-app .smp-pay-colors-row input[type=color]{width:40px;height:32px;padding:2px;border:1px solid var(--smp-line,#e5e7eb);border-radius:8px;background:#fff}
/* v4.9.14 — chat photo that can't load: show a tappable placeholder instead of a broken icon */
.smp-app .smp-cm-img.is-broken{display:inline-flex;align-items:center;gap:6px;padding:10px 12px;border:1px dashed var(--smp-line,#d0d5dd);border-radius:10px;color:var(--smp-muted,#667085);font-size:13px}
.smp-app .smp-cm-img.is-broken img{display:none}
.smp-app .smp-cm-img.is-broken::after{content:"📷 Photo didn’t load — tap to open"}
/* v4.9.16 — phone calendars + task reminders */
.smp-app .smp-cal-add{position:relative;display:inline-block}
.smp-app .smp-cal-add>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font-size:12.5px;font-weight:600;color:var(--smp-primary);padding:4px 8px;border-radius:8px;border:1px solid var(--smp-line,#e5e7eb);background:#fff;white-space:nowrap}
.smp-app .smp-cal-add>summary::-webkit-details-marker{display:none}
.smp-app .smp-cal-menu{position:absolute;z-index:30;top:calc(100% + 4px);right:0;min-width:200px;background:#fff;border:1px solid var(--smp-line,#e5e7eb);border-radius:12px;box-shadow:0 10px 30px rgba(16,24,40,.14);padding:6px;display:grid}
.smp-app .smp-day-card .smp-cal-menu,.smp-app .smp-task .smp-cal-menu{left:0;right:auto}
.smp-app .smp-cal-menu a{padding:9px 10px;border-radius:8px;font-size:13.5px;color:inherit;text-decoration:none}
.smp-app .smp-cal-menu a:hover{background:var(--smp-primary-soft,#eef2ff)}
.smp-app .smp-day-card .smp-cal-add{margin:4px 0 2px}
.smp-app .smp-task-tools{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;align-items:center}
.smp-app .smp-task-remind>summary{list-style:none;cursor:pointer;font-size:12.5px;padding:4px 8px;border-radius:8px;border:1px solid var(--smp-line,#e5e7eb);background:#fff;display:inline-flex;gap:4px;align-items:center}
.smp-app .smp-task-remind>summary::-webkit-details-marker{display:none}
.smp-app .smp-task-remind[open] form{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.smp-app .smp-task-remind input[type=datetime-local]{padding:6px 8px;border:1px solid var(--smp-line,#e5e7eb);border-radius:8px;font:inherit;font-size:13px}
.smp-app .smp-cal-card>summary{cursor:pointer;font-weight:700;padding:14px 18px;list-style:none}
.smp-app .smp-cal-card>summary::-webkit-details-marker{display:none}
.smp-app .smp-cal-body{padding:0 18px 16px}
.smp-app .smp-cal-subs{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.smp-app .smp-cal-note{font-size:12.5px}
.smp-app .smp-cal-banner{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;margin:0 0 14px;border-radius:14px;background:#fff8eb;border:1px solid #fcd9a3;font-size:14px}
.smp-app .smp-cal-banner>div{flex:1;min-width:0}
.smp-app .smp-cal-banner ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px}
.smp-app .smp-cal-banner li{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
.smp-app .smp-cal-banner li>span{flex:1 1 100%}
.smp-app .smp-cal-banner small{flex-basis:100%;color:var(--smp-muted,#667085)}
/* v4.9.17 — task attachments */
.smp-app .smp-tf-pick{display:grid;gap:6px}
.smp-app .smp-tf-btn{position:relative;overflow:hidden;justify-self:start;cursor:pointer}
.smp-app .smp-tf-btn input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:0}
.smp-app .smp-tf-hint{font-size:12px}
.smp-app .smp-tf-prev{display:flex;flex-wrap:wrap;gap:8px}
.smp-app .smp-tf-prev:empty{display:none}
.smp-app .smp-tf-chip{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:4px 6px 4px 4px;border:1px solid var(--smp-line,#e5e7eb);border-radius:10px;background:#fff;font-size:12.5px}
.smp-app .smp-tf-chip img{width:44px;height:44px;object-fit:cover;border-radius:7px}
.smp-app .smp-tf-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}
.smp-app .smp-tf-chip button{border:0;background:none;font-size:14px;color:var(--smp-muted,#667085);cursor:pointer;padding:2px 4px}
.smp-app .smp-tf{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 2px;align-items:center}
.smp-app .smp-tf-img{display:block;width:96px;height:96px;border-radius:10px;overflow:hidden;border:1px solid var(--smp-line,#e5e7eb);background:#f2f4f7}
.smp-app .smp-tf-img img{width:100%;height:100%;object-fit:cover;display:block}
.smp-app .smp-tf-file{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--smp-line,#e5e7eb);border-radius:10px;font-size:13px;color:inherit;text-decoration:none;max-width:100%}
.smp-app .smp-tf-file span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}
.smp-app .smp-tf-file small{color:var(--smp-muted,#667085)}
.smp-app .smp-tf-hidden{display:inline-block;margin-top:6px;font-size:12.5px;color:var(--smp-muted,#667085)}
/* v4.9.18 — "✓ In calendar" */
.smp-app .smp-cal-add.is-added>summary,.smp-app .smp-cal-add.is-synced>summary{color:#067647;background:#ecfdf3;border-color:#abefc6}
.smp-app .smp-cal-add.is-stale>summary{color:#b54708;background:#fffaeb;border-color:#fedf89}
.smp-app .smp-cal-st{margin:2px 6px 6px;font-size:12.5px;color:#067647;line-height:1.4}
.smp-app .smp-cal-st small{color:var(--smp-muted,#667085)}
.smp-app .smp-cal-st.is-stale{color:#b54708}
.smp-app .smp-cal-conn{margin:0 0 8px;padding:8px 10px;border-radius:10px;background:#ecfdf3;color:#067647;font-size:13.5px}
.smp-app .smp-cal-conn.is-old{background:#fffaeb;color:#b54708}
.smp-app .smp-cal-card.is-on>summary{color:#067647}
/* v4.9.20 — Tasks timeline (Gantt) */
.smp-app .smp-tl-bar-top{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:12px}
.smp-app .smp-tl-nav{display:flex;gap:6px;margin-left:auto}
.smp-app .smp-tl-who select{padding:7px 10px;border:1px solid var(--smp-line,#e5e7eb);border-radius:10px;font:inherit;font-size:13.5px;background:#fff}
.smp-app .smp-tl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--smp-line,#e5e7eb);border-radius:12px;background:#fff}
.smp-app .smp-tl{display:grid;min-width:max-content;font-size:13px}
.smp-app .smp-tl-row{display:grid;grid-template-columns:minmax(170px,230px) repeat(var(--days),var(--cw));align-items:center;position:relative;min-height:34px;border-bottom:1px solid #f0f2f6}
.smp-app .smp-tl-label{grid-column:1;grid-row:1;position:sticky;left:0;z-index:2;background:#fff;padding:6px 10px;border-right:1px solid var(--smp-line,#e5e7eb);display:flex;align-items:center;gap:8px;min-width:0;height:100%;box-sizing:border-box}
.smp-app .smp-tl-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.smp-app .smp-tl-label small{color:var(--smp-muted,#667085);margin-left:auto;white-space:nowrap;font-size:11.5px}
.smp-app .smp-tl-task{flex-direction:column;align-items:flex-start;justify-content:center;gap:0;padding-left:18px}
.smp-app .smp-tl-task small{margin-left:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.smp-app .smp-tl-task.is-done span{text-decoration:line-through;color:var(--smp-muted,#667085)}
.smp-app .smp-tl-head{position:sticky;top:0;z-index:3;background:#f8f9fc;min-height:46px}
.smp-app .smp-tl-head .smp-tl-label{background:#f8f9fc;font-weight:600;font-size:12.5px}
.smp-app .smp-tl-day{grid-row:1;text-align:center;line-height:1.1;padding:4px 0;color:var(--smp-muted,#667085);position:relative;height:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}
.smp-app .smp-tl-day small{font-size:10px;text-transform:uppercase}
.smp-app .smp-tl-day b{font-size:12.5px;color:var(--smp-ink,#101828)}
.smp-app .smp-tl-day em{position:absolute;top:-1px;left:3px;font-style:normal;font-size:9.5px;font-weight:700;color:var(--smp-primary)}
.smp-app .smp-tl-day.is-we{background:#f1f3f8}
.smp-app .smp-tl-day.is-today{background:var(--smp-primary);border-radius:8px}
.smp-app .smp-tl-day.is-today b,.smp-app .smp-tl-day.is-today small{color:#fff}
.smp-app .smp-tl-group{background:#fbfbfe;min-height:38px}
.smp-app .smp-tl-group .smp-tl-label{background:#fbfbfe;font-size:13.5px}
.smp-app .smp-tl-now{grid-row:1;align-self:stretch;width:2px;background:var(--smp-primary);opacity:.35;justify-self:center;height:100%}
.smp-app .smp-tl-bar{grid-row:1;z-index:1;height:22px;margin:0 2px;border-radius:7px;background:hsl(var(--h),70%,88%);border-left:3px solid hsl(var(--h),55%,45%);color:hsl(var(--h),55%,22%);font-size:11.5px;font-weight:600;text-decoration:none;display:flex;align-items:center;padding:0 6px;overflow:hidden;white-space:nowrap;min-width:0}
.smp-app .smp-tl-bar span{overflow:hidden;text-overflow:ellipsis}
.smp-app .smp-tl-bar.is-urgent{background:#fff1e0;border-left-color:#f79009;color:#93370d}
.smp-app .smp-tl-bar.is-late{background:#fee4e2;border-left-color:#f04438;color:#912018}
.smp-app .smp-tl-bar.is-done{background:#e7f7ee;border-left-color:#12b76a;color:#05603a;opacity:.75}
.smp-app .smp-tl-bar.cut-l{border-top-left-radius:0;border-bottom-left-radius:0;border-left-style:dashed}
.smp-app .smp-tl-bar.cut-r{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}
.smp-app .smp-tl-bar:hover{filter:brightness(.96)}
.smp-app .smp-tl-legend{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:12px;color:var(--smp-muted,#667085);margin:10px 2px 0}
.smp-app .smp-tl-key{display:inline-block;width:18px;height:10px;border-radius:3px;background:#dfe3fb;border-left:3px solid var(--smp-primary);margin-right:-8px;vertical-align:middle}
.smp-app .smp-tl-key.is-urgent{background:#fff1e0;border-left-color:#f79009}.smp-app .smp-tl-key.is-late{background:#fee4e2;border-left-color:#f04438}.smp-app .smp-tl-key.is-done{background:#e7f7ee;border-left-color:#12b76a}
.smp-app .smp-tl-key.is-now{width:2px;background:var(--smp-primary);border:0;height:14px;margin-right:-6px}
.smp-app .smp-tl-empty{margin:14px 2px 0}
.smp-app .smp-task-dates>summary{list-style:none;cursor:pointer;font-size:12.5px;padding:4px 8px;border-radius:8px;border:1px solid var(--smp-line,#e5e7eb);background:#fff;display:inline-flex}
.smp-app .smp-task-dates>summary::-webkit-details-marker{display:none}
.smp-app .smp-tl-form{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-top:6px}
.smp-app .smp-tl-form label{display:grid;gap:3px;font-size:12px;color:var(--smp-muted,#667085)}
.smp-app .smp-tl-form input{padding:6px 8px;border:1px solid var(--smp-line,#e5e7eb);border-radius:8px;font:inherit;font-size:13px}
@media (max-width:640px){.smp-app .smp-tl-row{grid-template-columns:minmax(120px,140px) repeat(var(--days),var(--cw))}.smp-app .smp-tl-nav{margin-left:0}}
.smp-app .smp-tl-label{overflow:hidden}
.smp-app .smp-tl-task span,.smp-app .smp-tl-task small{max-width:100%;display:block}
.smp-app .smp-tl-group .smp-tl-label b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
@media (max-width:640px){.smp-app .smp-tl-group .smp-tl-label small{display:none}}
/* v4.9.21 — To do / Done + chat pins */
.smp-app .smp-task-seg{margin:0 0 12px}
.smp-app .smp-task-seg b{display:inline-block;min-width:18px;margin-left:4px;padding:0 6px;border-radius:999px;background:rgba(16,24,40,.08);font-size:12px}
.smp-app .smp-task-seg a.is-on b{background:rgba(255,255,255,.25)}
.smp-app .smp-task.is-leaving{opacity:0;transform:translateX(24px);max-height:0;padding-top:0;padding-bottom:0;margin:0;overflow:hidden;transition:opacity .35s,transform .35s,max-height .45s .1s,padding .45s .1s}
.smp-app .smp-task{max-height:600px}
.smp-task-toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:9999;display:flex;align-items:center;gap:14px;padding:10px 12px 10px 16px;border-radius:12px;background:#101828;color:#fff;font:500 14px/1.3 Inter,system-ui,sans-serif;box-shadow:0 10px 30px rgba(16,24,40,.25)}
.smp-task-toast[hidden]{display:none}
.smp-task-toast button{border:0;background:none;color:#a5b4fc;font:inherit;font-weight:700;cursor:pointer;padding:4px 6px}
.smp-app .smp-task-donelink{display:inline-block;margin-top:8px;font-size:13px;font-weight:600;color:var(--smp-muted,#667085);text-decoration:none}
.smp-app .smp-task-donelink:hover{color:var(--smp-primary)}
.smp-app .smp-chat-pins{border-bottom:1px solid var(--smp-line,#e5e7eb);background:#fffbeb;position:relative;z-index:4}
.smp-app .smp-chat-pins[hidden]{display:none}
.smp-app .smp-chat-pins>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:8px 14px;font-size:13.5px;min-width:0}
.smp-app .smp-chat-pins>summary::-webkit-details-marker{display:none}
.smp-app .smp-pin-top{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.smp-app .smp-chat-pins>summary em{font-style:normal;font-size:12px;font-weight:600;color:#b54708;white-space:nowrap}
.smp-app .smp-chat-pins ul{list-style:none;margin:0;padding:4px 8px 8px;max-height:45vh;overflow:auto;display:grid;gap:4px}
.smp-app .smp-chat-pins li{display:flex;align-items:flex-start;gap:6px;background:#fff;border:1px solid #fdecc8;border-radius:10px}
.smp-app .smp-chat-pins li a{flex:1;min-width:0;display:grid;gap:2px;padding:8px 10px;color:inherit;text-decoration:none;font-size:13.5px}
.smp-app .smp-chat-pins li a span{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.smp-app .smp-chat-pins li a small{color:var(--smp-muted,#667085);font-size:11.5px}
.smp-app .smp-chat-pins li button{border:0;background:none;color:var(--smp-muted,#667085);cursor:pointer;padding:10px;font-size:14px}
.smp-app .smp-cm-pinned{display:inline-block;font-size:11px;font-weight:600;color:#b54708;margin:0 0 2px}
.smp-app .smp-cm.is-flash .smp-cm-main{animation:smpFlash 1.6s ease}
@keyframes smpFlash{0%,40%{background:#fef3c7;border-radius:10px}100%{background:transparent}}
.smp-task-toast span{white-space:nowrap}
/* v4.9.22 — timeline: done hidden by default, progress per group */
.smp-app .smp-tl-donebtn.is-on{background:var(--smp-primary-soft,#eef2ff);color:var(--smp-primary)}
.smp-app .smp-tl-prog{display:inline-block;width:46px;height:6px;border-radius:999px;background:#e4e7ec;overflow:hidden;vertical-align:middle;margin-right:6px}
.smp-app .smp-tl-prog i{display:block;height:100%;background:#12b76a;border-radius:999px}
.smp-app .smp-tl-group.is-all-done .smp-tl-label small{color:#067647;font-weight:600}
/* 4.9.27 — screenshot required to finish a task */
.smp-app .smp-tf:empty{display:none}
.smp-app .smp-tf-proof{padding:8px;border:1px dashed #86c5a4;border-radius:12px;background:#f3fbf6}
.smp-app .smp-tf-label{flex-basis:100%;font-size:12px;font-weight:600;color:#1f7a4d}
.smp-app .smp-proof-req{color:#b54708;font-weight:600}
.smp-app .smp-proof-ok{color:#1f7a4d}
.smp-app .smp-proof-opt{background:#f8fafc;border-radius:10px;padding:8px 10px}
.smp-app .smp-task-proof{margin-top:8px;border:1px solid var(--smp-line,#e5e7eb);border-radius:12px;padding:6px 10px;background:#fff}
.smp-app .smp-task-proof summary{cursor:pointer;font-size:13px;font-weight:600;color:#b54708}
.smp-app .smp-task-proof[open] summary{margin-bottom:8px}
.smp-app .smp-task-proof.is-asking{box-shadow:0 0 0 3px #fdb02266;transition:box-shadow .3s}
.smp-app .smp-proof-form{display:grid;gap:8px}
.smp-app .smp-proof-form .smp-btn{justify-self:start}
.smp-app .smp-task.is-done .smp-task-proof{display:none}
.smp-app .smp-checkin-tasks li.is-proof a{font-size:12px;color:#b54708}
/* 4.9.28 — zoom photos on computers */
.smp-viewer-stage{overflow:hidden}
.smp-viewer-stage img{transform-origin:center center;will-change:transform;user-select:none;-webkit-user-drag:none}
@media (hover:hover) and (pointer:fine){.smp-viewer-stage img{cursor:zoom-in}.smp-viewer.is-zoomed .smp-viewer-stage img{cursor:grab;border-radius:0}.smp-viewer.is-dragging .smp-viewer-stage img{cursor:grabbing}}
.smp-viewer-bar{gap:10px}
.smp-viewer-zoom{display:inline-flex;align-items:center;background:rgba(255,255,255,.12);border-radius:999px;padding:2px}
.smp-viewer-bar .smp-viewer-zoom button{background:none;padding:6px 12px;font-size:16px;line-height:1;min-width:36px}
.smp-viewer-bar .smp-viewer-zoom button:hover{background:rgba(255,255,255,.14)}
.smp-viewer-bar .smp-viewer-zoom .smp-viewer-pct{font-size:13px;min-width:58px;font-variant-numeric:tabular-nums}
@media (hover:none){.smp-viewer-zoom{display:none}}
.smp-viewer-bar{position:relative;z-index:2;background:#05081a}
/* 4.9.29 — photo previews that can't load still show a tile */
.smp-app .smp-tf-img{position:relative}
.smp-app .smp-tf-broken{display:none}
.smp-app .smp-tf-img.is-broken img{display:none}
.smp-app .smp-tf-img.is-broken .smp-tf-broken{display:flex;position:absolute;inset:0;align-items:center;justify-content:center;text-align:center;font-size:12px;font-weight:600;color:#475467;padding:6px}
/* 4.9.30 — compact "Give a task": small option buttons with drop-down menus */
.smp-app .smp-tq{display:grid;gap:10px}
.smp-app .smp-tq .smp-field{margin:0}
.smp-app .smp-tq-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.smp-app .smp-tq-opt{position:relative}
.smp-app .smp-tq-opt>summary{list-style:none}.smp-app .smp-tq-opt>summary::-webkit-details-marker{display:none}
.smp-app .smp-tq-chip{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 11px;border:1px solid var(--smp-line,#e5e7eb);border-radius:999px;background:#fff;font-size:13px;color:#344054;cursor:pointer;user-select:none;white-space:nowrap;max-width:220px}
.smp-app .smp-tq-chip b{font-weight:500;overflow:hidden;text-overflow:ellipsis}
.smp-app .smp-tq-chip:hover{background:#f8fafc;border-color:#cbd5e1}
.smp-app .smp-tq-opt[open]>.smp-tq-chip{border-color:var(--smp-primary,#4f46e5);box-shadow:0 0 0 3px rgba(79,70,229,.12)}
.smp-app .smp-tq-opt.is-set>.smp-tq-chip,.smp-app .smp-tq-tog:has(input:checked){background:#eef2ff;border-color:#c7d2fe;color:#3730a3}
.smp-app .smp-tq-opt.is-set>.smp-tq-chip b,.smp-app .smp-tq-tog:has(input:checked) b{font-weight:600}
.smp-app .smp-tq-tog input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.smp-app .smp-tq-tog{position:relative}
.smp-app .smp-tq-tog:has(input:focus-visible){outline:2px solid var(--smp-primary,#4f46e5);outline-offset:2px}
.smp-app .smp-tq-tog[title]:has(input[name=urgent]:checked){background:#fef3f2;border-color:#fecdca;color:#b42318}
.smp-app .smp-tq-tog:has(input[name=urgent]:checked){background:#fef3f2;border-color:#fecdca;color:#b42318}
.smp-app .smp-tq-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:60;width:max-content;min-width:260px;max-width:min(520px,calc(100vw - 32px));background:#fff;border:1px solid var(--smp-line,#e5e7eb);border-radius:14px;box-shadow:0 14px 40px rgba(15,23,42,.16);padding:12px;display:grid;gap:10px}
.smp-app .smp-tq-pop-h{margin:0;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#667085}
.smp-app .smp-tq-pop .smp-field>span{font-size:12.5px}
.smp-app .smp-tq-pop .smp-task-chips{max-height:260px;overflow:auto}
.smp-app .smp-tq-pop-foot{display:flex;justify-content:flex-end;gap:6px}
.smp-app .smp-tq-done{background:#101828;color:#fff;border-color:#101828}
.smp-app .smp-tq-send{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid var(--smp-line,#eef0f3);padding-top:10px}
.smp-app .smp-task-add>form.smp-tq>.smp-btn{margin-top:0}
.smp-app .smp-tq .smp-task-editor{min-height:0}
@media (max-width:640px){
  .smp-app .smp-tq-send small{display:none}.smp-app .smp-tq-send .smp-btn{width:100%;justify-content:center}
  .smp-app .smp-tq-pop{position:fixed;top:auto;left:0!important;right:0!important;bottom:0;width:auto;max-width:none;min-width:0;border-radius:18px 18px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom));z-index:9500;box-shadow:0 0 0 100vmax rgba(15,23,42,.35)}
  .smp-app .smp-tq-pop input,.smp-app .smp-tq-pop select,.smp-app .smp-tq-pop textarea{font-size:16px}
  .smp-app .smp-tq-pop-foot .smp-btn{flex:1;justify-content:center;height:42px}
}
@media (max-width:640px){
  html.smp-tq-sheet .smp-app .smp-tabbar,html.smp-tq-sheet .smp-app .smp-sidebar{visibility:hidden}
  .smp-app .smp-task-tools{gap:5px}
  .smp-app .smp-task-tools>details>summary,.smp-app .smp-task-tools .smp-cal-add>summary{font-size:12px;padding:3px 7px}
}
/* 4.9.32 — Airbnb bookings */
.smp-app .smp-bnb-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.smp-app .smp-bnb-stats>div{background:#fff;border:1px solid var(--smp-line,#e5e7eb);border-radius:14px;padding:12px 14px;display:grid;gap:2px}
.smp-app .smp-bnb-stats b{font-size:24px;line-height:1.1}
.smp-app .smp-bnb-stats span{font-size:12px;color:#667085}
.smp-app .smp-bnb-list{list-style:none;margin:0;padding:0;display:grid}
.smp-app .smp-bnb-month{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#667085;padding:14px 0 6px}
.smp-app .smp-bnb-stay{display:flex;align-items:center;gap:14px;padding:10px 0;border-top:1px solid var(--smp-line,#eef0f3)}
.smp-app .smp-bnb-dates{display:flex;align-items:center;gap:6px;min-width:128px;font-variant-numeric:tabular-nums}
.smp-app .smp-bnb-dates b{background:#f2f4f7;border-radius:8px;padding:4px 8px;font-size:13px;white-space:nowrap}
.smp-app .smp-bnb-dates i{font-style:normal;color:#98a2b3}
.smp-app .smp-bnb-main{flex:1;min-width:0;display:grid;gap:2px}
.smp-app .smp-bnb-main span{font-size:12.5px;color:#667085}
.smp-app .smp-bnb-tag{font-style:normal;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:999px;background:#f2f4f7;color:#344054;margin-left:6px}
.smp-app .smp-bnb-stay.is-in .smp-bnb-tag,.smp-app .smp-bnb-stay.is-soon .smp-bnb-tag{background:#ecfdf3;color:#067647}
.smp-app .smp-bnb-stay.is-out .smp-bnb-tag{background:#fffaeb;color:#b54708}
.smp-app .smp-bnb-stay.is-now .smp-bnb-tag{background:#eef2ff;color:#3730a3}
.smp-app .smp-bnb-stay.is-cx{opacity:.6}.smp-app .smp-bnb-stay.is-cx .smp-bnb-dates b{text-decoration:line-through}
.smp-app .smp-bnb-stay.is-cx .smp-bnb-tag{background:#fef3f2;color:#b42318}
.smp-app .smp-bnb-links{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:8px}
.smp-app .smp-bnb-links li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--smp-line,#e5e7eb);border-radius:12px}
.smp-app .smp-bnb-links li>div{display:grid;gap:2px;min-width:0}
.smp-app .smp-bnb-links small{font-size:12px}
.smp-app .smp-bnb-ok{color:#067647}.smp-app .smp-bnb-err{color:#b42318}
.smp-app .smp-bnb-add{margin-top:12px}
.smp-app .smp-bnb-add>summary{cursor:pointer;font-weight:600;color:var(--smp-primary,#4f46e5);display:inline-flex;align-items:center;gap:6px;list-style:none}
.smp-app .smp-bnb-add>summary::-webkit-details-marker{display:none}
.smp-app .smp-bnb-add form{margin-top:10px;display:grid;gap:10px}
.smp-app .smp-bnb-add form>.smp-btn{justify-self:start}
.smp-app .smp-bnb-how{margin:0;padding-left:18px;font-size:13px;color:#475467;display:grid;gap:3px}
.smp-app .smp-bnb-who{margin-top:16px;padding-top:14px;border-top:1px solid var(--smp-line,#eef0f3)}
.smp-app .smp-bnb-who form{display:grid;gap:8px}.smp-app .smp-bnb-who .smp-btn{justify-self:start}
.smp-app .smp-bnb-foot{font-size:13px;margin-top:10px}
@media (max-width:640px){
  .smp-app .smp-bnb-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .smp-app .smp-bnb-stay{display:grid;grid-template-columns:1fr auto;gap:6px 10px}
  .smp-app .smp-bnb-dates{min-width:0;grid-row:1}
  .smp-app .smp-bnb-main{grid-column:1/-1;grid-row:2}
  .smp-app .smp-bnb-stay .smp-btn{grid-row:1;grid-column:2;padding:4px 10px}
  .smp-app .smp-bnb-stats b{font-size:20px}.smp-app .smp-bnb-stats>div{padding:10px 12px}
}
/* 4.9.34 — Airbnb check-out task */
.smp-app .smp-bnb-task{display:inline-block;margin-top:3px;font-size:12px;padding:3px 9px;border-radius:999px;background:#f2f4f7;color:#344054;text-decoration:none;justify-self:start}
.smp-app .smp-bnb-task.is-open{background:#fffaeb;color:#b54708;font-weight:600}
.smp-app .smp-bnb-task.is-done{background:#ecfdf3;color:#067647}
.smp-app .smp-bnb-taskset{margin-top:6px}
.smp-app .smp-bnb-taskset>summary{cursor:pointer;font-size:12.5px;color:#475467;list-style:none}
.smp-app .smp-bnb-taskset>summary::-webkit-details-marker{display:none}
.smp-app .smp-bnb-taskform{display:grid;gap:8px;margin-top:8px;padding:10px;border-radius:10px;background:#f8fafc}
.smp-app .smp-bnb-taskform .smp-btn{justify-self:start}
.smp-app .smp-task-note{overflow-wrap:anywhere}
.smp-app .smp-home-add{margin:12px 0}.smp-app .smp-home-add>summary{cursor:pointer;font-weight:600;color:var(--smp-primary,#4f46e5);display:inline-flex;gap:6px;align-items:center;list-style:none}.smp-app .smp-home-add>summary::-webkit-details-marker{display:none}.smp-app .smp-home-add form{margin-top:10px}
.smp-app .smp-slip-leave{display:block;font-size:12px;color:#067647;font-weight:500;margin-top:2px}
