/* v2 restyle of Look A from the Sing Orlando / Sing Studios brand (voice-build #181).
   Brand source: singorlando.com global styles (Elementor kit) + LessonsOS tokens.
   Teal #009BAF (primary), dark teal #007180, orange #F2440D (accent), light orange #F58A3D,
   ink #141515, cream #EFF0EB, grey #5B5F5F. Type: Poppins (headings), Roboto (text).
   Dark adaptation: warm dark grey ground, cream text, ONE accent (teal); orange only for urgent. */
@font-face{font-family:"Poppins";font-weight:400;font-display:block;src:url(fonts/poppins-400.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-weight:500;font-display:block;src:url(fonts/poppins-500.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-weight:600;font-display:block;src:url(fonts/poppins-600.woff2) format("woff2")}
@font-face{font-family:"Roboto";font-weight:100 900;font-display:block;src:url(fonts/roboto-var.woff2) format("woff2")}

.v2{
  --bg:#1b1a19;        /* warm dark grey, not black */
  --raise:#242321;     /* the one raised surface (widgets, selected row) */
  --raise2:#2d2b29;
  --line:rgba(239,240,235,.08);
  --line2:rgba(239,240,235,.14);
  --text:#eff0eb;      /* brand cream */
  --dim:#a6a49d;
  --faint:#706e68;
  --teal:#1fa9ba;      /* brand teal #009BAF, lifted a touch for dark */
  --teal-deep:#007180; /* brand dark teal */
  --orange:#f2552a;    /* brand orange #F2440D, for urgent only */
  --amber:#f58a3d;     /* brand light orange, warnings */
  --display:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --body:"Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ease:cubic-bezier(.2,0,0,1);
  color:var(--text);font-family:var(--body);font-weight:400;-webkit-font-smoothing:antialiased;letter-spacing:.005em;
}
/* A1 Studio: closest to the brand. Teal fill on the primary button, teal icons. */
.v2.a1{--accent:var(--teal);--fill:var(--teal-deep);--fill-text:#f4fbfc;--icon:var(--dim)}
/* A2 Quiet: more minimal. Cream primary button, teal only for the count and the call button. */
.v2.a2{--accent:var(--teal);--fill:var(--text);--fill-text:#1b1a19;--icon:var(--faint)}
.v2 *{box-sizing:border-box}
.v2 button{font:inherit;cursor:pointer;color:inherit}
.v2 details>summary{cursor:pointer;list-style:none}.v2 details>summary::-webkit-details-marker{display:none}
.v2 .ic{flex:none;display:block}
.v2 .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--orange);flex:none}
.v2 .dot.blank{background:transparent}
.v2 .ring{flex:none;color:var(--accent)}
.v2 .ring-arc{transform-origin:8px 8px;animation:v2spin 2.4s linear infinite}
@keyframes v2spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.v2 .ring-arc{animation:none}}

/* ---------- Buttons ---------- */
.v2 .acts{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}
.v2 .acts .sp{flex:1}
.v2 .btn{border:0;background:none;border-radius:9px;padding:7px 13px;white-space:nowrap;font-size:14px;font-weight:500;line-height:20px;transition:background-color .2s var(--ease),color .2s var(--ease)}
.v2 .btn.primary{background:var(--fill);color:var(--fill-text)}
.v2 .btn.secondary{background:var(--raise2);color:var(--text)}
.v2 .btn.quiet{color:var(--dim);padding-left:8px;padding-right:8px}
.v2 .btn.icon-btn{color:var(--dim);padding:7px 9px;display:inline-flex;align-items:center;gap:7px}
.v2.a2 .btn.secondary{background:none;box-shadow:inset 0 0 0 1px var(--line2)}
.v2 .item.urgent .btn.primary,.v2 .d-detail.urgent .btn.primary{background:var(--orange);color:#fff}
@media (hover:hover){.v2 .btn.secondary:hover{background:#363431}.v2 .btn.quiet:hover,.v2 .btn.icon-btn:hover{color:var(--text)}.v2 .btn.primary:hover{filter:brightness(1.08)}}

/* ---------- Widgets ---------- */
.v2.w{background:var(--raise);border-radius:22px;padding:16px;overflow:hidden;display:flex;flex-direction:column}
.v2.w-small{width:170px;height:170px}
.v2.w-medium{width:364px;height:170px;flex-direction:row;gap:16px}
.v2 .w-count{display:flex;align-items:baseline;gap:7px}
.v2 .w-count b{font-family:var(--display);font-weight:500;font-size:40px;line-height:1;letter-spacing:-.02em}
.v2.a1 .w-count b{color:var(--text)}
.v2.a2 .w-count b{color:var(--accent)}
.v2.urgent .w-count b{color:var(--orange)}
.v2 .w-count span{font-size:13px;color:var(--dim)}
.v2 .w-top{margin-top:auto;font-size:15px;font-weight:500;line-height:1.25;display:flex;align-items:baseline;gap:7px}
.v2 .w-top .dot{transform:translateY(-1px)}
.v2 .w-foot{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:11.5px;color:var(--dim);white-space:nowrap;overflow:hidden}
.v2 .w-foot span{overflow:hidden;text-overflow:ellipsis}
.v2 .w-left{flex:1;display:flex;flex-direction:column;min-width:0}
.v2 .w-rows{margin-top:auto;display:flex;flex-direction:column;gap:5px}
.v2 .w-row{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:500;white-space:nowrap;min-width:0}
.v2 .w-row span{overflow:hidden;text-overflow:ellipsis}
.v2 .w-row .ic{color:var(--icon)}
.v2 .w-row.urgent .ic{color:var(--orange)}
.v2 .w-more{font-size:12px;color:var(--faint);margin-top:1px}
.v2 .w-call{width:72px;height:72px;flex:none;align-self:center;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:500}
.v2.a1 .w-call{background:var(--teal-deep);color:#f4fbfc}
.v2.a2 .w-call{background:var(--raise2);color:var(--accent)}
.v2.clear .w-ok{color:var(--accent)}
.v2.clear .w-big{font-family:var(--display);font-weight:500;font-size:22px;margin-top:auto;letter-spacing:-.01em}
.v2.w-medium.clear .w-big{margin-top:10px}
.v2 .w-sub{font-size:13px;color:var(--dim);margin-top:2px;margin-bottom:auto}
/* lock screen: iOS draws these widgets monochrome, so they stay white-on-wallpaper */
.v2.lock{width:364px;height:250px;border-radius:26px;padding:18px;color:#fff;text-align:center;background:#3a3531}
.v2 .lk-date{font-size:13px;font-weight:500;opacity:.85}
.v2 .lk-inline{font-size:12.5px;opacity:.75;margin-top:2px}
.v2 .lk-time{font-family:var(--display);font-weight:500;font-size:74px;line-height:1.05;letter-spacing:-.02em}
.v2 .lk-row{display:flex;gap:10px;justify-content:center;margin-top:10px;text-align:left}
.v2 .lk-circ{width:68px;height:68px;border-radius:50%;background:rgba(255,255,255,.14);display:grid;place-items:center;align-content:center;line-height:1}
.v2 .lk-circ b{font-family:var(--display);font-weight:500;font-size:26px}
.v2 .lk-circ small{font-size:9px;opacity:.75;margin-top:2px}
.v2 .lk-rect{width:170px;height:68px;border-radius:14px;background:rgba(255,255,255,.14);padding:8px 11px;font-size:12px;line-height:1.3;overflow:hidden}
.v2 .lk-rect b{font-weight:500;font-size:13px}
.v2 .lk-rect div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v2 .lk-rect .dim{opacity:.65;font-size:11px}

/* ---------- Phone: Now screen ---------- */
.v2.phone{width:390px;height:844px;border-radius:48px;position:relative;overflow:hidden;border:10px solid #0e0e0d;background:var(--bg);display:flex;flex-direction:column}
.v2 .status{display:flex;justify-content:space-between;align-items:center;padding:16px 30px 4px;font-size:14.5px;font-weight:500}
.v2 .sb{display:flex;align-items:flex-end;gap:2px}.v2 .sb i{width:3px;background:var(--text);border-radius:1px}
.v2 .sb i:nth-child(1){height:5px}.v2 .sb i:nth-child(2){height:8px}.v2 .sb i:nth-child(3){height:11px}
.v2 .sb b{width:22px;height:11px;border-radius:3px;border:1px solid var(--dim);margin-left:6px;background:linear-gradient(var(--text),var(--text)) 1px 1px/14px 7px no-repeat}
.v2 .scroll{flex:1;overflow-y:auto;padding:4px 20px 120px;scrollbar-width:none}
.v2 .scroll::-webkit-scrollbar{display:none}
.v2 .s-head{padding:18px 0 6px}
.v2 h1{font-family:var(--display);font-weight:600;font-size:32px;line-height:1.1;letter-spacing:-.02em;margin:0}
.v2.a2 h1{font-weight:500}
.v2 .s-sub{font-size:13px;color:var(--dim);margin-top:4px}
.v2.a2 .s-head .s-sub{margin:0 0 4px}
.v2 .sec{display:flex;align-items:baseline;gap:8px;margin:26px 0 2px;font-size:13px;font-weight:500;color:var(--dim)}
.v2 .sec .n,.v2 .d-h .n,.v2 .d-nav .n,.v2 .done .n{color:var(--faint);font-weight:400;font-variant-numeric:tabular-nums}
.v2.a1 .sec .n:first-of-type{color:var(--accent)}
.v2.a2 .list{margin-top:14px}
/* items: no boxes, thin dividers */
.v2 .item{display:flex;gap:14px;padding:16px 0 15px;border-bottom:1px solid var(--line);overflow:hidden}
.v2 .item:last-child{border-bottom:0}
.v2 .lead-ic{color:var(--icon);padding-top:1px}
.v2 .lead-ic.urg{color:var(--orange)}
.v2 .body{flex:1;min-width:0}
.v2 .q{font-size:16.5px;font-weight:500;line-height:1.35;letter-spacing:-.005em}
.v2.a2 .q{font-weight:400;font-size:17px;display:flex;gap:9px;align-items:baseline}
.v2.a2 .q .dot{transform:translateY(-2px)}
.v2 .meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;min-height:20px;font-size:12.5px;color:var(--faint);margin-top:4px}
.v2 .meta .urg{color:var(--orange)}
.v2 .item .meta .icon-btn{margin:-8px -9px -8px auto;color:var(--faint)}
.v2.a2 .item.urgent .meta .urg,.v2.a2 .item.urgent .meta .urg+.sep{display:none}
/* running + done */
.v2 .runlist{margin-top:4px}
.v2 .run{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.v2 .run:last-child{border-bottom:0}
.v2 .r-t{flex:1;min-width:0}
.v2 .r-t small{display:block;color:var(--faint);font-size:12px;margin-top:1px}
.v2 .r-l{color:var(--dim);font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.v2 .done{margin-top:20px}
.v2 .done summary{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--dim);padding:6px 0}
.v2 .done .chev{color:var(--faint);transition:transform .25s var(--ease)}
.v2 .done[open] .chev{transform:rotate(90deg)}
.v2 .dn{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--dim);padding:7px 0}
.v2 .dn .ic{color:var(--faint);margin-top:3px}
.v2.a1 .dn .ic{color:var(--accent);opacity:.75}
/* all clear */
.v2 .allclear{text-align:center;padding:64px 10px 40px;color:var(--accent)}
.v2 .allclear .ic{margin:0 auto 16px}
.v2 .ac-t{font-family:var(--display);font-weight:500;font-size:22px;color:var(--text);letter-spacing:-.01em}
.v2 .ac-s{color:var(--dim);margin-top:6px;font-size:14px}
.v2.a2 .phone .allclear{padding-top:40px}
/* tab bar */
.v2 .tabbar{position:absolute;bottom:0;left:0;right:0;height:86px;display:flex;align-items:flex-start;justify-content:space-around;padding:9px 8px 0;border-top:1px solid var(--line);background:var(--bg)}
.v2 .tab{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:10.5px;color:var(--faint);width:62px;position:relative}
.v2 .tab.on{color:var(--text)}
.v2.a1 .tab.on{color:var(--accent)}
.v2 .tab-n{position:absolute;top:-3px;left:40px;font-style:normal;font-size:11px;font-weight:500;color:var(--accent)}
.v2.a2 .tab-n{width:6px;height:6px;border-radius:50%;background:var(--accent);font-size:0;top:0;left:41px}
.v2 .tab.call .orb{width:54px;height:54px;border-radius:50%;margin-top:-4px;display:grid;place-items:center}
.v2.a1 .tab.call .orb{background:var(--teal-deep);color:#f4fbfc}
.v2.a2 .tab.call .orb{background:var(--raise2);color:var(--accent)}

/* ---------- Desk ---------- */
.v2.desk{width:1280px;height:800px;display:grid;grid-template-columns:200px 1fr;background:var(--bg);border-radius:12px;overflow:hidden;border:1px solid var(--line)}
.v2 .d-nav{border-right:1px solid var(--line);padding:24px 12px;display:flex;flex-direction:column;gap:2px}
.v2 .brand{font-family:var(--display);font-weight:600;font-size:17px;margin:0 10px 26px;letter-spacing:-.01em}
.v2 .d-nav a{display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:8px;color:var(--dim);font-size:14px}
.v2 .d-nav a .n{margin-left:auto}
.v2 .d-nav a.on{color:var(--text);background:var(--raise)}
.v2.a1 .d-nav a.on .ic{color:var(--accent)}
.v2.a1 .d-nav a.on .n{color:var(--accent)}
.v2 .d-call{margin-top:auto;display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;font-size:14px;font-weight:500}
.v2.a1 .d-call{background:var(--teal-deep);color:#f4fbfc}
.v2.a2 .d-call{color:var(--accent);box-shadow:inset 0 0 0 1px var(--line2)}
.v2 .d-main{padding:26px 30px 0;overflow:hidden;display:flex;flex-direction:column}
.v2 .d-top{display:flex;align-items:baseline;gap:16px;margin-bottom:20px}
.v2 .d-top h1{font-size:30px}
.v2 .d-top .s-sub{margin:0}
.v2 .d-cols{display:grid;grid-template-columns:300px 1fr 250px;flex:1;min-height:0;border-top:1px solid var(--line)}
.v2 .d-list{border-right:1px solid var(--line);overflow:hidden;padding:8px 14px 0 0}
.v2 .d-item{display:flex;align-items:center;gap:11px;padding:11px 10px;border-radius:8px;font-size:14px}
.v2 .d-item .lead-ic{padding:0}
.v2 .d-q{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}
.v2 .d-when{font-size:12px;color:var(--faint);white-space:nowrap}
.v2 .d-item.sel{background:var(--raise)}
.v2 .d-list .allclear{padding-top:90px}
.v2 .d-detail{padding:22px 30px;overflow:hidden;border-right:1px solid var(--line)}
.v2 .d-detail h2{font-family:var(--display);font-weight:500;font-size:26px;line-height:1.25;letter-spacing:-.015em;margin:8px 0 0;max-width:560px}
.v2 .d-detail .acts{margin-top:18px}
.v2 .d-detail .acts .sp{display:none}
.v2 .d-detail .btn{padding:8px 16px}
.v2 .d-h{font-size:12.5px;font-weight:500;color:var(--dim);margin:30px 0 8px;display:flex;gap:8px}
.v2 .d-h.first{margin-top:22px}
.v2 .d-detail p{color:var(--dim);font-size:14.5px;line-height:1.55;margin:0;max-width:600px}
.v2 .report{display:flex;gap:12px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--faint)}
.v2 .report p{font-size:13.5px}
.v2 .shots{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:600px}
.v2 .shot{aspect-ratio:3/4;border-radius:8px;background:var(--raise);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:12px;color:var(--faint)}
.v2 .shot.wide{aspect-ratio:16/7;max-width:600px}
.v2 .d-detail.empty{display:grid;place-content:center;text-align:center}
.v2 .d-detail.empty p{margin-top:8px}
.v2 .d-side{padding:0 0 0 22px;overflow:hidden}
.v2 .d-side .run{font-size:13.5px}
.v2 .d-side .dn{font-size:13px;padding:6px 0}

/* ---------- Voice transcript ---------- */
.v2.voice{max-width:560px;display:flex;flex-direction:column;gap:2px}
.v2 .v{display:flex;flex-direction:column;gap:3px;font-size:15px;line-height:1.5;padding:10px 0}
.v2 .v b{font-size:12px;font-weight:500;color:var(--faint)}
.v2.a1 .v.wr b{color:var(--accent)}
.v2.a1 .v.ken{align-self:flex-end;max-width:80%;background:var(--raise);border-radius:14px;padding:9px 14px;margin:4px 0}
.v2.a1 .v.ken b{display:none}
.v2.a2 .v{display:grid;grid-template-columns:76px 1fr;gap:12px;border-bottom:1px solid var(--line)}
.v2.a2 .v b{padding-top:2px}
.v2.a2 .v.ken span{color:var(--dim)}
