/* To-Do List page. Builds on the tokens and glass recipe in wellness-buildout.css. */

:root{
  --p-urgent:var(--rose);
  --p-high:var(--gold-bright);
  --p-medium:#bbded9;
  --p-low:#8bb3ae;
  --tone-0:#9ccbbe;--tone-1:#ddaa8d;--tone-2:#b2d6a8;--tone-3:#8FB8F2;
  --tone-4:#bbded9;--tone-5:#F0A98A;--tone-6:#6FD3C4;--tone-7:#9cc9c0;
}
.tone-0{--tone:var(--tone-0);}.tone-1{--tone:var(--tone-1);}.tone-2{--tone:var(--tone-2);}.tone-3{--tone:var(--tone-3);}
.tone-4{--tone:var(--tone-4);}.tone-5{--tone:var(--tone-5);}.tone-6{--tone:var(--tone-6);}.tone-7{--tone:var(--tone-7);}

.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}

@keyframes tFade{from{opacity:0;}to{opacity:1;}}
@keyframes tSlideIn{from{opacity:0;transform:translateX(28px);}to{opacity:1;transform:translateX(0);}}
@keyframes tSheetUp{from{opacity:0;transform:translateY(32px);}to{opacity:1;transform:translateY(0);}}
@keyframes tToast{from{opacity:0;transform:translate(-50%,14px);}to{opacity:1;transform:translate(-50%,0);}}
@keyframes tShake{0%,100%{transform:translateX(0);}20%{transform:translateX(-7px);}40%{transform:translateX(6px);}60%{transform:translateX(-4px);}80%{transform:translateX(3px);}}
@keyframes tPulse{0%,100%{opacity:1;}50%{opacity:.35;}}

/* ---- backdrop: the site's photos of the space, rotated slowly ---- */
.todo-backdrop{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:var(--ink);}
.todo-backdrop__layer{position:absolute;inset:0;background-size:cover;background-repeat:no-repeat;opacity:0;transition:opacity 2.8s ease;}
.todo-backdrop__layer.is-active{opacity:1;}
.todo-backdrop__veil{position:absolute;inset:0;background:
  linear-gradient(175deg,rgba(10,22,21,.78),rgba(8,16,15,.90)),
  radial-gradient(1000px 640px at 8% -6%,rgba(201,144,111,.20),transparent 60%),
  radial-gradient(950px 640px at 104% 10%,rgba(120,179,163,.18),transparent 55%);}

.todo{position:relative;z-index:1;max-width:1600px;margin:0 auto;padding-bottom:var(--sp-7);}
.todo--lock{min-height:calc(100vh - 140px);display:grid;place-items:center;}

/* ---- header ---- */
.thead{padding-top:var(--sp-4);}
.thead__top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:var(--sp-4);}
.thead .eyebrow{justify-content:flex-start;}
.thead__title{text-transform:uppercase;line-height:1.05;}
.thead .tagline{margin-top:8px;}
.thead__actions{display:flex;align-items:center;gap:var(--sp-3);padding-top:6px;}

.tsync{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;border-radius:999px;border:1px solid var(--hair);background:rgba(25,52,48,.55);font-size:.78rem;color:var(--muted);}
.tsync__dot{width:7px;height:7px;border-radius:50%;background:var(--green-soft);}
.tsync.is-saving .tsync__dot{background:var(--gold-bright);animation:tPulse 1s ease-in-out infinite;}
.tsync.is-error{color:var(--rose);border-color:color-mix(in srgb,var(--rose) 45%,transparent);}
.tsync.is-error .tsync__dot{background:var(--rose);}

.tlockbtn{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;border:1px solid var(--hair-strong);background:rgba(25,52,48,.55);font-size:.82rem;color:var(--muted);}
.tlockbtn:hover{border-color:var(--gold);color:var(--gold-bright);}

/* ---- stat tiles ---- */
.tstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-block:var(--sp-5);}
.tstat{display:block;width:100%;padding:var(--sp-4);border-radius:var(--radius);text-align:left;}
.tstat--button{cursor:pointer;}
.tstat--button:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 20px 40px -22px rgba(0,0,0,.55);}
.tstat.is-active{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,var(--card));}
.tstat__label{margin:0;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--label);}
.tstat__value{margin:8px 0 0;font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.4rem);font-weight:600;line-height:1;color:var(--text);font-variant-numeric:tabular-nums;}
.tstat__value.gold{color:var(--gold-bright);}
.tstat__value.rose{color:var(--rose);}
.tstat__value.pos{color:var(--green-soft);}
.tstat__of{font-size:.5em;font-weight:500;color:var(--faint);}
.tstat__cap{margin:9px 0 0;font-size:.74rem;color:var(--faint);}
.tprogress{height:6px;margin-top:13px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden;}
.tprogress span{display:block;height:100%;width:var(--pct);border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--green-soft));transition:width .6s cubic-bezier(.16,1,.3,1);}

/* ---- toolbar ---- */
.ttool{display:flex;flex-direction:column;gap:12px;margin-bottom:var(--sp-5);}
.ttool__row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;}
.ttool__group{display:flex;align-items:center;gap:10px;}
.ttool__label{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--label);}

.tseg{position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);padding:3px;border:1px solid var(--hair-strong);border-radius:999px;background:rgba(25,52,48,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);}
.tseg__pill{position:absolute;top:3px;bottom:3px;left:3px;width:calc((100% - 6px) / var(--n));border-radius:999px;background:linear-gradient(90deg,var(--pink),var(--gold));transform:translateX(calc(var(--i) * 100%));transition:transform .35s cubic-bezier(.65,0,.35,1);}
.tseg__opt{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 16px;border-radius:999px;font-size:.82rem;letter-spacing:.03em;color:var(--muted);white-space:nowrap;transition:color .25s ease;}
.tseg__opt.is-active{color:#142825;font-weight:700;}

.tsearch{position:relative;display:flex;align-items:center;flex:1 1 220px;min-width:180px;max-width:340px;}
.tsearch svg{position:absolute;left:13px;color:var(--faint);pointer-events:none;}
.tsearch input{width:100%;padding:8px 14px 8px 36px;border-radius:999px;background:rgba(25,52,48,.55);font-size:.9rem;}

.tselect{position:relative;display:inline-flex;align-items:center;}
.tselect select{appearance:none;-webkit-appearance:none;padding:8px 32px 8px 14px;border-radius:999px;background:rgba(25,52,48,.55);color:var(--muted);font-size:.86rem;cursor:pointer;}
.tselect svg{position:absolute;right:12px;color:var(--faint);pointer-events:none;}
.tselect.is-set select{border-color:var(--gold);color:var(--gold-bright);}

.ttoggle{display:inline-flex;align-items:center;gap:9px;font-size:.84rem;color:var(--muted);cursor:pointer;user-select:none;}
.ttoggle input{position:absolute;opacity:0;width:0;height:0;}
.ttoggle__box{position:relative;width:18px;height:18px;border-radius:6px;border:1px solid var(--hair-strong);background:rgba(25,52,48,.55);transition:background-color .2s ease,border-color .2s ease;}
.ttoggle input:checked + .ttoggle__box{background:var(--gold);border-color:var(--gold);}
.ttoggle input:checked + .ttoggle__box::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #142825;border-width:0 2.4px 2.4px 0;transform:rotate(45deg);}
.ttoggle input:focus-visible + .ttoggle__box{outline:2px solid var(--gold);outline-offset:2px;}

.tnew{display:inline-flex;align-items:center;gap:8px;margin-left:auto;padding:10px 20px;border-radius:999px;border:1px solid var(--gold);background:color-mix(in srgb,var(--gold) 12%,transparent);color:var(--gold-bright);font-family:var(--font-display);font-size:.8rem;letter-spacing:.07em;text-transform:uppercase;}
.tnew:hover{background:color-mix(in srgb,var(--gold) 24%,transparent);}
.tclear{padding:6px;font-size:.82rem;color:var(--gold-bright);text-decoration:underline;}

/* ---- board ---- */
.tboard{display:flex;align-items:flex-start;gap:14px;padding:4px 2px 28px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-color:var(--hair-strong) transparent;}
.tboard--list{flex-direction:column;align-items:stretch;overflow:visible;padding-bottom:var(--sp-5);}

.tcol{flex:1 0 285px;max-width:430px;display:flex;flex-direction:column;border-radius:var(--radius);border:1px solid var(--hair);background:var(--card);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);box-shadow:0 22px 50px -28px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.05);scroll-snap-align:start;animation:riseIn .55s cubic-bezier(.16,1,.3,1) both;transition:border-color .2s ease,box-shadow .2s ease;}
.tboard--list .tcol{flex:none;max-width:none;width:100%;}
.tboard--list .tcol__body{min-height:0;}
.tcol.is-over{border-color:var(--gold);}

.tcol__head{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:14px 14px 10px;}
.tcol__dot{width:9px;height:9px;border-radius:50%;background:var(--col,var(--faint));box-shadow:0 0 0 3px color-mix(in srgb,var(--col,var(--faint)) 22%,transparent);}
.tcol__title{font-size:.86rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--text);}
.tcol__count{min-width:22px;padding:1px 8px;border-radius:999px;background:rgba(255,255,255,.08);font-size:.74rem;font-weight:600;text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;}
.tcol__caption{flex-basis:100%;margin-top:-3px;padding-left:18px;font-size:.76rem;color:var(--faint);}
.tcol__badge{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;border:1px solid color-mix(in srgb,var(--gold) 55%,transparent);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-bright);}
.tcol__badge--opening{background:color-mix(in srgb,var(--gold) 22%,transparent);}

.tcol--priority-urgent{--col:var(--p-urgent);}
.tcol--priority-high{--col:var(--p-high);}
.tcol--priority-medium{--col:var(--p-medium);}
.tcol--priority-low{--col:var(--p-low);}
.tcol--status-todo{--col:#bbded9;}
.tcol--status-doing{--col:var(--gold-bright);}
.tcol--status-waiting{--col:var(--pink-bright);}
.tcol--status-done{--col:var(--green-soft);}
.tcol--owner{--col:var(--gold-bright);}
.tcol--owner-none{--col:var(--faint);}
.tcol--day{--col:#bbded9;}
.tcol--day-prep{--col:var(--gold-bright);border-color:color-mix(in srgb,var(--gold) 40%,var(--hair));}
.tcol--day-opening{--col:var(--gold-bright);border-color:var(--gold);box-shadow:0 0 0 1px color-mix(in srgb,var(--gold) 55%,transparent),0 26px 60px -26px rgba(120,179,163,.5);}
.tcol--day-opening .tcol__title{font-family:var(--font-accent);font-style:italic;font-size:1.3rem;font-weight:600;letter-spacing:.01em;text-transform:none;color:var(--gold-bright);}
.tcol--day-overdue{--col:var(--rose);}
.tcol--day-overdue .tcol__title{color:var(--rose);}
.tcol--day-after{--col:var(--p-low);}
.tcol--day-none{--col:var(--faint);}

.tcol__body{display:flex;flex-direction:column;gap:10px;min-height:84px;padding:4px 12px 12px;}
.tcol__empty{margin:auto 0;padding:22px 10px;border:1px dashed var(--hair);border-radius:12px;text-align:center;font-size:.82rem;font-style:italic;color:var(--faint);}
.tcol__add{display:flex;align-items:center;gap:8px;margin:0 12px 12px;padding:10px 12px;border:1px dashed var(--hair-strong);border-radius:12px;font-size:.84rem;color:var(--gold-bright);text-align:left;}
.tcol__add:hover{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 9%,transparent);}
.tcomposer{padding:0 12px 12px;}
.tcomposer input{width:100%;font-size:.92rem;}

/* ---- cards ---- */
.tcard{position:relative;display:flex;flex-direction:column;gap:10px;padding:12px 12px 11px;border-radius:14px;border:1px solid var(--hair);background:rgba(36,74,69,.80);box-shadow:0 10px 24px -16px rgba(0,0,0,.7);cursor:grab;touch-action:manipulation;transition:box-shadow .2s ease,border-color .2s ease,background-color .2s ease,opacity .2s ease,transform .2s cubic-bezier(.34,1.56,.64,1);}
.tcard:hover{transform:translateY(-2px);box-shadow:0 14px 32px -12px rgba(0,0,0,.8);}
.tcard:hover{border-color:var(--hair-strong);background:rgba(22,48,45,.86);box-shadow:0 16px 30px -16px rgba(0,0,0,.75);}
.tcard:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}
.tcard.is-dragging{opacity:.3;}
.tcard.is-overlay{cursor:grabbing;transform:rotate(1.6deg) scale(1.03);border-color:var(--gold);background:rgba(43,87,81,.96);box-shadow:0 32px 60px -20px rgba(0,0,0,.85);}
.tcard.is-done{opacity:.7;}
.tcard.is-done .tcard__title{color:var(--faint);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--faint) 60%,transparent);}

.tcard__top{display:flex;align-items:flex-start;gap:10px;}
.tcard__title{margin:0;font-family:var(--font-body);font-size:.95rem;font-weight:600;line-height:1.35;letter-spacing:0;color:var(--text);overflow-wrap:anywhere;}
.tcard__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;}

.tcheck{position:relative;flex:0 0 22px;width:22px;height:22px;margin-top:1px;border:1.5px solid var(--hair-strong);border-radius:50%;background:rgba(255,255,255,.03);display:grid;place-items:center;color:transparent;transition:background-color .25s ease,border-color .25s ease,color .25s ease,transform .25s cubic-bezier(.34,1.56,.64,1);}
.tcheck::after{content:"";position:absolute;inset:-10px;}
.tcheck svg path{stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .32s ease .06s;}
.tcheck:hover{border-color:var(--gold);}
.tcheck.is-checked{background:var(--green);border-color:var(--green);color:#16240d;transform:scale(1.06);}
.tcheck.is-checked svg path{stroke-dashoffset:0;}
.tcheck--small{flex-basis:18px;width:18px;height:18px;}

.tchip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border:1px solid transparent;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.02em;line-height:1.3;white-space:nowrap;}
.tchip--priority,.tchip--status{color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent);border-color:color-mix(in srgb,var(--c) 34%,transparent);}
.tchip--priority.is-urgent{--c:var(--p-urgent);}
.tchip--priority.is-high{--c:var(--p-high);}
.tchip--priority.is-medium{--c:var(--p-medium);}
.tchip--priority.is-low{--c:var(--p-low);}
.tchip--status.is-doing{--c:var(--gold-bright);}
.tchip--status.is-waiting{--c:var(--pink-bright);}
.tchip--area{color:var(--tone);background:color-mix(in srgb,var(--tone) 13%,transparent);border-color:color-mix(in srgb,var(--tone) 30%,transparent);}
.tchip--due{color:var(--muted);background:rgba(255,255,255,.05);border-color:var(--hair);}
.tchip--due.is-today{color:var(--gold-bright);border-color:color-mix(in srgb,var(--gold) 55%,transparent);background:color-mix(in srgb,var(--gold) 12%,transparent);}
.tchip--due.is-soon{color:var(--text);}
.tchip--due.is-overdue{color:var(--rose);border-color:color-mix(in srgb,var(--rose) 50%,transparent);background:color-mix(in srgb,var(--rose) 14%,transparent);}
.tmeta{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;color:var(--faint);font-variant-numeric:tabular-nums;}
.tavatar{display:grid;place-items:center;width:22px;height:22px;margin-left:auto;border-radius:50%;background:var(--tone);color:#142825;font-size:.62rem;font-weight:700;letter-spacing:.02em;}

.tcard--row{flex-direction:row;align-items:center;gap:14px;padding:10px 14px;}
.tcard--row .tcard__top{flex:1 1 auto;align-items:center;min-width:0;}
.tcard--row .tcard__meta{flex:0 1 auto;justify-content:flex-end;}
.tcard--row .tavatar{margin-left:6px;}
@media (max-width:720px){
  .tcard--row{flex-direction:column;align-items:stretch;gap:9px;}
  .tcard--row .tcard__meta{justify-content:flex-start;}
}

/* ---- detail panel ---- */
.tpeek-scrim{position:fixed;inset:0;z-index:100;display:flex;justify-content:flex-end;background:rgba(10,20,19,.55);animation:tFade .2s ease both;}
.tpeek{display:flex;flex-direction:column;width:min(560px,100vw);height:100%;border-radius:var(--radius) 0 0 var(--radius);background:rgba(26,54,50,.93);animation:tSlideIn .34s cubic-bezier(.16,1,.3,1) both;}
.tpeek__head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--hair);}
.tpeek__status{display:flex;flex-wrap:wrap;gap:6px;}
.tpeek__close{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--hair-strong);border-radius:var(--radius-sm);color:var(--muted);flex-shrink:0;}
.tpeek__close:hover{border-color:var(--gold);color:var(--gold-bright);}
.tpeek__body{flex:1;display:flex;flex-direction:column;gap:20px;padding:18px;overflow-y:auto;overscroll-behavior:contain;}
.tpeek__title{width:calc(100% + 8px);margin-left:-8px;padding:6px 8px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;font-family:var(--font-display);font-size:1.45rem;font-weight:600;line-height:1.25;color:var(--text);resize:none;overflow:hidden;}
.tpeek__title:hover,.tpeek__title:focus{border-color:var(--hair-strong);background:rgba(255,255,255,.03);}
.tpeek__foot{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:14px 18px;border-top:1px solid var(--hair);}
.tpeek__meta{margin:0;font-size:.76rem;line-height:1.55;color:var(--faint);}
.tpeek__delete{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid color-mix(in srgb,var(--rose) 40%,transparent);border-radius:var(--radius-sm);font-size:.84rem;color:var(--rose);}
.tpeek__delete:hover{background:color-mix(in srgb,var(--rose) 14%,transparent);}

.tfield{display:flex;flex-direction:column;gap:9px;}
.tfield__label{display:flex;justify-content:space-between;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--label);}
.tfield__hint{letter-spacing:0;text-transform:none;color:var(--faint);}
.tchoices{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}

.tpill{padding:6px 14px;border:1px solid var(--hair-strong);border-radius:999px;background:rgba(255,255,255,.03);font-size:.82rem;color:var(--muted);transition:background-color .2s ease,border-color .2s ease,color .2s ease;}
.tpill:hover{border-color:var(--gold);color:var(--text);}
.tpill.is-active{border-color:var(--gold-bright);background:var(--gold-bright);color:#142825;font-weight:700;}
.tpill--quiet{border-style:dashed;color:var(--faint);}
.tpill.is-urgent.is-active{border-color:var(--p-urgent);background:var(--p-urgent);}
.tpill.is-medium.is-active{border-color:var(--p-medium);background:var(--p-medium);}
.tpill.is-low.is-active{border-color:var(--p-low);background:var(--p-low);}
.tpill.is-todo.is-active{border-color:#bbded9;background:#bbded9;}
.tpill.is-waiting.is-active{border-color:var(--pink-bright);background:var(--pink-bright);}
.tpill.is-done.is-active{border-color:var(--green-soft);background:var(--green-soft);}

.tinput{width:100%;font-size:.95rem;}
.tinput--inline{width:150px;padding:6px 12px;border-radius:999px;font-size:.82rem;}
.tinput--date{width:auto;padding:6px 10px;font-size:.88rem;}
.tinput--notes{min-height:96px;line-height:1.5;}

.tsteps{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;}
.tstep{display:flex;align-items:center;gap:10px;}
.tstep__text{flex:1;padding:6px 8px;border-color:transparent;background:transparent;font-size:.92rem;}
.tstep__text:hover,.tstep__text:focus{border-color:var(--hair-strong);}
.tstep.is-done .tstep__text{color:var(--faint);text-decoration:line-through;}
.tstep__remove{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;color:var(--faint);}
.tstep__remove:hover{color:var(--rose);background:color-mix(in srgb,var(--rose) 12%,transparent);}
.tstep-add{display:flex;align-items:center;gap:8px;margin-top:2px;color:var(--faint);}
.tstep-add input{flex:1;padding:7px 10px;border-style:dashed;background:transparent;font-size:.9rem;}

@media (max-width:640px){
  .tpeek-scrim{align-items:flex-end;}
  .tpeek{width:100%;height:auto;max-height:92vh;border-radius:20px 20px 0 0;animation-name:tSheetUp;}
}

/* ---- toast, empty, blocked, lock ---- */
.ttoast{position:fixed;left:50%;bottom:24px;z-index:120;display:flex;align-items:center;gap:16px;padding:11px 16px;border:1px solid var(--hair-strong);border-radius:12px;background:rgba(22,45,42,.97);box-shadow:0 20px 44px -16px rgba(0,0,0,.8);font-size:.9rem;transform:translateX(-50%);animation:tToast .3s cubic-bezier(.16,1,.3,1) both;}
.ttoast button{font-size:.76rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--gold-bright);}

.tempty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:var(--sp-7) var(--sp-5);border-radius:var(--radius);text-align:center;}
.tempty p{margin:0 0 var(--sp-3);color:var(--muted);}
.tempty .tnew{margin-left:0;}

.tblocked{position:fixed;inset:0;z-index:130;display:grid;place-items:center;padding:16px;background:rgba(10,20,19,.72);}
.tblocked__card{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:430px;padding:28px;border-radius:var(--radius);text-align:center;background:rgba(26,54,50,.96);}
.tblocked__card p{margin:0;color:var(--muted);font-size:.92rem;}
.tblocked__card .tnew{margin-left:0;margin-top:6px;}

.tlock{display:flex;flex-direction:column;align-items:center;gap:14px;width:min(430px,100%);padding:38px 30px 32px;border-radius:20px;text-align:center;}
.tlock__icon{display:grid;place-items:center;width:54px;height:54px;border:1px solid var(--gold-dim);border-radius:50%;background:color-mix(in srgb,var(--gold) 11%,transparent);color:var(--gold-bright);}
.tlock__title{font-size:1.7rem;text-transform:uppercase;letter-spacing:.03em;}
.tlock__sub{margin:0;font-size:.95rem;color:var(--muted);}
.tlock__field{display:block;width:100%;}
.tlock__field input{width:100%;padding:12px;font-size:1.05rem;letter-spacing:.06em;text-align:center;}
.tlock__field input.is-shaking{animation:tShake .4s ease;border-color:var(--rose);}
.tlock__submit{width:100%;padding:12px;border-radius:999px;background:linear-gradient(90deg,var(--pink),var(--gold));font-family:var(--font-display);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#142825;}
.tlock__submit:disabled{opacity:.5;cursor:default;}
.tlock__error{margin:0;font-size:.86rem;color:var(--rose);}

@media (max-width:760px){
  .tnew{margin-left:0;}
  .tsearch{flex-basis:100%;max-width:none;}
  .tcol{flex-basis:min(320px,86vw);}
}
@media (max-width:520px){
  .tstats{grid-template-columns:repeat(2,1fr);gap:10px;margin-block:var(--sp-4);}
  .tstat{padding:12px 14px;}
  .tstat__value{font-size:1.7rem;}
  .tstat__cap{margin-top:6px;}
  .ttool__group{flex-wrap:wrap;}
}

/* =====================================================================
   Workspace: app bar, tooltips, windows, whiteboard, capture, inbox
   ===================================================================== */

@keyframes tTip{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:translateY(0);}}
@keyframes tWinIn{from{opacity:0;transform:scale(.98) translateY(6px);}to{opacity:1;transform:none;}}
@keyframes tSpin{to{transform:rotate(360deg);}}
@keyframes tSweep{0%{transform:translateX(-100%);}100%{transform:translateX(320%);}}

.thead--compact{padding-top:var(--sp-3);margin-bottom:var(--sp-3);}
.thead--compact .thead__title{font-size:clamp(1.3rem,3vw,1.7rem);}
.thead--compact .eyebrow{margin-bottom:2px;}

/* ---- app bar ---- */
.tbar{position:sticky;top:64px;z-index:40;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;margin-top:var(--sp-3);padding:7px 10px;border-radius:18px;}
.tbar__menu,.tbar__right{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;min-width:0;}
.tbar__link{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border-radius:999px;border:1px solid transparent;font-family:var(--font-display);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-decoration:none;white-space:nowrap;transition:background-color .2s ease,color .2s ease,border-color .2s ease;}
.tbar__link:hover{color:var(--text);border-color:var(--hair-strong);}
.tbar__link.is-active{background:linear-gradient(90deg,var(--pink),var(--gold));color:#142825;}
.tbar__badge{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--pink);color:#fff;font:700 .68rem var(--font-body);letter-spacing:0;}
.tbar__link.is-active .tbar__badge{background:#142825;color:var(--gold-bright);}
.tbar__btn{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid var(--hair-strong);background:rgba(25,52,48,.55);font-size:.8rem;color:var(--muted);}
.tbar__btn:hover,.tbar__btn[aria-expanded="true"]{border-color:var(--gold);color:var(--gold-bright);}

.tscore{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border-radius:999px;border:1px solid var(--hair-strong);background:rgba(25,52,48,.55);font-size:.8rem;color:var(--muted);white-space:nowrap;}
.tscore:hover{border-color:var(--gold);}
.tscore svg{color:var(--faint);}
.tscore.has-activity svg{color:var(--gold-bright);}
.tscore__label{font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:var(--label);}
.tscore__num{font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;}
.tscore__unit{color:var(--faint);}
.tscore__dot{width:3px;height:3px;border-radius:50%;background:var(--hair-strong);margin:0 2px;}

.there{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--green) 40%,transparent);background:color-mix(in srgb,var(--green) 10%,transparent);font-size:.78rem;color:var(--green-soft);}
.there__dot{width:7px;height:7px;border-radius:50%;background:var(--green-soft);box-shadow:0 0 0 0 rgba(163,209,136,.6);animation:tPulse 2s ease-in-out infinite;}


/* ---- tooltip (editorial: a serif italic name, a plain sentence) ---- */
.ttip{position:fixed;z-index:400;max-width:290px;padding:10px 14px 11px;border-radius:12px;border:1px solid var(--hair-strong);background:rgba(21,44,41,.97);box-shadow:0 18px 40px -14px rgba(0,0,0,.85);pointer-events:none;animation:tTip .16s ease both;}
.ttip__title{display:flex;align-items:baseline;gap:8px;margin:0;font-family:var(--font-accent);font-style:italic;font-weight:600;font-size:1.1rem;line-height:1.2;color:var(--gold-bright);}
.ttip__body{margin:3px 0 0;font-size:.82rem;line-height:1.45;color:var(--muted);}
.ttip__key{margin-left:auto;padding:1px 7px;border:1px solid var(--hair-strong);border-radius:6px;font:600 .68rem var(--font-body);font-style:normal;letter-spacing:.05em;color:var(--text);}
.tscore-tip{min-width:250px;max-width:320px;}
.tscore-tip__days{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0;padding:8px 0;border-block:1px solid var(--hair);font-size:.84rem;color:var(--muted);}
.tscore-tip__days b{color:var(--text);font-variant-numeric:tabular-nums;}
.tscore-tip__label{display:block;margin-bottom:2px;font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--label);}
.tscore-tip__rows{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;}
.tscore-tip__rows li{display:flex;gap:9px;align-items:flex-start;}
.tscore-tip__icon{margin-top:2px;color:var(--gold-bright);}
.tscore-tip__text{display:flex;flex-direction:column;gap:1px;min-width:0;}
.tscore-tip__what{font-size:.82rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.tscore-tip__landed{font-size:.76rem;color:var(--gold-bright);}
.tscore-tip__why{font-family:var(--font-accent);font-style:italic;font-size:.9rem;color:var(--muted);line-height:1.3;}
.tscore-tip__quiet{margin:6px 0;font-size:.82rem;font-style:italic;color:var(--faint);}
.tscore-tip__more{margin:9px 0 0;font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--label);}

/* ---- popover + windows menu ---- */
.tpop{position:fixed;z-index:300;border-radius:14px;background:rgba(25,52,48,.96);animation:tTip .16s ease both;}
.twm{width:min(340px,calc(100vw - 24px));max-height:calc(100dvh - 96px);overflow-y:auto;overscroll-behavior:contain;padding:14px;}
.twm__label{margin:0 0 6px;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--label);}
.twm__list{margin:0 0 6px;padding:0;list-style:none;}
.twm__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--hair);cursor:pointer;}
.twm__row--seg{flex-direction:column;align-items:stretch;gap:7px;cursor:default;}
.twm__name{display:block;font-size:.9rem;color:var(--text);}
.twm__hint{display:block;font-size:.74rem;color:var(--faint);}
.twm__switch{appearance:none;-webkit-appearance:none;position:relative;flex:0 0 38px;width:38px;height:22px;padding:0;border:1px solid var(--hair-strong);border-radius:999px;background:rgba(255,255,255,.06);cursor:pointer;transition:background-color .2s ease,border-color .2s ease;}
.twm__switch::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--muted);transition:transform .2s cubic-bezier(.34,1.56,.64,1),background-color .2s ease;}
.twm__switch:checked{background:color-mix(in srgb,var(--gold) 45%,transparent);border-color:var(--gold);}
.twm__switch:checked::after{transform:translateX(16px);background:var(--gold-bright);}
.twm__seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:2px;border:1px solid var(--hair-strong);border-radius:999px;background:rgba(0,0,0,.18);}
.twm__opt{padding:5px 6px;border-radius:999px;font-size:.74rem;color:var(--muted);white-space:nowrap;}
.twm__opt.is-active{background:var(--gold-bright);color:#142825;font-weight:700;}
.twm__reset{display:block;margin:12px 0 0;padding:0;font-size:.78rem;color:var(--gold-bright);text-decoration:underline;text-align:left;}

/* ---- windows ---- */
.twin{position:fixed;display:flex;flex-direction:column;min-width:0;border-radius:16px;background:rgba(26,54,50,.92);box-shadow:0 26px 60px -24px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.05);animation:tWinIn .22s cubic-bezier(.16,1,.3,1) both;}
.twin.is-front{border-color:var(--hair-strong);box-shadow:0 34px 72px -22px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.07);}
.twin__bar{display:flex;align-items:center;gap:9px;padding:9px 10px 9px 14px;border-bottom:1px solid var(--hair);border-radius:16px 16px 0 0;cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none;}
.twin__bar:active{cursor:grabbing;}
.twin.is-min .twin__bar{border-bottom-color:transparent;border-radius:16px;}
.twin__icon{display:grid;place-items:center;color:var(--gold-bright);}
.twin__title{flex:1;min-width:0;font-family:var(--font-display);font-size:.78rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.twin__actions{display:flex;align-items:center;gap:2px;}
.twin__btn{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;color:var(--faint);}
.twin__btn:hover{background:rgba(255,255,255,.08);color:var(--text);}
.twin__body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px;}
.twin__grip{position:absolute;right:3px;bottom:3px;width:18px;height:18px;cursor:nwse-resize;touch-action:none;background:linear-gradient(135deg,transparent 52%,var(--faint) 52%,var(--faint) 58%,transparent 58%,transparent 72%,var(--faint) 72%,var(--faint) 78%,transparent 78%);opacity:.6;}
.twin__grip:hover{opacity:1;}
.twin-scrim{position:fixed;inset:0;background:rgba(10,20,19,.55);animation:tFade .2s ease both;touch-action:none;}
.twin--sheet{left:0!important;right:0;bottom:var(--kb,0px);top:auto!important;width:100%!important;height:auto!important;max-height:calc(88dvh - var(--kb,0px));border-radius:20px 20px 0 0;animation:tSheetUp .32s cubic-bezier(.16,1,.3,1) backwards;}
.twin--sheet .twin__bar{position:relative;padding:20px 8px 8px 16px;border-radius:20px 20px 0 0;cursor:default;}
.twin--sheet .twin__body{padding:14px 16px calc(22px + env(safe-area-inset-bottom,0px));}
.twin__grab{position:absolute;top:7px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:999px;background:var(--hair-strong);}
.twin--sheet .twin__btn{width:44px;height:44px;border-radius:12px;}
.twin--sheet .twin__title{font-size:.84rem;}
.twin--task .twin__body{padding:16px 18px 18px;}

/* ---- always-there capture button, upload tray, drop overlay ---- */
.tfab{position:fixed;right:20px;bottom:22px;z-index:75;display:inline-flex;align-items:center;gap:9px;padding:13px 20px 13px 16px;border-radius:999px;border:1px solid color-mix(in srgb,#fff 25%,transparent);background:linear-gradient(90deg,var(--pink),var(--gold));color:#142825;font-family:var(--font-display);font-size:.84rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 18px 40px -12px rgba(201,144,111,.55);transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease;}
.tfab:hover{transform:translateY(-2px) scale(1.03);}
.tfab.is-open{box-shadow:0 0 0 3px color-mix(in srgb,var(--gold-bright) 45%,transparent),0 18px 40px -12px rgba(201,144,111,.55);}
.tfab.is-busy svg{animation:tPulse 1s ease-in-out infinite;}
@media (max-width:520px){.tfab{right:14px;bottom:16px;padding:14px;}.tfab__label{display:none;}}

.ttray{position:fixed;left:16px;bottom:18px;z-index:110;display:flex;flex-direction:column;gap:8px;width:min(300px,calc(100vw - 100px));}
.ttray__job{padding:9px 12px;border-radius:12px;border:1px solid var(--hair-strong);background:rgba(21,44,41,.96);box-shadow:0 14px 30px -14px rgba(0,0,0,.8);}
.ttray__job.is-error{border-color:var(--rose);}
.ttray__label{margin:0 0 6px;font-size:.78rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ttray__bar{display:block;height:4px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden;}
.ttray__bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pink),var(--gold));transition:width .3s ease;}
.ttray__bar span.is-busy{width:30%!important;animation:tSweep 1.2s ease-in-out infinite;}
.ttray__job.is-done .ttray__bar span{background:var(--green-soft);}

.tdrop{position:fixed;inset:12px;z-index:200;display:grid;place-items:center;border:2px dashed var(--gold-bright);border-radius:24px;background:rgba(21,44,41,.82);pointer-events:none;}
.tdrop p{margin:0;font-family:var(--font-accent);font-style:italic;font-size:1.7rem;color:var(--gold-bright);}

/* ---- capture window ---- */
.tcap{display:flex;flex-direction:column;gap:12px;border-radius:12px;}
.tcap.is-over{outline:2px dashed var(--gold-bright);outline-offset:4px;}
.tcap__text{width:100%;min-height:96px;padding:12px 13px;border-radius:12px;font-size:1rem;line-height:1.5;resize:none;}
.tcap__live{display:flex;align-items:center;gap:9px;margin:-4px 0 0;font-family:var(--font-accent);font-style:italic;font-size:1.05rem;color:var(--gold-bright);}
.tcap__pulse{flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:var(--rose);animation:tPulse 1s ease-in-out infinite;}
.tcap__error{margin:0;font-size:.82rem;color:var(--rose);}
.tcap__tools{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.tcap__tool{display:flex;flex-direction:column;align-items:center;gap:5px;padding:11px 6px 9px;border-radius:12px;border:1px solid var(--hair-strong);background:rgba(255,255,255,.03);font-size:.74rem;letter-spacing:.04em;color:var(--muted);cursor:pointer;transition:border-color .2s ease,color .2s ease,background-color .2s ease;}
.tcap__tool:hover{border-color:var(--gold);color:var(--gold-bright);}
.tcap__tool:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px;}
.tcap__tool.is-live{border-color:var(--rose);background:color-mix(in srgb,var(--rose) 16%,transparent);color:var(--rose);}
.tcap__tool:disabled{opacity:.45;cursor:default;}
.tcap__files{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;}
.tcap__file{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:10px;border:1px solid var(--hair);background:rgba(255,255,255,.03);}
.tcap__file.is-bad{border-color:var(--rose);}
.tcap__file--reading{font-size:.82rem;font-style:italic;color:var(--faint);}
.tcap__thumb{flex:0 0 42px;width:42px;height:42px;border-radius:8px;object-fit:cover;}
.tcap__thumb--icon{display:grid;place-items:center;background:rgba(255,255,255,.06);color:var(--gold-bright);}
.tcap__file-text{display:flex;flex-direction:column;min-width:0;flex:1;}
.tcap__file-name{font-size:.86rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tcap__file-meta{font-size:.74rem;color:var(--faint);}
.tcap__file.is-bad .tcap__file-meta{color:var(--rose);}
.tcap__x{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;color:var(--faint);}
.tcap__x:hover{color:var(--rose);background:color-mix(in srgb,var(--rose) 12%,transparent);}
.tcap__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.tcap__hint{margin:0;font-size:.76rem;color:var(--faint);line-height:1.4;}
.tcap__send{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border-radius:999px;background:linear-gradient(90deg,var(--pink),var(--gold));color:#142825;font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
.tcap__send:disabled{opacity:.45;cursor:default;}

/* ---- inbox + record (the ledger) ---- */
.tact__tabs{display:flex;gap:6px;margin-bottom:12px;}
.tact__more{display:inline-block;margin-top:12px;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-bright);text-decoration:none;}
.tact__more:hover{text-decoration:underline;}
.tledger__empty{margin:8px 0;font-family:var(--font-accent);font-style:italic;font-size:1.05rem;line-height:1.4;color:var(--faint);}
.tledger__day{margin-bottom:16px;}
.tledger__heading{display:flex;align-items:center;gap:8px;margin:0 0 8px;font:600 .7rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--label);}
.tledger__heading span{padding:1px 8px;border-radius:999px;background:rgba(255,255,255,.08);font-family:var(--font-body);letter-spacing:0;color:var(--muted);}
.tledger__rows,.tledger__landed-list{margin:0;padding:0;list-style:none;}
.tledger__rows{display:flex;flex-direction:column;gap:12px;}
.tledger__row{display:flex;gap:11px;}
.tledger__icon{flex:0 0 28px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.07);color:var(--gold-bright);}
.tledger__main{flex:1;min-width:0;}
.tledger__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 9px;margin:0;font-size:.74rem;color:var(--faint);}
.tledger__kind{font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.tledger__actor{padding:0 7px;border-radius:999px;border:1px solid var(--hair);}
.tledger__what{margin:2px 0 0;font-size:.9rem;line-height:1.4;color:var(--text);overflow-wrap:anywhere;}
.tledger__files{margin:2px 0 0;font-size:.76rem;color:var(--faint);}
.tledger__landed-list{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding-left:10px;border-left:2px solid var(--hair);}
.tledger__landed{display:flex;flex-direction:column;gap:2px;}
.tledger__landed-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px;}
.tledger__title{padding:0;font-size:.88rem;font-weight:600;color:var(--gold-bright);text-align:left;}
.tledger__title:hover{text-decoration:underline;}
.tledger__title--plain{color:var(--text);}
.tledger__landed.is-done .tledger__title{color:var(--faint);text-decoration:line-through;}
.tledger__landed.is-gone .tledger__title{color:var(--faint);}
.tledger__state{margin-left:auto;padding:1px 8px;border-radius:999px;border:1px solid var(--hair);font-size:.68rem;color:var(--faint);white-space:nowrap;}
.tledger__state.is-done{color:var(--green-soft);border-color:color-mix(in srgb,var(--green) 40%,transparent);}
.tledger__state.is-doing{color:var(--gold-bright);border-color:color-mix(in srgb,var(--gold) 45%,transparent);}
.tledger__state.is-review,.tledger__state.is-duplicate{color:var(--pink-bright);border-color:color-mix(in srgb,var(--pink) 45%,transparent);}
.tledger__meta{margin:0;font-size:.74rem;color:var(--faint);}
.tledger__why{margin:1px 0 0;font-family:var(--font-accent);font-style:italic;font-size:.98rem;line-height:1.3;color:var(--muted);}
.tledger__why span{margin-right:5px;font-family:var(--font-body);font-style:normal;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--label);}
.tledger__note{margin:6px 0 0;font-size:.78rem;color:var(--faint);}
.tledger__more summary{margin-top:6px;font-size:.82rem;color:var(--gold-bright);cursor:pointer;}

.tinbox__list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;}
.tinbox__card{display:flex;flex-direction:column;gap:9px;padding:12px;border-radius:14px;border:1px solid var(--hair);background:rgba(255,255,255,.03);}
.tinbox__card.is-proposed{border-color:color-mix(in srgb,var(--gold) 45%,var(--hair));}
.tinbox__head{display:flex;align-items:center;gap:9px;}
.tinbox__icon{display:grid;place-items:center;color:var(--gold-bright);}
.tinbox__who{flex:1;font-size:.78rem;color:var(--faint);}
.tinbox__status{padding:2px 9px;border-radius:999px;border:1px solid var(--hair-strong);font-size:.68rem;font-weight:600;color:var(--muted);white-space:nowrap;}
.tinbox__status.is-proposed{color:var(--gold-bright);border-color:var(--gold);}
.tinbox__status.is-accepted{color:var(--green-soft);border-color:color-mix(in srgb,var(--green) 45%,transparent);}
.tinbox__status.is-organizing{color:var(--pink-bright);animation:tPulse 1.2s ease-in-out infinite;}
.tinbox__text{margin:0;font-size:.92rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;}
.tinbox__text.is-clamped{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;}
.tinbox__more{margin-left:6px;font-size:.78rem;color:var(--gold-bright);}
.tinbox__note{margin:0;font-family:var(--font-accent);font-style:italic;font-size:1rem;line-height:1.35;color:var(--muted);}
.tinbox__error{margin:0;font-size:.82rem;color:var(--rose);}
.tinbox__props{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;}
.tinbox__prop{display:flex;gap:10px;padding:10px;border-radius:12px;background:rgba(0,0,0,.16);}
.tinbox__prop.is-off{opacity:.55;}
.tinbox__check{position:relative;flex:0 0 18px;margin-top:6px;cursor:pointer;}
.tinbox__check input{position:absolute;opacity:0;width:0;height:0;}
.tinbox__check input:checked + .ttoggle__box{background:var(--gold);border-color:var(--gold);}
.tinbox__check input:checked + .ttoggle__box::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #142825;border-width:0 2.4px 2.4px 0;transform:rotate(45deg);}
.tinbox__prop-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px;}
.tinbox__prop-title{width:100%;padding:6px 9px;font-size:.92rem;font-weight:600;}
.tinbox__prop-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.tinbox__prop-row select,.tinbox__prop-row input{padding:5px 8px;font-size:.8rem;}
.tinbox__dupe{margin:0;font-size:.8rem;color:var(--pink-bright);}
.tinbox__dupe button{color:var(--gold-bright);text-decoration:underline;}
.tinbox__hand{display:flex;flex-wrap:wrap;gap:6px;}
.tinbox__hand-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;border:1px solid var(--hair-strong);font-size:.78rem;color:var(--gold-bright);text-decoration:none;}
.tinbox__hand-btn:hover{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 10%,transparent);}
.tinbox__hand-btn.is-off{color:var(--faint);border-style:dashed;}
.tinbox__placed{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;}
.tinbox__chip{display:inline-block;max-width:100%;padding:4px 11px;border-radius:999px;border:1px solid color-mix(in srgb,var(--green) 45%,transparent);background:color-mix(in srgb,var(--green) 10%,transparent);font-size:.8rem;color:var(--green-soft);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tinbox__chip.is-quiet{border-color:var(--hair);background:transparent;color:var(--faint);}
.tinbox__foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.tinbox__spacer{flex:1;}
.tinbox__primary{padding:7px 15px;border-radius:999px;border:1px solid var(--gold);background:color-mix(in srgb,var(--gold) 16%,transparent);font-size:.82rem;font-weight:700;color:var(--gold-bright);}
.tinbox__primary:disabled{opacity:.5;}
.tinbox__quiet{padding:6px 8px;font-size:.78rem;color:var(--faint);}
.tinbox__quiet:hover{color:var(--text);}
.tinbox__confirm{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;color:var(--muted);}
.tinbox__confirm button{color:var(--gold-bright);text-decoration:underline;}

/* ---- pictures, recordings, files ---- */
.tmedia{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;}
.tmedia__item{max-width:100%;}
.tmedia__item--wide{flex:1 1 100%;}
.tmedia__image{display:block;padding:0;border-radius:10px;overflow:hidden;border:1px solid var(--hair);}
.tmedia__image img{display:block;width:118px;height:88px;object-fit:cover;}
.tmedia--compact .tmedia__image img{width:96px;height:72px;}
.tmedia__item video{display:block;width:100%;max-height:230px;border-radius:10px;background:#000;}
.tmedia__name{display:block;margin-top:3px;font-size:.74rem;color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tmedia__audio{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:var(--gold-bright);}
.tmedia__audio audio{flex:1;min-width:180px;height:34px;}
.tmedia__file{display:flex;align-items:center;gap:10px;padding:8px 11px;border-radius:10px;border:1px solid var(--hair);background:rgba(255,255,255,.03);text-decoration:none;color:var(--gold-bright);}
.tmedia__file:hover{border-color:var(--gold);}
.tmedia__file-text{display:flex;flex-direction:column;min-width:0;}
.tmedia__file-name{font-size:.86rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tmedia__file-meta{font-size:.72rem;color:var(--faint);}
.tlight{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:20px;background:rgba(7,14,13,.9);animation:tFade .2s ease both;}
.tlight img{max-width:100%;max-height:100%;border-radius:10px;box-shadow:0 30px 80px rgba(0,0,0,.7);}
.tlight__close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--hair-strong);background:rgba(21,44,41,.9);color:var(--text);}

/* ---- task window ---- */
.ttask{display:flex;flex-direction:column;gap:18px;}
.ttask__status{display:flex;flex-wrap:wrap;gap:6px;}
.ttask__foot{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding-top:14px;border-top:1px solid var(--hair);}
.ttask__from{margin:8px 0 0;font-size:.8rem;color:var(--faint);}
.ttask__from button{color:var(--gold-bright);text-decoration:underline;}
.tswatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;background:var(--note);box-shadow:inset 0 0 0 1px rgba(0,0,0,.25);}
.tswatch.is-active{border-color:var(--text);}
.tpill--add{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;cursor:pointer;}
.tlinks{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;}
.tlinks li{display:flex;align-items:center;gap:8px;font-size:.88rem;}
.tlinks__tag{flex:0 0 62px;font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--label);}
.tlinks button:not(.tstep__remove){color:var(--gold-bright);text-align:left;}
.tlinks button:not(.tstep__remove):hover{text-decoration:underline;}

/* ---- the brief ---- */
.tbrief{display:flex;flex-direction:column;gap:18px;}
.tbrief__lede{margin:0;font-family:var(--font-accent);font-style:italic;font-weight:500;font-size:1.45rem;line-height:1.25;color:var(--text);}
.tbrief__lede b{font-style:normal;font-family:var(--font-display);font-weight:600;color:var(--gold-bright);}
.tbrief__lede span{display:block;margin-top:4px;font-family:var(--font-body);font-style:normal;font-size:.86rem;color:var(--muted);}
.tbrief__h{display:flex;align-items:center;gap:7px;margin:0 0 8px;font:600 .7rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--label);}
.tbrief__picks{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;}
.tbrief__pick{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--hair);background:rgba(255,255,255,.03);text-align:left;}
.tbrief__pick:hover{border-color:var(--gold);}
.tbrief__pick-title{font-size:.92rem;font-weight:600;color:var(--text);}
.tbrief__pick-why{font-size:.76rem;color:var(--faint);}
.tbrief__line{margin:0 0 6px;font-size:.86rem;color:var(--muted);}
.tbrief__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;}
.tbrief__list button{color:var(--gold-bright);font-size:.86rem;text-align:left;}
.tbrief__watch{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;}
.tbrief__watch li{padding-left:11px;border-left:3px solid var(--faint);}
.tbrief__watch li.is-watch{border-color:var(--rose);}
.tbrief__watch li.is-note{border-color:var(--gold);}
.tbrief__watch-head{margin:0;font-size:.9rem;font-weight:600;color:var(--text);}
.tbrief__watch-detail{margin:2px 0 0;font-size:.8rem;color:var(--muted);line-height:1.4;}
.tbrief__days{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;}
.tbrief__days li{display:grid;grid-template-columns:64px 1fr 26px;align-items:center;gap:10px;font-size:.8rem;color:var(--muted);}
.tbrief__bar{height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;}
.tbrief__bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pink),var(--gold));}
.tbrief__days .is-opening .tbrief__bar span{background:var(--gold-bright);}
.tbrief__day-n{text-align:right;font-variant-numeric:tabular-nums;color:var(--text);}

/* ---- docked panels + toolbar extras ---- */
.tdock{position:relative;}
.tdock__tools{position:absolute;right:4px;top:-13px;z-index:3;display:flex;gap:4px;opacity:0;transition:opacity .2s ease;}
.tdock:hover .tdock__tools,.tdock:focus-within .tdock__tools{opacity:1;}
@media (hover:none){.tdock__tools{opacity:1;}}
.tdock__btn{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;border:1px solid var(--hair-strong);background:rgba(21,44,41,.95);color:var(--faint);}
.tdock__btn:hover{color:var(--gold-bright);border-color:var(--gold);}
.ttool__new{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto;}
.ttool__new .tnew{margin-left:0;}
.tnew--quiet{border-color:var(--hair-strong);background:transparent;color:var(--muted);}
.tnew--quiet:hover{border-color:var(--gold);color:var(--gold-bright);}
.tchip--wait{color:var(--pink-bright);background:color-mix(in srgb,var(--pink) 14%,transparent);border-color:color-mix(in srgb,var(--pink) 40%,transparent);}

/* ---- whiteboard ---- */
.gold,.wbnote.is-gold,.tswatch.is-gold{--note:#9ccbbe;}
.wbnote.is-rose,.tswatch.is-rose{--note:#ddaa8d;}
.wbnote.is-lilac,.tswatch.is-lilac{--note:#bbded9;}
.wbnote.is-sage,.tswatch.is-sage{--note:#b2d6a8;}
.wbnote.is-sky,.tswatch.is-sky{--note:#8FB8F2;}
.wbnote.is-sand,.tswatch.is-sand{--note:#9cc9c0;}

.wb{position:relative;height:clamp(480px,calc(100dvh - 235px),1300px);border-radius:var(--radius);border:1px solid var(--hair);overflow:hidden;background-color:rgba(21,44,41,.62);background-image:radial-gradient(rgba(243,238,228,.16) 1px,transparent 1px);background-size:26px 26px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;outline:none;box-shadow:0 22px 50px -28px rgba(0,0,0,.65);}
.wb:active{cursor:grabbing;}
.wb:focus-visible{border-color:var(--gold);}
.wb.is-select{cursor:crosshair;}
.wb__world{position:absolute;left:0;top:0;width:0;height:0;transform-origin:0 0;will-change:transform;transition:opacity .25s ease;}
.wb__links{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;}
.wb__lane{position:absolute;margin:0;font:600 .7rem var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--faint);white-space:nowrap;}
.wb__lane span{margin-left:6px;padding:1px 7px;border-radius:999px;background:rgba(255,255,255,.08);letter-spacing:0;font-family:var(--font-body);}
.wb__lane.is-urgent{color:var(--p-urgent);}
.wb__lane.is-high{color:var(--p-high);}
.wb__lane.is-medium{color:var(--p-medium);}
.wb__lane.is-done{color:var(--green-soft);}

.wblink__line{fill:none;stroke-width:2;stroke-linecap:round;}
.wblink.is-live .wblink__line{stroke:var(--gold-bright);}
.wblink.is-done .wblink__line{stroke:rgba(163,209,136,.6);stroke-dasharray:5 6;}
.wblink.is-picked .wblink__line{stroke:var(--pink-bright);stroke-width:3;}
.wblink__hit{fill:none;stroke:transparent;stroke-width:18;pointer-events:stroke;cursor:pointer;}
.wblink__rubber{fill:none;stroke:var(--pink-bright);stroke-width:2;stroke-dasharray:6 5;pointer-events:none;}
.wb__head.is-live{fill:var(--gold-bright);}
.wb__head.is-done{fill:rgba(163,209,136,.7);}
.wb__head.is-picked{fill:var(--pink-bright);}
.wblink__label{position:absolute;transform:translate(-50%,-50%);padding:1px 9px;border-radius:999px;border:1px solid var(--hair-strong);background:rgba(21,44,41,.94);font-size:.7rem;color:var(--muted);white-space:nowrap;pointer-events:none;}

.wbcard{position:absolute;left:0;top:0;display:flex;flex-direction:column;justify-content:space-between;gap:6px;padding:10px 12px 9px;border-radius:14px;border:1px solid var(--hair);border-left:4px solid var(--p-medium);background:rgba(36,74,69,.95);box-shadow:0 12px 26px -14px rgba(0,0,0,.8);cursor:grab;outline:none;transition:box-shadow .15s ease,border-color .15s ease;}
.wbcard.is-urgent{border-left-color:var(--p-urgent);}
.wbcard.is-high{border-left-color:var(--p-high);}
.wbcard.is-medium{border-left-color:var(--p-medium);}
.wbcard.is-low{border-left-color:var(--p-low);}
.wbcard:hover{border-color:var(--hair-strong);}
.wbcard.is-selected{box-shadow:0 0 0 2px var(--gold-bright),0 18px 34px -14px rgba(0,0,0,.85);}
.wbcard:focus-visible{box-shadow:0 0 0 2px var(--gold);}
.wbcard.is-done{opacity:.62;}
.wbcard.is-blocked{border-top-style:dashed;border-right-style:dashed;border-bottom-style:dashed;}
.wbcard__top{display:flex;align-items:flex-start;gap:9px;min-height:0;}
.wbcard__title{margin:0;flex:1;min-width:0;padding-right:18px;font:600 .9rem/1.3 var(--font-body);letter-spacing:0;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;}
.wbcard.is-done .wbcard__title{text-decoration:line-through;color:var(--faint);}
.wbcard__edit{flex:1;min-width:0;padding:3px 7px;font-size:.88rem;font-weight:600;}
.wbcard__meta{display:flex;align-items:center;gap:5px;overflow:hidden;flex-wrap:nowrap;}
.wbcard__meta .tchip{padding:2px 7px;font-size:.66rem;}
.wbcard__meta .tavatar{width:20px;height:20px;font-size:.58rem;}
.wbcard__open{position:absolute;top:6px;right:6px;display:grid;place-items:center;width:22px;height:22px;border-radius:7px;color:var(--faint);opacity:0;transition:opacity .15s ease;}
.wbcard:hover .wbcard__open,.wbcard.is-selected .wbcard__open,.wbcard:focus-within .wbcard__open{opacity:1;}
.wbcard__open:hover{color:var(--gold-bright);background:rgba(255,255,255,.08);}
.wbcard__handle{position:absolute;right:-10px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;border:2px solid #142825;background:var(--gold-bright);cursor:crosshair;opacity:0;transition:opacity .15s ease,transform .15s ease;}
.wbcard:hover .wbcard__handle,.wbcard.is-selected .wbcard__handle,.wbnote:hover .wbcard__handle,.wbnote.is-selected .wbcard__handle{opacity:1;}
.wbcard__handle:hover{transform:scale(1.25);}
@media (hover:none){.wbcard__handle,.wbcard__open{opacity:1;}}

.wbnote{position:absolute;left:0;top:0;display:flex;flex-direction:column;border-radius:5px 5px 14px 5px;background:var(--note,#9ccbbe);color:#1d3a36;box-shadow:0 16px 28px -12px rgba(0,0,0,.75);cursor:grab;}
.wbnote.is-selected{box-shadow:0 0 0 2px var(--text),0 20px 34px -12px rgba(0,0,0,.8);}
.wbnote__strip{display:flex;align-items:center;gap:4px;height:20px;padding-left:10px;border-radius:5px 5px 0 0;background:rgba(0,0,0,.09);flex:0 0 20px;}
.wbnote__strip span{width:4px;height:4px;border-radius:50%;background:rgba(29,58,54,.4);}
.wbnote__text{flex:1;min-height:0;width:100%;padding:8px 12px 14px;border:0;border-radius:0;background:transparent;font:500 .94rem/1.42 var(--font-body);color:#1d3a36;resize:none;cursor:text;}
.wbnote__text:focus{outline:none;border:0;}
.wbnote__text::placeholder{color:rgba(29,58,54,.5);}
.wbnote__bar{position:absolute;left:0;bottom:calc(100% + 10px);display:flex;align-items:center;gap:7px;padding:6px 9px;border-radius:11px;border:1px solid var(--hair-strong);background:rgba(21,44,41,.97);box-shadow:0 14px 30px -12px rgba(0,0,0,.8);white-space:nowrap;cursor:default;}
.wbnote__act{padding:4px 9px;border-radius:8px;font-size:.74rem;font-weight:600;color:var(--gold-bright);}
.wbnote__act:hover{background:rgba(255,255,255,.08);}
.wbnote__act--del{color:var(--rose);display:grid;place-items:center;}
.wbnote__resize{position:absolute;right:2px;bottom:2px;width:16px;height:16px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 50%,rgba(29,58,54,.5) 50%,rgba(29,58,54,.5) 58%,transparent 58%,transparent 72%,rgba(29,58,54,.5) 72%,rgba(29,58,54,.5) 80%,transparent 80%);}

.wb__marquee{position:absolute;border:1px dashed var(--gold-bright);background:color-mix(in srgb,var(--gold) 10%,transparent);pointer-events:none;}
.wb__tools{position:absolute;left:12px;top:12px;z-index:10;display:flex;flex-wrap:wrap;align-items:center;gap:4px;max-width:calc(100% - 24px);padding:5px;border-radius:14px;border:1px solid var(--hair-strong);background:rgba(21,44,41,.92);box-shadow:0 14px 30px -14px rgba(0,0,0,.8);cursor:default;}
.wb__btn{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:9px;font-size:.78rem;color:var(--muted);}
.wb__btn:hover{background:rgba(255,255,255,.07);color:var(--gold-bright);}
.wb__btn.is-on{background:color-mix(in srgb,var(--gold) 22%,transparent);color:var(--gold-bright);}
.wb__btn--icon{width:30px;height:30px;justify-content:center;padding:0;font-size:1.1rem;}
.wb__sep{width:1px;height:20px;margin:0 3px;background:var(--hair-strong);}
.wb__check{display:inline-flex;align-items:center;gap:8px;padding:0 9px 0 6px;font-size:.78rem;color:var(--muted);cursor:pointer;}
.wb__check input{position:absolute;opacity:0;width:0;height:0;}
.wb__check input:checked + .ttoggle__box{background:var(--gold);border-color:var(--gold);}
.wb__check input:checked + .ttoggle__box::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #142825;border-width:0 2.4px 2.4px 0;transform:rotate(45deg);}
.wb__zoom{position:absolute;right:12px;bottom:12px;z-index:10;display:flex;align-items:center;gap:2px;padding:4px;border-radius:12px;border:1px solid var(--hair-strong);background:rgba(21,44,41,.92);cursor:default;}
.wb__pct{min-width:52px;padding:4px 6px;font-size:.78rem;font-variant-numeric:tabular-nums;color:var(--muted);}
.wb__pct:hover{color:var(--gold-bright);}
.wb__hint{position:absolute;left:14px;bottom:12px;z-index:5;margin:0;font-size:.72rem;color:var(--faint);pointer-events:none;}
.wb__pop{position:absolute;z-index:12;display:flex;gap:6px;align-items:center;padding:7px;border-radius:12px;transform:translate(-50%,12px);background:rgba(25,52,48,.97);cursor:default;}
.wb__pop input{width:150px;padding:6px 9px;font-size:.82rem;}
.wb__pop button{padding:6px 10px;border-radius:8px;font-size:.76rem;font-weight:600;color:var(--rose);white-space:nowrap;}
.wb__pop button:hover{background:color-mix(in srgb,var(--rose) 14%,transparent);}
.wb__empty{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;}
.wb__empty p{margin:0;font-family:var(--font-accent);font-style:italic;font-size:1.3rem;color:var(--faint);}
@media (max-width:720px){.wb__hint{display:none;}.wb__btn span{display:none;}.wb__btn{padding:8px 10px;}}
@media (prefers-reduced-motion:reduce){.twin,.ttip,.tpop{animation:none;}.wb__world{transition:none;}}

/* =====================================================================
   Info: the small app inside the app
   ===================================================================== */

.tsub{display:flex;flex-wrap:wrap;gap:6px;margin:var(--sp-3) 0 var(--sp-4);padding:0;}
.tsub__link{padding:8px 16px;border-radius:999px;border:1px solid var(--hair-strong);background:rgba(25,52,48,.55);font-size:.84rem;color:var(--muted);text-decoration:none;transition:border-color .2s ease,color .2s ease,background-color .2s ease;}
.tsub__link:hover{border-color:var(--gold);color:var(--text);}
.tsub__link.is-active{border-color:var(--gold-bright);background:color-mix(in srgb,var(--gold) 20%,transparent);color:var(--gold-bright);font-weight:600;}

.tinfo{padding-bottom:var(--sp-6);}
.tinfo__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.tinfo__stack{display:flex;flex-direction:column;gap:14px;}
.tinfo__two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.tinfo__card{padding:var(--sp-4) var(--sp-4) var(--sp-4);border-radius:var(--radius);min-width:0;}
.tinfo__card--wide{grid-column:1 / -1;}
.tinfo__card--cta{border-color:color-mix(in srgb,var(--gold) 40%,var(--hair));}
.tinfo__h{margin:0 0 var(--sp-3);font:600 .78rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--label);}
.tinfo__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:var(--sp-3);}
.tinfo__row .tinfo__h{margin:0;}
.tinfo__p{margin:var(--sp-3) 0;font-size:.94rem;line-height:1.55;color:var(--muted);max-width:66ch;}
.tinfo__more{display:flex;flex-wrap:wrap;gap:6px 18px;margin:var(--sp-3) 0 0;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;}
.tinfo__more a{color:var(--gold-bright);text-decoration:none;}
.tinfo__more a:hover{text-decoration:underline;}
.tinfo__tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;}
.tinfo__tile{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:14px;background:rgba(0,0,0,.18);border:1px solid var(--hair);}
.tinfo__num{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.1rem);font-weight:600;line-height:1;color:var(--gold-bright);font-variant-numeric:tabular-nums;}
.tinfo__cap{font-size:.76rem;color:var(--faint);}
.tinfo__quote{margin:var(--sp-3) 0 0;padding:10px 14px;border-left:3px solid var(--gold);border-radius:0 12px 12px 0;background:rgba(0,0,0,.18);font-family:var(--font-accent);font-style:italic;font-size:1.08rem;line-height:1.4;color:var(--text);white-space:pre-wrap;}
.tinfo__quote span{display:block;margin-bottom:3px;font-family:var(--font-body);font-style:normal;font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--label);}
.tinfo__facts{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;font-size:.92rem;color:var(--muted);line-height:1.45;}
.tinfo__facts b{color:var(--text);font-variant-numeric:tabular-nums;}
.tinfo__how summary{cursor:pointer;font-size:.86rem;color:var(--gold-bright);}
.tinfo__how ul{margin:10px 0;padding-left:18px;font-size:.86rem;color:var(--muted);line-height:1.55;}
.tinfo__how p{margin:6px 0 0;font-size:.82rem;color:var(--faint);}
.tinfo .tnew{margin-left:0;text-decoration:none;}
@media (max-width:820px){.tinfo__grid,.tinfo__two{grid-template-columns:minmax(0,1fr);}}

.tbars{position:relative;display:flex;align-items:flex-end;gap:6px;height:190px;padding-bottom:4px;}
.tbars__col{display:flex;flex:1 1 0;min-width:0;flex-direction:column;align-items:center;gap:3px;height:100%;}
.tbars__pair{display:flex;align-items:flex-end;justify-content:center;gap:3px;flex:1;width:100%;}
.tbars__bar{position:relative;width:38%;max-width:22px;min-height:2px;border-radius:5px 5px 2px 2px;transition:height .5s cubic-bezier(.16,1,.3,1);}
.tbars__bar em{position:absolute;bottom:calc(100% + 2px);left:50%;transform:translateX(-50%);font:600 .66rem var(--font-body);font-style:normal;color:var(--muted);font-variant-numeric:tabular-nums;}
.tbars__bar--in{background:linear-gradient(180deg,var(--gold-bright),var(--gold));}
.tbars__bar--done{background:linear-gradient(180deg,var(--green-soft),var(--green));}
.tbars__day{font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);}
.tbars__date{font-size:.7rem;color:var(--muted);font-variant-numeric:tabular-nums;}
.tbars__col.is-today .tbars__day,.tbars__col.is-today .tbars__date{color:var(--gold-bright);font-weight:700;}
.tbars__key{position:absolute;right:0;top:-6px;display:flex;align-items:center;gap:6px;margin:0;font-size:.7rem;color:var(--faint);}
.tbars__swatch{width:9px;height:9px;border-radius:3px;}
.tbars__swatch--in{background:var(--gold-bright);}
.tbars__swatch--done{background:var(--green-soft);margin-left:6px;}
@media (max-width:520px){.tbars{gap:3px;}.tbars__bar{width:42%;}.tbars__date{display:none;}}

.tload{display:grid;grid-template-columns:minmax(90px,1.1fr) minmax(80px,1.4fr) auto;align-items:center;gap:11px 12px;margin:0;padding:0;list-style:none;}
.tload li{display:contents;font-size:.84rem;}
.tload__name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tload__bar{height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;}
.tload__bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pink),var(--gold));transition:width .5s cubic-bezier(.16,1,.3,1);}
.tload__nums{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;}
.tload__nums b{font-weight:500;color:var(--faint);}
@media (max-width:520px){.tload{display:flex;flex-direction:column;}.tload li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 10px;}.tload__bar{grid-column:1 / -1;order:3;}}

.tobs{display:flex;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;}
.tobs li{padding-left:13px;border-left:3px solid var(--faint);}
.tobs li.is-watch{border-color:var(--rose);}
.tobs li.is-note{border-color:var(--gold);}
.tobs li.is-good{border-color:var(--green);}
.tobs__head{margin:0;font-size:1rem;font-weight:600;color:var(--text);line-height:1.35;}
.tobs__detail{margin:3px 0 0;font-size:.88rem;color:var(--muted);line-height:1.5;}
.tobs__ask{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:7px 0 0;font-family:var(--font-accent);font-style:italic;font-size:1.05rem;color:var(--text);}
.tobs__btn{padding:4px 12px;border-radius:999px;border:1px solid var(--gold);font-family:var(--font-body);font-style:normal;font-size:.76rem;font-weight:700;letter-spacing:.05em;color:var(--gold-bright);text-decoration:none;}
.tobs__btn:hover{background:color-mix(in srgb,var(--gold) 16%,transparent);}
.tobs .tobs__foot{border:0;padding:0;font-size:.76rem;color:var(--faint);}

.thelp{display:flex;flex-direction:column;gap:10px;}
.thelp textarea{width:100%;line-height:1.5;}
.thelp__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;}
.thelp__foot .tguide__meta{margin:0;}
.tthreads{display:flex;flex-direction:column;gap:14px;}
.tthread{padding:14px;border-radius:14px;border:1px solid var(--hair);background:rgba(255,255,255,.03);}
.tthread.is-digest{border-style:dashed;}
.tthread__head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:6px;font-size:.78rem;color:var(--faint);}
.tthread__who{font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.tthread__chip{padding:1px 9px;border-radius:999px;border:1px solid var(--hair-strong);font-size:.68rem;}
.tthread__chip.is-mail{color:var(--green-soft);border-color:color-mix(in srgb,var(--green) 40%,transparent);}
.tthread__body{margin:0;font-size:.96rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;}
.tthread__topics{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0;}
.tthread__digest summary{cursor:pointer;font-size:.92rem;color:var(--gold-bright);}
.tthread__digest pre{margin:10px 0 0;padding:12px;border-radius:10px;background:rgba(0,0,0,.2);font:.8rem/1.55 ui-monospace,Menlo,monospace;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;}
.tthread__reply{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:10px;}
.tthread__reply textarea{width:100%;}

/* ---- estimate, guide, decision, ROI ---- */
.tnum{display:flex;flex-direction:column;gap:4px;min-width:0;}
.tnum__label{font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--label);}
.tnum__box{display:flex;align-items:center;gap:4px;padding:0 10px;border-radius:var(--radius-sm);border:1px solid var(--hair);background:var(--card-2);}
.tnum__box:focus-within{border-color:var(--gold);outline:2px solid var(--gold);outline-offset:1px;}
.tnum__box input{width:100%;min-width:52px;max-width:110px;padding:8px 0;border:0;background:transparent;font-size:.95rem;font-variant-numeric:tabular-nums;outline:none;}
.tnum__fix{font-size:.82rem;color:var(--faint);}
.tnum--compact .tnum__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
.tnum--compact .tnum__box input{max-width:74px;padding:5px 0;font-size:.86rem;}
.test__row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 14px;}
.tchoices--small{gap:6px;}
.tchoices--small .tpill{padding:4px 11px;font-size:.76rem;}
.tpill.is-dec-go.is-active{border-color:var(--green-soft);background:var(--green-soft);}
.tpill.is-dec-later.is-active{border-color:#bbded9;background:#bbded9;}
.tpill.is-dec-skip.is-active{border-color:var(--faint);background:var(--faint);}

.tguide{display:flex;flex-direction:column;gap:7px;margin-top:6px;padding:12px 13px;border-radius:12px;border:1px solid color-mix(in srgb,var(--gold) 28%,var(--hair));background:color-mix(in srgb,var(--gold) 5%,transparent);}
.tguide--empty{border-style:dashed;}
.tguide__lede{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:0;font-family:var(--font-accent);font-style:italic;font-weight:600;font-size:1.05rem;color:var(--gold-bright);}
.tguide__conf{margin-left:auto;padding:1px 9px;border-radius:999px;border:1px solid var(--hair-strong);font-family:var(--font-body);font-style:normal;font-size:.66rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);}
.tguide__conf.is-high{color:var(--green-soft);border-color:color-mix(in srgb,var(--green) 45%,transparent);}
.tguide__conf.is-low{color:var(--pink-bright);border-color:color-mix(in srgb,var(--pink) 45%,transparent);}
.tguide__range{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;font-size:.92rem;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;}
.tguide__basis{margin:0;font-size:.84rem;line-height:1.5;color:var(--muted);}
.tguide__sources{display:flex;flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;font-size:.8rem;}
.tguide__sources a{color:var(--gold-bright);text-decoration:none;overflow-wrap:anywhere;}
.tguide__sources a::after{content:" ↗";font-size:.85em;}
.tguide__sources a:hover{text-decoration:underline;}
.tguide__meta{margin:0;font-size:.74rem;color:var(--faint);}
.troi{display:flex;flex-direction:column;gap:9px;}
.troi textarea{min-height:0;}
.troi__result{padding:11px 13px;border-radius:12px;border:1px solid var(--hair);background:rgba(0,0,0,.16);}
.troi__headline{margin:0;font-size:.92rem;color:var(--muted);}
.troi__headline b{font-family:var(--font-display);font-size:1.35rem;font-weight:600;letter-spacing:.02em;}
.troi__headline b.pos{color:var(--green-soft);}
.troi__headline b.neg{color:var(--rose);}
.troi__how summary{margin-top:6px;cursor:pointer;font-size:.8rem;color:var(--gold-bright);}
.troi__how ol{margin:8px 0;padding-left:18px;font-size:.84rem;line-height:1.55;color:var(--muted);}
.troi__how p{margin:4px 0 0;font-size:.76rem;color:var(--faint);}

/* ---- cost ledger ---- */
.tcosts{display:flex;flex-direction:column;gap:14px;}
.tcosts__tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;}
.tcosts__tile{display:flex;flex-direction:column;gap:5px;padding:12px 13px;border-radius:13px;background:rgba(0,0,0,.18);border:1px solid var(--hair);}
.tcosts__label{font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--label);}
.tcosts__value{font-family:var(--font-display);font-size:1.6rem;font-weight:600;line-height:1;color:var(--text);font-variant-numeric:tabular-nums;}
.tcosts__value.gold{color:var(--gold-bright);}
.tcosts__value.pos{color:var(--green-soft);}
.tcosts__cap{font-size:.74rem;color:var(--faint);}
.tcosts__split{margin:-4px 0 0;font-size:.8rem;color:var(--muted);}
.tcosts__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;}
.tcosts__guide{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;padding:10px 12px;border-radius:12px;border:1px dashed var(--hair-strong);}
.tcosts__guide p{margin:0;flex:1 1 220px;font-size:.84rem;color:var(--muted);line-height:1.45;}
.tcosts__h{display:flex;align-items:center;gap:7px;margin:0 0 9px;font:600 .7rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--label);}
.tcosts__areas{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;}
.tcosts__areas li{display:grid;grid-template-columns:minmax(90px,1fr) 1.2fr auto;align-items:center;gap:10px;font-size:.84rem;}
.tcosts__area-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tcosts__area-nums{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;}
.tcosts__found,.tcosts__asks,.tcosts__list{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;}
.tcosts__found li{display:flex;flex-direction:column;gap:5px;padding:9px 11px;border-radius:11px;border:1px solid var(--hair);}
.tcosts__found-title{font-size:.86rem;color:var(--text);}
.tcosts__ask{display:flex;flex-direction:column;gap:7px;padding:10px 12px;border-radius:12px;border:1px solid var(--hair);background:rgba(0,0,0,.14);}
.tcosts__ask-q{font-family:var(--font-accent);font-style:italic;font-size:1.02rem;line-height:1.3;color:var(--text);}
.tcosts__ask-a{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;}
.tcosts__row{display:flex;flex-direction:column;gap:8px;padding:11px 12px;border-radius:12px;border:1px solid var(--hair);background:rgba(255,255,255,.025);}
.tcosts__row.is-done{opacity:.65;}
.tcosts__row.is-skipped{opacity:.45;}
.tcosts__what{display:flex;flex-direction:column;gap:2px;min-width:0;}
.tcosts__title{padding:0;font-size:.92rem;font-weight:600;color:var(--text);text-align:left;overflow-wrap:anywhere;}
.tcosts__title:hover{color:var(--gold-bright);text-decoration:underline;}
.tcosts__meta{font-size:.72rem;color:var(--faint);}
.tcosts__nums{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;}
.tcosts__ph{margin-left:auto;font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums;}
.tcosts--page .tcosts__row{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;}
.tcosts--page .tcosts__what{flex:1 1 260px;}
.tcosts--page .tcosts__nums{flex:0 1 auto;}
.tchip--num{color:var(--muted);background:rgba(255,255,255,.05);border-color:var(--hair);}

/* ---- earlier ideas that tie to a new one ---- */
.trel{display:flex;flex-direction:column;gap:10px;}
.trel__card{display:flex;flex-direction:column;gap:9px;padding:11px 12px;border-radius:12px;border:1px solid color-mix(in srgb,#bbded9 45%,var(--hair));background:color-mix(in srgb,#bbded9 7%,transparent);}
.trel__lede{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin:0;font-size:.84rem;color:var(--muted);}
.trel__lede b{font-family:var(--font-accent);font-style:italic;font-size:1.05rem;color:var(--text);}
.trel__lede span{margin-left:auto;font-size:.72rem;color:var(--faint);}
.trel__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.trel__grid h4{margin:0 0 4px;font:600 .66rem var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--label);}
.trel__grid p{margin:0 0 5px;font-size:.82rem;line-height:1.4;color:var(--muted);}
.trel__grid p span{display:block;font-size:.62rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--faint);}
.trel__combined{margin:0;padding:8px 10px;border-radius:10px;background:rgba(0,0,0,.18);font-size:.84rem;line-height:1.45;color:var(--text);}
.trel__combined span{display:block;margin-bottom:2px;font-size:.62rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--label);}
@media (max-width:480px){.trel__grid{grid-template-columns:1fr;}}

/* ---- command palette ---- */
.tpal-scrim{position:fixed;inset:0;z-index:450;display:flex;justify-content:center;align-items:flex-start;padding:14vh 14px 0;background:rgba(10,20,19,.6);animation:tFade .15s ease both;}
.tpal{display:flex;flex-direction:column;width:min(620px,100%);max-height:min(560px,72vh);border-radius:16px;background:rgba(25,52,48,.97);box-shadow:0 34px 80px -20px rgba(0,0,0,.9);animation:tWinIn .18s cubic-bezier(.16,1,.3,1) both;}
.tpal__field{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--hair);color:var(--faint);}
.tpal__field input{flex:1;min-width:0;padding:2px 0;border:0;background:transparent;font-size:1.05rem;color:var(--text);outline:none;}
.tpal__field kbd{padding:2px 7px;border:1px solid var(--hair-strong);border-radius:6px;font:600 .68rem var(--font-body);color:var(--faint);}
.tpal__list{flex:1;overflow-y:auto;margin:0;padding:6px;list-style:none;overscroll-behavior:contain;}
.tpal__item{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:10px;padding:9px 11px;border-radius:10px;cursor:pointer;}
.tpal__item.is-active{background:color-mix(in srgb,var(--gold) 18%,transparent);}
.tpal__group{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--label);}
.tpal__label{font-size:.92rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tpal__hint{font-size:.74rem;color:var(--faint);white-space:nowrap;}
.tpal__empty{padding:18px;text-align:center;font-family:var(--font-accent);font-style:italic;font-size:1.05rem;color:var(--faint);}
@media (max-width:520px){.tpal__item{grid-template-columns:1fr auto;}.tpal__group{display:none;}}

/* ---- where files go: the one-time choice of a Google Drive folder ---- */
.tstore-scrim{position:fixed;inset:0;z-index:460;display:grid;place-items:center;padding:16px;background:rgba(10,20,19,.66);animation:tFade .15s ease both;}
.tstore{display:flex;flex-direction:column;gap:12px;width:min(440px,100%);padding:28px 26px 24px;border-radius:20px;background:rgba(25,52,48,.97);box-shadow:0 34px 80px -20px rgba(0,0,0,.9);animation:tWinIn .18s cubic-bezier(.16,1,.3,1) both;}
.tstore__title{margin:0;font-size:1.4rem;line-height:1.2;text-transform:uppercase;letter-spacing:.03em;color:var(--text);text-wrap:balance;overflow-wrap:anywhere;}
.tstore__body{margin:0;font-size:.95rem;line-height:1.55;color:var(--muted);overflow-wrap:anywhere;}
.tstore__wait{margin:0;font-family:var(--font-accent);font-style:italic;font-size:1.05rem;line-height:1.35;color:var(--gold-bright);}
.tstore__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;}
.tstore__go{flex:1 1 200px;padding:12px 18px;border-radius:999px;background:linear-gradient(90deg,var(--pink),var(--gold));font-family:var(--font-display);font-weight:700;font-size:.82rem;letter-spacing:.07em;text-transform:uppercase;color:#142825;}
.tstore__later{flex:0 1 auto;padding:12px 18px;border-radius:999px;border:1px solid var(--hair-strong);font-size:.88rem;font-weight:600;color:var(--muted);}
.tstore__later:hover{border-color:var(--gold);color:var(--gold-bright);}
.tstore__go:focus-visible,.tstore__later:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px;}
.tbar__btn--find{color:var(--faint);}

/* =====================================================================
   Layout: launchers, the side rail, and the phone layout.
   Two breakpoints matter and both are repeated in app/todo/_lib/viewport.ts:
   up to 820px panels are sheets under a bottom tab bar; from 1000px the
   reading panels dock to a rail beside the list.
   ===================================================================== */

@keyframes tRailIn{from{opacity:0;transform:translateX(18px);}to{opacity:1;transform:none;}}

:root{--rail-w:clamp(360px,27vw,440px);}

.only-wide{display:inline-flex;}
.only-compact{display:none;}

/* ---- launchers in the top bar: page links, then the panels ---- */
.tbar__sep{width:1px;height:20px;margin:0 6px;background:var(--hair-strong);}
.tbar__panel{display:inline-flex;align-items:center;gap:7px;padding:7px 14px 7px 11px;border-radius:999px;border:1px solid var(--hair-strong);background:rgba(25,52,48,.55);font-size:.82rem;font-weight:600;color:var(--muted);white-space:nowrap;transition:background-color .2s ease,border-color .2s ease,color .2s ease;}
.tbar__panel svg{color:var(--gold-bright);}
.tbar__panel:hover{border-color:var(--gold);color:var(--text);}
.tbar__panel.is-open{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 20%,transparent);color:var(--gold-bright);}
.tbar__panel.is-behind{border-style:dashed;border-color:color-mix(in srgb,var(--gold) 55%,var(--hair-strong));color:var(--text);}
.tbar__panel .tbar__badge{margin-left:1px;}

/* ---- the side rail ---- */
.tshell{display:flex;align-items:flex-start;gap:16px;}
.tshell__main{flex:1 1 0;min-width:0;}
.trail{position:sticky;top:128px;flex:0 0 var(--rail-w);width:var(--rail-w);display:flex;flex-direction:column;height:calc(100dvh - 128px - 16px);border-radius:18px;background:rgba(26,54,50,.92);box-shadow:0 26px 60px -24px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.05);overflow:hidden;animation:tRailIn .3s cubic-bezier(.16,1,.3,1) both;}
.trail__bar{display:flex;align-items:flex-end;gap:6px;padding:8px 8px 0 10px;border-bottom:1px solid var(--hair);}
.trail__tabs{display:flex;flex:1;min-width:0;gap:2px;overflow-x:auto;scrollbar-width:none;}
.trail__tabs::-webkit-scrollbar{display:none;}
.trail__tab{display:flex;align-items:center;margin-bottom:-1px;border:1px solid transparent;border-bottom:0;border-radius:11px 11px 0 0;}
.trail__tab.is-active{background:rgba(255,255,255,.05);border-color:var(--hair);}
.trail__tabbtn{display:inline-flex;align-items:center;gap:7px;padding:10px 4px 10px 12px;font:600 .72rem var(--font-display);letter-spacing:.11em;text-transform:uppercase;color:var(--muted);white-space:nowrap;}
.trail__tabbtn svg{color:var(--gold-bright);}
.trail__tab.is-active .trail__tabbtn{color:var(--gold-bright);}
.trail__tabbtn:hover{color:var(--text);}
.trail__tabx{display:grid;place-items:center;width:24px;height:24px;margin-right:6px;border-radius:7px;color:var(--faint);}
.trail__tabx:hover{background:rgba(255,255,255,.1);color:var(--text);}
.trail__bar > .twin__btn{margin-bottom:6px;}
.trail__body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 14px 18px;}
.trail__body[hidden]{display:none;}

/* With the rail open, the always-there buttons and notices sit beside it, not under it. */
@media (min-width:1000px){
  body:has(.trail) .tfab{right:calc(var(--rail-w) + 36px);}
  body:has(.trail) .ttoast{left:calc((100vw - var(--rail-w) - 16px) / 2);}
  /* Six tiles in three neat columns rather than four and a straggling pair. */
  body:has(.trail) .tstats{grid-template-columns:repeat(3,minmax(0,1fr));}
}

/* On a smaller laptop the bar keeps the scoreboard's words and drops the rest to icons. */
@media (min-width:821px) and (max-width:1360px){
  .tbar__btn--find .tbar__label,.tbar__btn--lock .tbar__label,.tbar__btn--menu .tbar__label{display:none;}
  .tsync__text{display:none;}
  .tsync.is-error .tsync__text{display:inline;}
}

/* ---- the bottom tab bar: shown on phones and small tablets only ---- */
.ttabs{display:none;}

@media (max-width:820px){
  :root{--tabs-h:calc(64px + env(safe-area-inset-bottom,0px));}

  .todo{padding-bottom:calc(var(--tabs-h) + var(--sp-5));}
  .tfab{display:none;}

  /* Compact toolbar on mobile: hide group-by, stack selects */
  .ttool__row{flex-direction:column;gap:12px;}
  .ttool__group{display:none;}
  .ttool__new{margin-left:0;width:100%;}
  .ttool__new .tnew{flex:1;}
  .only-wide{display:none !important;}
  .only-compact{display:inline !important;}
  
  .ttabs{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;height:var(--tabs-h);padding:6px 6px env(safe-area-inset-bottom,0px);background:rgba(21,44,41,.95);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);border-top:1px solid var(--hair-strong);box-shadow:0 -16px 32px -20px rgba(0,0,0,.75);}
  html[data-kb="open"] .ttabs{display:none;}
  .ttabs__tab,.ttabs__capture{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;padding:4px 2px;border-radius:12px;font-size:.64rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);text-decoration:none;-webkit-tap-highlight-color:transparent;}
  .ttabs__tab.is-active{color:var(--gold-bright);}
  .ttabs__tab.is-active::before{content:"";position:absolute;top:0;width:26px;height:3px;border-radius:0 0 3px 3px;background:var(--gold-bright);}
  .ttabs__tab{position:relative;}
  .ttabs__icon{position:relative;display:grid;place-items:center;}
  .ttabs__badge{position:absolute;top:-5px;right:-11px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--pink);color:#fff;font:700 .62rem var(--font-body);letter-spacing:0;}
  .ttabs__capture{color:var(--gold-bright);}
  .ttabs__orb{display:grid;place-items:center;width:56px;height:56px;margin-top:-26px;border-radius:50%;background:linear-gradient(135deg,var(--pink),var(--gold));color:#142825;box-shadow:0 12px 26px -8px rgba(201,144,111,.65),0 0 0 4px rgba(21,44,41,.95);transition:transform .2s cubic-bezier(.34,1.56,.64,1);}
  .ttabs__capture:active .ttabs__orb{transform:scale(.94);}
  .ttabs__capture.is-active .ttabs__orb{box-shadow:0 12px 26px -8px rgba(201,144,111,.65),0 0 0 4px rgba(21,44,41,.95),0 0 0 6px var(--gold-bright);}
  .ttabs__capture.is-busy svg{animation:tPulse 1s ease-in-out infinite;}

  /* One slim row on top; the places she goes moved to the tab bar. */
  .tbar{position:static;margin-top:var(--sp-2);padding:6px 8px;border-radius:16px;}
  .tbar__menu{display:none;}
  .tbar__right{flex:1;flex-wrap:nowrap;gap:6px;}
  .tbar__right .tscore{order:0;}
  .tbar__right .there{order:1;}
  .tbar__right .tsync{order:2;margin-left:auto;}
  .tbar__right .tbar__btn--find{order:3;}
  .tbar__right .tbar__btn--menu{order:4;}
  .tbar__btn--lock,.tbar__label,.tscore__label,.tscore__unit,.tsync__text{display:none;}
  .tsync.is-error .tsync__text{display:inline;font-size:.72rem;}
  .tsync{padding:0;border:0;background:none;}
  .tbar__btn{justify-content:center;min-width:42px;height:42px;padding:0 11px;}
  .only-wide{display:none;}
  .only-compact{display:inline-flex;}
  .tscore{height:42px;padding:0 12px;}
  .there{padding:5px 10px;font-size:.74rem;}

  .twm__lock{display:flex;align-items:center;gap:8px;width:100%;margin-top:14px;padding:11px 14px;border:1px solid var(--hair-strong);border-radius:12px;font-size:.9rem;color:var(--muted);}

  /* The numbers become a row you swipe, so the list starts higher up. */
  .tstats{display:flex;gap:10px;margin:var(--sp-3) -16px;padding:2px 16px 6px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;}
  .tstats::-webkit-scrollbar{display:none;}
  .tstats > *{flex:0 0 142px;scroll-snap-align:start;}
  .tstat{padding:12px 14px;}
  .tstat__value{font-size:1.65rem;}
  .tstat__cap{margin-top:6px;}

  .wb{height:clamp(420px,calc(100dvh - 210px - var(--tabs-h)),900px);}

  .ttoast{bottom:calc(var(--tabs-h) + 14px);max-width:calc(100vw - 24px);}
  .ttray{left:12px;bottom:calc(var(--tabs-h) + 12px);width:calc(100vw - 24px);}

  /* Phones zoom the page when a field is smaller than 16px; keep every field at 16. */
  .todo input,.todo textarea,.todo select,.twin input,.twin textarea,.twin select,.tpop input,.tpop select,.tpal input{font-size:16px!important;}
  .todo button,.twin button,.ttabs button,.ttabs a{-webkit-tap-highlight-color:transparent;}
}

@media (min-width:821px){
  .twm__lock{display:none;}
}

/* ---- Advisor: Phase 1 Foundation (execution intelligence) ---- */
.advisor{padding:var(--sp-4) 0;display:flex;flex-direction:column;gap:var(--sp-5);}
.advisor__section{padding:var(--sp-4);border-radius:16px;background:rgba(25,52,48,.4);border:1px solid var(--hair);}
.advisor__heading{margin:0 0 var(--sp-3) 0;font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--gold);}

.advisor__metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--sp-3);}
.advisor__metric{padding:var(--sp-3);border-radius:12px;background:rgba(201,144,111,.08);border-left:3px solid var(--gold-bright);}
.advisor__metric-label{font-size:.8rem;text-transform:uppercase;color:var(--muted);letter-spacing:0.5px;}
.advisor__metric-value{margin-top:6px;font-size:1.8rem;font-weight:700;color:var(--gold-bright);}
.advisor__metric-sub{margin-top:4px;font-size:.75rem;color:var(--muted);}

.advisor__insights{display:flex;flex-direction:column;gap:var(--sp-3);}
.advisor__empty{margin:0;padding:var(--sp-3);text-align:center;color:var(--muted);font-size:.9rem;font-style:italic;}

.advisor__insight{padding:var(--sp-3);border-radius:12px;border-left:3px solid;}
.advisor__insight--info{border-left-color:var(--blue-soft);background:rgba(143,184,242,.08);}
.advisor__insight--warning{border-left-color:var(--gold);background:rgba(166,211,205,.08);}
.advisor__insight--alert{border-left-color:var(--rose);background:rgba(238,73,110,.08);}

.advisor__insight-title{font-weight:700;margin-bottom:4px;color:#fff;}
.advisor__insight-message{font-size:.9rem;color:var(--muted);line-height:1.4;}

.advisor__completion{display:flex;flex-direction:column;gap:var(--sp-3);}
.advisor__completion-item{display:flex;justify-content:space-between;align-items:baseline;padding:var(--sp-2) var(--sp-3);}
.advisor__completion-label{font-size:.9rem;color:var(--muted);}
.advisor__completion-rate{font-size:1.6rem;font-weight:700;color:var(--green-soft);}

.advisor__note{margin:var(--sp-3) 0 0;padding:var(--sp-3);border-radius:10px;background:rgba(143,232,220,.08);border-left:2px solid var(--teal);font-size:.9rem;color:var(--muted);line-height:1.5;}

/* ---- her answer to a suggestion: useful, or dismiss ---- */
.advfb{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:var(--sp-2);}
.advfb__btn{padding:4px 12px;border-radius:999px;border:1px solid var(--hair-strong);background:transparent;font-size:.74rem;font-weight:600;letter-spacing:.04em;color:var(--muted);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease;}
.advfb__btn:hover{border-color:var(--gold);color:var(--text);}
.advfb__btn:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px;}
.advfb--done{font-size:.74rem;font-style:italic;color:var(--muted);}

@media (max-width:820px){
  .advisor__metrics{grid-template-columns:repeat(2,1fr);}
}

/* Phase 3: Advisor Dashboard Link */
.advisor__dashboard-link {
  display: inline-block;
  padding: 10px 14px;
  border-radius: 8px;
  background: rgba(120,179,163, 0.12);
  border: 1px solid color-mix(in srgb, var(--gold) 34%, transparent);
  color: var(--gold-bright);
  font-size: 0.9rem;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease;
}

.advisor__dashboard-link:hover {
  background: rgba(120,179,163, 0.24);
  border-color: var(--gold);
  transform: translateX(2px);
}
