/* Thoughtfetti · brain dump, review, plans and parking-lot styles */
.main>.card,.main>details.card,.main>.ut-plans,.main>.ut-ideas{margin-bottom:16px}
.mt{margin-top:16px}
details.card summary{cursor:pointer;list-style:none;padding:2px 0}details.card summary::-webkit-details-marker{display:none}
details.card[open] summary{margin-bottom:10px}
.warnc{border-color:var(--warn);background:linear-gradient(var(--warns),var(--warns)),var(--panel)}
.chip .dot{width:9px;height:9px;border-radius:50%;background:var(--ac);display:inline-block}
.chip b{font-weight:900;opacity:.7}

/* hero */
.ut-hero{padding-right:150px}
.ut-knot{position:absolute;right:-20px;top:-26px;width:190px;height:190px;border-radius:50%;opacity:.35;
  background:radial-gradient(circle at 35% 40%,var(--sun) 0 18%,transparent 19%),radial-gradient(circle at 62% 58%,var(--hi) 0 22%,transparent 23%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.4) 0 46%,transparent 47%)}

/* dump box */
.ut-dumpbox{background:var(--panel);border:2px solid var(--line);border-radius:22px;padding:12px;box-shadow:var(--shadow);transition:border-color .2s}
.ut-dumpbox:focus-within{border-color:var(--acc)}
.ut-dumpbox textarea{width:100%;border:0;outline:0;background:transparent;resize:vertical;font-size:17px;line-height:1.55;padding:6px 6px 10px;min-height:96px}
.ut-dumpbox.big textarea{font-size:18.5px;min-height:240px}
.ut-dumpbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:10px}
.ut-dumpbar .sp{flex:1}
.ut-mic{border-radius:999px}
.ut-mic.on{background:var(--hi);border-color:var(--hi);color:var(--onhi);animation:utpulse 1.4s infinite}
@keyframes utpulse{0%{box-shadow:0 0 0 0 var(--his)}70%{box-shadow:0 0 0 14px transparent}100%{box-shadow:0 0 0 0 transparent}}

/* thinking overlay */
.ut-thinking{position:fixed;inset:0;z-index:70;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}
.ut-thinking b{font:700 26px var(--serif);color:var(--acc);margin-top:14px}.ut-thinking span{color:var(--mu);font-weight:600}
.ut-orb{width:84px;height:84px;border-radius:50%;flex:none;background:conic-gradient(from 0deg,var(--acc),var(--hi),var(--sun),var(--acc));animation:utspin 2.2s linear infinite;-webkit-mask:radial-gradient(circle,transparent 34%,#000 36%);mask:radial-gradient(circle,transparent 34%,#000 36%)}
.ut-orb.sm{width:40px;height:40px;animation:none}
@keyframes utspin{to{transform:rotate(360deg)}}
body.calm .ut-orb,body.calm .ut-mic.on{animation:none}

/* review */
.ut-msg{display:flex;gap:14px;align-items:flex-start;background:linear-gradient(135deg,var(--c1s),var(--c2s))}
.ut-msg b{display:block;font-size:17px;line-height:1.4}.ut-msg small{color:var(--mu);font-weight:600}
.ut-start .ey{margin-bottom:10px}
.ut-chips3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ut-chips3>div{background:var(--panel2);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:3px;position:relative;padding-left:46px;min-height:58px;justify-content:center}
.ut-chips3 b{font-size:14.5px;line-height:1.3}.ut-chips3 small{color:var(--mu);font-size:12.5px;font-weight:700}
.ut-num{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:var(--hi);color:var(--onhi);font-weight:900;font-size:14px;display:flex;align-items:center;justify-content:center}
.ut-plans{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;align-items:start}
.ut-plan{border-top:5px solid var(--ac,var(--line))}
.ut-plan .hd{align-items:flex-start}
.ut-ai{width:36px;height:36px;border-radius:12px;background:color-mix(in srgb,var(--ac) 16%,var(--panel));color:var(--ac);display:inline-flex;align-items:center;justify-content:center;flex:none}
.ut-ai .ic{width:20px;height:20px}
.ut-ri{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line);align-items:flex-start}
.ut-ri.off{opacity:.45}.ut-ri.off b{text-decoration:line-through}
.ut-ri .t{flex:1;min-width:0}
.ut-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12.5px;font-weight:700;color:var(--mu);margin-top:4px;align-items:center}
.ut-meta span{display:inline-flex;align-items:center;gap:4px}.ut-meta .ic{width:13px;height:13px}
.ut-meta .late{color:var(--bad)}
.ut-area{color:var(--ac,var(--mu))}
.ut-area::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--ac,var(--mu));display:inline-block}
.ut-kind{background:var(--panel2);border-radius:999px;padding:2px 9px 2px 7px}
.k-appointment{background:var(--c4s)}.k-idea{background:var(--c5s)}.k-worry{background:var(--c1s)}.k-shopping{background:var(--c3s)}.k-note{background:var(--bg2)}.k-task{background:var(--c2s)}
.ut-steps{margin:8px 0 0;padding-left:20px;font-size:14px;color:var(--ink)}.ut-steps li{margin:2px 0}
.ut-note{margin:8px 0 0;font-size:14px;color:var(--mu);display:flex;gap:6px;align-items:flex-start;font-style:italic}.ut-note .ic{color:var(--hi);flex:none;margin-top:3px;width:14px;height:14px}
.ut-savebar{position:sticky;bottom:12px;z-index:20;display:flex;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:10px 12px;box-shadow:0 16px 40px -18px rgba(0,0,0,.35);margin-top:6px}
.ut-savebar .sp{flex:1}

/* task rows */
.ut-task{display:flex;gap:12px;align-items:flex-start;padding:11px 2px;border-bottom:1px solid var(--line)}
.ut-task:last-child{border-bottom:0}
.ut-task .t{flex:1;min-width:0}.ut-task .t b{display:block;font-size:15.5px;line-height:1.35}
.ut-task .tick{border-color:var(--ac,var(--hi))}.ut-task .tick.on{background:var(--ac,var(--hi));border-color:var(--ac,var(--hi))}
.ut-task.done .t b{text-decoration:line-through;color:var(--mu);font-weight:600}
.ut-task.big .t b{font-size:17px}
.ut-next{margin-top:6px;font-size:13.5px;color:var(--mu);background:var(--panel2);border-radius:10px;padding:6px 10px}.ut-next b{display:inline!important;font-size:13.5px!important;color:var(--ink)}
.ut-substeps{margin:-4px 0 8px 38px;padding:4px 0 6px;border-bottom:1px solid var(--line)}
.ut-step{display:flex;gap:8px;align-items:flex-start;font-size:14px;padding:3px 0;cursor:pointer}
.ut-step input{margin-top:3px;accent-color:var(--acc);width:16px;height:16px}
.ut-step.on span{text-decoration:line-through;color:var(--mu)}

/* today widgets */
.ut-areas{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.ut-areab{display:flex;gap:10px;align-items:center;text-align:left;background:var(--panel2);border:1.5px solid transparent;border-radius:14px;padding:10px;flex-wrap:wrap}
.ut-areab:hover{border-color:var(--ac)}
.ut-areab b{font-size:14px;flex:1;min-width:0;line-height:1.2}.ut-areab small{width:100%;padding-left:46px;margin-top:-10px;color:var(--mu);font-weight:700;font-size:12px}
.ut-dd{width:46px;flex:none;text-align:center;background:var(--c4s);border-radius:12px;padding:5px 0;line-height:1.1}
.ut-dd b{display:block;font-size:19px}.ut-dd small{font-size:11px;font-weight:800;text-transform:uppercase;color:var(--mu)}
.ut-mini3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ut-mini3 button{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:14px 8px;display:flex;flex-direction:column;align-items:center;gap:4px;box-shadow:var(--shadow)}
.ut-mini3 button:hover{border-color:var(--hi)}
.ut-mini3 b{font-size:24px;line-height:1}.ut-mini3 small{color:var(--mu);font-weight:700;font-size:12px;text-align:center}

/* coming up */
.ut-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}
.ut-days>div{border-radius:14px;padding:8px 0;background:var(--panel2);display:flex;flex-direction:column;align-items:center;gap:2px}
.ut-days>div.on{background:var(--acc);color:var(--onacc)}.ut-days>div.on small{color:inherit;opacity:.85}
.ut-days small{font-size:11px;font-weight:800;text-transform:uppercase;color:var(--mu)}.ut-days b{font-size:19px}
.ut-days i{width:20px;height:20px;border-radius:50%;background:var(--hi);color:var(--onhi);font-style:normal;font-size:11px;font-weight:900;display:flex;align-items:center;justify-content:center}.ut-days i.z{background:none}

/* ideas, worries */
.ut-ideas{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:start}
.ut-idea{border-top:5px solid var(--ac)}.ut-idea p{font-size:16px;margin:8px 0 12px}
.ut-worry{display:flex;gap:14px;align-items:flex-start;margin-bottom:12px!important}
.ut-wic{width:44px;height:44px;border-radius:16px;background:var(--c4s);color:var(--c4);display:flex;align-items:center;justify-content:center;flex:none}
.ut-worry b{font-size:16px}
.ut-meter{height:10px;border-radius:99px;background:var(--bg2);overflow:hidden}.ut-meter i{display:block;height:100%;background:linear-gradient(90deg,var(--acc),var(--hi));border-radius:99px}

/* bottom nav: dump button */
.bnav .add.dump{background:var(--acc);color:var(--onacc)}

@media (max-width:1100px){.ut-ideas{grid-template-columns:repeat(2,1fr)}}
@media (max-width:800px){
  .ut-plans,.ut-ideas{grid-template-columns:1fr}
  .ut-chips3{grid-template-columns:1fr}
  .ut-hero{padding-right:22px}.ut-knot{width:130px;height:130px;right:-40px}
  .ut-dumpbox.big textarea{min-height:200px}
  .ut-savebar{bottom:calc(76px + env(safe-area-inset-bottom))}
  .ut-days b{font-size:16px}
}
.main>.chips{margin-bottom:14px}
.ut-bd{flex:none;align-self:center}
