/* Thoughtfetti v3 · tiers, voice-first dump, time planning, Ask Thoughtfetti */
.v3-badge{display:inline-flex;align-items:center;font:800 11px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:5px 9px;color:#fff;background:var(--acc);vertical-align:middle}
.v3-badge.plus{background:#B07A1E}.v3-badge.pro{background:linear-gradient(135deg,#8A6E9E,#C2573F)}.v3-badge.base{background:var(--acc)}
.v3-badge.sm{font-size:9.5px;padding:3px 7px}
.v3-lock{position:relative;border-style:dashed}.v3-lock>.v3-badge{position:absolute;right:16px;top:16px}
.v3-lock .hd{padding-right:60px}
.v3-locknote{margin-left:6px;font-weight:600;font-size:12px}.v3-locknote a{color:var(--acc)}
.v3-plusf.locked input,.v3-plusf.locked select{opacity:.55}

/* demo switcher */
.demobar{flex-wrap:wrap}
.v3-tiers{display:inline-flex;align-items:center;gap:2px;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:3px}
.v3-tiers small{font-weight:800;font-size:11px;color:var(--mu);padding:0 6px 0 8px;letter-spacing:.04em;text-transform:uppercase}
.v3-tiers button{border:0;background:none;border-radius:999px;padding:5px 12px;font-weight:800;font-size:13px;color:var(--mu)}
.v3-tiers button.on{background:var(--acc);color:#fff}

/* Today hero: talk first */
.v3-herob{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px;position:relative}
.v3-tell{display:inline-flex;align-items:center;gap:12px;border:0;border-radius:999px;background:#fff;color:var(--acc2,var(--acc));font:700 20px/1 var(--fun,var(--sans));padding:10px 26px 10px 10px;box-shadow:0 14px 30px -14px rgba(0,0,0,.45)}
.v3-tell span{width:46px;height:46px;border-radius:50%;background:var(--hi);color:#fff;display:flex;align-items:center;justify-content:center}
.v3-tell span .ic{width:24px;height:24px;stroke-width:2.2}
.v3-tell:hover{transform:translateY(-1px)}
.v3-type{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.35);color:#fff}
:root[data-theme=calm] .v3-type{color:var(--ink);background:var(--panel);border-color:var(--line)}
.v3-wrapb{display:flex;align-items:center;gap:14px;width:100%;margin:16px 0 0;padding:14px 16px;border:0;border-radius:20px;text-align:left;color:var(--ink);background:linear-gradient(110deg,var(--ms),var(--panel) 70%);box-shadow:inset 0 0 0 1.5px var(--line)}
.v3-wrapb .t{flex:1}.v3-wrapb b{display:block;font:700 19px/1.2 var(--fun)}.v3-wrapb small{color:var(--mu);font-weight:600;font-size:13.5px}
.v3-tiles{grid-template-columns:repeat(3,1fr);margin:16px 0}
.v3-tiles b{font-size:30px}

/* "I have __ minutes" */
.v3-haveb{display:flex;flex-wrap:wrap;gap:10px}
.v3-haveb button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:76px;border:1.5px solid var(--line);background:var(--panel);border-radius:18px;padding:10px 12px;color:var(--ink)}
.v3-haveb button b{font:700 26px/1 var(--fun)}.v3-haveb button small{font-weight:700;color:var(--mu);font-size:12px}
.v3-haveb button:hover{border-color:var(--acc)}
.v3-haveb .v3-planb{flex-direction:row;gap:8px;flex:1;min-width:160px;font-weight:800;font-size:15px;background:var(--accs);border-color:transparent}

/* Brain Dump: big mic */
.v3-mic{display:flex;align-items:center;gap:16px;width:100%;border:0;border-radius:22px;padding:14px 18px 14px 14px;margin-bottom:12px;text-align:left;color:var(--ink);background:linear-gradient(110deg,var(--his),var(--accs));box-shadow:inset 0 0 0 1.5px var(--line)}
.v3-micic{width:60px;height:60px;border-radius:50%;background:var(--hi);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 12px 24px -12px var(--hi)}
.v3-micic .ic{width:30px;height:30px;stroke-width:2}
.v3-mict b{display:block;font:700 22px/1.15 var(--fun)}.v3-mict small{display:block;color:var(--mu);font-weight:600;font-size:14px;margin-top:2px}
.v3-mic.on .v3-micic{animation:v3pulse 1.4s ease-in-out infinite;background:var(--u,#C2573F)}
@keyframes v3pulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--hi) 45%,transparent)}50%{box-shadow:0 0 0 14px transparent}}
.ut-dumpbox:not(.big) .v3-mic{padding:10px 14px 10px 10px}.ut-dumpbox:not(.big) .v3-micic{width:46px;height:46px}.ut-dumpbox:not(.big) .v3-mict b{font-size:18px}
.v3-draft{display:flex;align-items:center;gap:6px;margin:6px 2px 0}
.v3-nudges{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.v3-nudges span{font-size:13.5px;font-weight:600;background:var(--panel2);border-radius:999px;padding:6px 12px;color:var(--ink)}

/* review extras */
.v3-src{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;color:var(--mu);background:var(--panel2);border-radius:12px;padding:8px 12px;margin-bottom:12px}
.v3-dups{border-top:5px solid var(--l)}
.v3-dup{display:flex;gap:12px;align-items:center;padding:10px 2px;border-top:1px solid var(--line)}
.v3-dup .t{flex:1;min-width:0}.v3-dup b{display:block}.v3-dup small{display:block;font-size:13px}
.v3-chk{display:flex;gap:6px;align-items:center;font-size:13.5px;font-weight:700;margin-top:6px}
.v3-upd{position:relative;border-top:5px solid #8A6E9E;margin-bottom:16px}.v3-upd>.v3-badge{position:absolute;right:16px;top:16px}
.v3-updrow{display:flex;gap:12px;align-items:flex-start;padding:10px 2px;border-top:1px solid var(--line);cursor:pointer}
.v3-updrow input{width:20px;height:20px;margin-top:2px;accent-color:var(--acc)}
.v3-updrow b{display:block}.v3-updrow small{display:block;color:var(--mu);font-size:13px;font-weight:600}

/* shopping by store */
.v3-stores{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;align-items:start;margin-bottom:16px}
.v3-stores .card{margin:0}

/* settings */
.v3-plan{border-top:5px solid var(--acc)}
.v3-feat{display:grid;gap:6px;margin-top:12px}
.v3-feat div{display:flex;gap:10px;align-items:center;font-size:14px}
.v3-feat .ok .ic{color:var(--l);stroke-width:3}.v3-feat .no{color:var(--mu)}.v3-feat .no .v3-badge{min-width:44px;justify-content:center}
.v3-arow{display:flex;gap:10px;align-items:center;margin-bottom:8px}.v3-arow i{width:14px;height:14px;border-radius:50%;flex:none}.v3-arow input{flex:1}

/* morning email preview */
.v3-mail{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;color:#1D2B2A}
.v3-mailhd{background:#F5F9F8;padding:14px 18px;border-bottom:1px solid #DCE8E5}.v3-mailhd small{display:block;color:#5E6E6C;font-size:12px}.v3-mailhd b{font:700 18px 'Outfit',sans-serif}
.v3-mailbd{padding:18px 22px;font-size:15px}.v3-mailbd h4{margin:16px 0 6px;font:700 15px 'Outfit',sans-serif;color:#C2573F;text-transform:uppercase;letter-spacing:.06em}
.v3-mailbd li{margin:4px 0}.v3-mailbd li span{color:#5E6E6C;font-size:13px}
.v3-mailwin{background:#E5EDDD;border-radius:10px;padding:8px 12px;font-weight:700;color:#3F6334}
.v3-mailbtn span{display:inline-block;background:#2A7F7A;color:#fff;font-weight:800;border-radius:999px;padding:10px 22px}
.v3-mailft{color:#5E6E6C;font-size:13px}

/* wrap-up */
.v3-wrap h4{display:flex;align-items:center;gap:8px;margin:16px 0 6px;font:700 18px var(--fun)}
.v3-wrap h4:first-child{margin-top:0}
.v3-wdone{display:flex;flex-wrap:wrap;gap:6px}.v3-wdone span{display:inline-flex;gap:5px;align-items:center;background:var(--ls);color:var(--l);font-weight:700;font-size:13.5px;border-radius:999px;padding:5px 11px}
.v3-wrow{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line)}
.v3-wrow .seg button{font-size:13px;padding:6px 10px}
.v3-wpick{display:grid;gap:6px}.v3-wpick label{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:12px;border-left:4px solid var(--pc);background:var(--panel2);font-weight:600}
.v3-wpick input{width:18px;height:18px;accent-color:var(--acc)}

/* plan my time */
.v3-tlsum{display:flex;gap:8px;align-items:flex-start;background:var(--ls);color:var(--ink);border-radius:12px;padding:10px 12px;margin:12px 0;font-size:14px}
.v3-tl{display:flex;flex-direction:column;gap:6px}
.v3-tlr{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;background:var(--panel);border:1.5px solid var(--line);border-left:5px solid var(--pc)}
.v3-tlr time{font:700 15px var(--fun);min-width:66px;color:var(--mu)}
.v3-tlr div{flex:1;min-width:0}.v3-tlr b{display:block;font-size:15.5px}.v3-tlr small{color:var(--mu);font-size:12.5px;font-weight:600}
.v3-tlr.brk{background:var(--panel2);border-style:dashed;border-left-style:solid}.v3-tlr.brk b{font-weight:600;color:var(--mu)}
.v3-tlr.fix{background:var(--accs)}.v3-tlr.done b{text-decoration:line-through;color:var(--mu)}
.v3-dayplan{border-top:5px solid var(--acc);margin-top:16px}

/* Ask Thoughtfetti */
.v3-askbox input{font-size:17px;padding:14px 16px}
.v3-askmic{width:50px;height:50px;border-radius:50%;background:var(--hi);color:#fff;flex:none}.v3-askmic.on{animation:v3pulse 1.4s infinite}
.v3-askex{display:flex;flex-wrap:wrap;gap:8px}
.v3-askex button,.v3-askex span{border:1.5px solid var(--line);background:var(--panel);border-radius:999px;padding:7px 13px;font-weight:600;font-size:13.5px;color:var(--ink)}
.v3-askex button:hover{border-color:var(--acc)}
.v3-ans .v3-q{display:inline-flex;gap:8px;align-items:center;background:var(--panel2);border-radius:14px 14px 14px 4px;padding:8px 14px;font-weight:700;margin-bottom:12px}
.v3-a{display:flex;gap:12px;align-items:flex-start}.v3-a p{margin:2px 0 0;font-size:17px;font-weight:600;line-height:1.45}
.v3-ansl{margin-top:10px}
.v3-acts{margin-top:12px;padding:12px 14px;border-radius:16px;background:var(--accs)}

:root[data-theme=midnight] .v3-tell{background:var(--panel2);color:var(--ink)}
:root[data-theme=midnight] .v3-mail{filter:none}
@media (max-width:800px){
  .v3-stores{grid-template-columns:1fr}
  .v3-tell{font-size:18px}
  .v3-haveb button{min-width:62px;flex:1}
  .v3-haveb .v3-planb{flex-basis:100%}
  .v3-tiers{order:5;margin-top:6px}
  .v3-mict b{font-size:19px}
}
.v3-tools{border-top:5px solid #8A6E9E;margin-top:16px}
.v3-toolg{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.v3-toolg button{display:flex;gap:10px;align-items:flex-start;text-align:left;border:1.5px solid var(--line);background:var(--panel);border-radius:16px;padding:12px;color:var(--ink)}
.v3-toolg button:hover{border-color:var(--acc)}
.v3-toolg b{display:block;font-size:15px}.v3-toolg small{display:block;color:var(--mu);font-size:12.5px;line-height:1.35;margin-top:2px}
