/* Today's True Yield. Everything is scoped to #yd so it cannot clash with the rest of the site.
   Colours come from the site's own theme variables (css/theme.css), so every theme / accent works. */
#yd{--card2:color-mix(in srgb,var(--text) 5%,var(--card));--good:var(--ok);--bad:var(--down);--accent-ink:#fff;
  font-family:"Plus Jakarta Sans","Noto Sans Sinhala",system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65;display:grid;gap:24px;min-width:0}
#yd>*{min-width:0}
#yd .ystack{display:grid;gap:24px;min-width:0}
#yd .ystack>*{min-width:0}
#yd .ypanel{min-width:0}
#yd .empty{padding:36px 26px;text-align:center}
#yd .empty h2{margin:0 0 8px}
#yd .empty p{margin:0 auto 18px;max-width:52ch;color:var(--muted)}
#yd .ybtn{display:inline-block;line-height:1.3}
#yd .ysync{margin:0;font-size:13px;color:var(--muted)}
#yd .ysync b{color:var(--text)}
#yd .views{display:flex;gap:8px;border-bottom:1px solid var(--line)}
#yd .views button{display:flex;align-items:center;gap:8px;padding:12px 18px;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--muted);font-weight:600;font-size:15px}
#yd .views button[aria-selected="true"]{color:var(--text);border-bottom-color:var(--accent)}
#yd .views button:hover{color:var(--text)}
#yd .badge{padding:1px 9px;border-radius:999px;background:var(--card2);border:1px solid var(--line);font-size:12px;font-variant-numeric:tabular-nums}
#yd .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
#yd .step{display:flex;align-items:center;gap:10px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:transparent;text-align:left;color:var(--muted)}
#yd .step b{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;border:1px solid var(--line);font-size:13px;font-family:"Plus Jakarta Sans",sans-serif}
#yd .step span{min-width:0;font-size:14px;font-weight:600;line-height:1.35}
#yd .step.on{border-color:var(--accent);color:var(--text)}
#yd .step.on b{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
#yd .step.done b{background:var(--good);border-color:var(--good);color:var(--bg)}
#yd .step:disabled{opacity:.45;cursor:default}
@media (max-width:560px){
  #yd .step{padding:10px;gap:8px}
  #yd .step span{font-size:12px}
}
#yd .ypanel{padding:26px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
#yd .ypanel h2{margin:0 0 6px;font-size:21px;line-height:1.35;font-weight:700;text-wrap:balance}
#yd .ypanel .sub{margin:0 0 20px;color:var(--muted);font-size:15px}
#yd .h{margin:0 0 14px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
@media (max-width:560px){
  #yd .ypanel{padding:18px}
}
#yd .timer{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
#yd .clock{font:800 28px "Plus Jakarta Sans",sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.02em;min-width:76px}
#yd .ybtn{padding:11px 20px;border-radius:10px;border:1px solid transparent;background:var(--btn);color:#fff;font-weight:600;font-size:14px}
#yd .ybtn:hover{filter:brightness(1.12)}
#yd .ybtn.ghost{background:transparent;border-color:var(--line);color:var(--text)}
#yd .ybtn.ghost:hover{border-color:var(--accent);filter:none}
#yd .ybtn:disabled{opacity:.45;cursor:default;filter:none}
#yd .fld{display:grid;gap:8px;min-width:0}
#yd .fld>label,#yd .fld>.lab{font-size:13px;font-weight:600;color:var(--text)}
#yd .lab small,#yd .fld>label small{font-weight:400;color:var(--muted)}
#yd .txt{width:100%;padding:11px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg);font-size:15px;line-height:1.5}
#yd .txt:focus{outline:none;border-color:var(--accent)}
#yd .txt:disabled{opacity:.5}
#yd textarea.txt{resize:vertical;min-height:84px}
#yd .seg{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--bg)}
#yd .seg button{padding:9px 13px;border:0;border-right:1px solid var(--line);background:transparent;font-size:14px;font-weight:600;color:var(--muted)}
#yd .seg button:last-child{border-right:0}
#yd .seg button[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink)}
#yd .seg button:hover{color:var(--text)}
#yd .seg button[aria-pressed="true"]:hover{color:var(--accent-ink)}
#yd .chips{display:flex;flex-wrap:wrap;gap:8px}
#yd .cb{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:transparent;font-size:14px;font-weight:600;color:var(--text);text-align:left}
#yd .cb small{font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}
#yd .cb:hover:not(:disabled){border-color:var(--accent)}
#yd .cb[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
#yd .cb[aria-pressed="true"] small{color:var(--accent-ink);opacity:.85}
#yd .cb:disabled{opacity:.45;cursor:not-allowed;border-style:dashed}
#yd .cb.sug{font-weight:500;font-size:13px;padding:6px 12px}
#yd .cb.sug i{width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}
#yd .cb.sug.old i{background:var(--muted)}
#yd .hint{margin:0;font-size:13px;color:var(--muted)}
#yd .err{margin:0;min-height:20px;font-size:13px;font-weight:600;color:var(--bad)}
#yd .cnt{justify-self:end;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
#yd .add{display:grid;gap:18px;padding:18px;border-radius:12px;background:var(--card2);border:1px solid var(--line)}
#yd .add-row{display:flex;flex-wrap:wrap;gap:14px 20px;align-items:flex-end;justify-content:space-between}
#yd .items{display:grid;gap:16px;margin:22px 0 0;padding:0;list-style:none}
#yd .grp h3{margin:0 0 8px;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;font-size:14px}
#yd .grp h3 small{font-weight:500;color:var(--muted)}
#yd .grp ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
#yd .item{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
#yd .item p{margin:0;min-width:0;overflow-wrap:anywhere}
#yd .meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:6px;font-size:12px;color:var(--muted);align-items:center}
#yd .ychip{padding:2px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}
#yd .ychip.t{color:var(--text)}
#yd .x{flex:none;border:0;background:transparent;color:var(--muted);font-size:18px;line-height:1;padding:4px 8px;border-radius:8px}
#yd .x:hover{color:var(--bad)}
#yd .yfoot{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-top:22px}
#yd .two{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;align-items:start}
@media (max-width:820px){
  #yd .two{grid-template-columns:1fr}
}
#yd .verify{display:grid;gap:12px}
#yd .vitem{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg);display:grid;gap:10px}
#yd .vitem p{margin:0;overflow-wrap:anywhere}
#yd .vrow{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;justify-content:space-between}
#yd .verdict{display:inline-flex;gap:6px;flex-wrap:wrap}
#yd .verdict button{padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:transparent;font-size:13px;font-weight:600;color:var(--muted)}
#yd .verdict button:hover{color:var(--text);border-color:var(--muted)}
#yd .verdict button[aria-pressed="true"][data-v="solid"]{background:var(--good);border-color:var(--good);color:var(--bg)}
#yd .verdict button[aria-pressed="true"][data-v="fuzzy"]{background:var(--warn);border-color:var(--warn);color:var(--bg)}
#yd .verdict button[aria-pressed="true"][data-v="wrong"]{background:var(--bad);border-color:var(--bad);color:var(--bg)}
#yd .side{padding:18px;border-radius:12px;background:var(--card2);border:1px solid var(--line)}
#yd .tk{padding:10px 0;border-bottom:1px solid var(--line)}
#yd .tk:last-of-type{border-bottom:0}
#yd .tk-h{display:flex;justify-content:space-between;gap:10px;font-size:14px;font-weight:600}
#yd .tk-h span:last-child{color:var(--muted);font-weight:500}
#yd .tk ul{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:3px;font-size:13px}
#yd .tk li{display:flex;justify-content:space-between;gap:10px;color:var(--muted)}
#yd .tk li.ok span:last-child{color:var(--good)}
#yd .tk li.miss span:last-child{color:var(--bad);font-weight:600}
#yd .cap{margin:10px 0 0;font-size:12px;color:var(--muted)}
#yd .hero{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center}
@media (max-width:640px){
  #yd .hero{grid-template-columns:1fr;justify-items:center;text-align:center}
}
#yd .ring{position:relative;width:176px;height:176px}
#yd .ring svg{display:block;width:100%;height:100%;transform:rotate(-90deg)}
#yd .ring .trk{fill:none;stroke:var(--line);stroke-width:10}
#yd .ring .val{fill:none;stroke:var(--accent);stroke-width:10;stroke-linecap:round;transition:stroke-dashoffset .9s cubic-bezier(.2,.7,.2,1)}
#yd .ring .mid{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
#yd .ring .mid b{font:800 44px/1 "Plus Jakarta Sans",sans-serif;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
#yd .ring .mid small{margin-top:4px;font-size:12px;color:var(--muted)}
#yd .tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%}
@media (max-width:640px){
  #yd .tiles{grid-template-columns:1fr}
}
#yd .tile{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--bg);text-align:left}
#yd .tile small{display:block;font-size:12px;font-weight:600;color:var(--muted)}
#yd .tile b{display:block;margin-top:4px;font:800 28px/1.15 "Plus Jakarta Sans",sans-serif;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
#yd .tile span{display:block;margin-top:2px;font-size:12px;color:var(--muted)}
#yd .tile.warn b{color:var(--warn)}
#yd .tile.ok b{color:var(--good)}
#yd .say{margin:20px 0 0;padding:14px 16px;border-radius:12px;background:var(--card2);border:1px solid var(--line);font-size:15px}
#yd .tbl{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
#yd table{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}
#yd th,#yd td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;font-variant-numeric:tabular-nums}
#yd th{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--card2)}
#yd tr:last-child td{border-bottom:0}
#yd .pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid;white-space:nowrap}
#yd .pill.good{color:var(--good);border-color:var(--good)}
#yd .pill.warn{color:var(--warn);border-color:var(--warn)}
#yd .pill.bad{color:var(--bad);border-color:var(--bad)}
#yd .cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media (max-width:820px){
  #yd .cols{grid-template-columns:1fr}
}
#yd .cols>div{min-width:0}
#yd .queue{display:grid;gap:8px;margin:0;padding:0;list-style:none}
#yd .queue li{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);font-size:14px}
#yd .queue li span:first-child{min-width:0;overflow-wrap:anywhere}
#yd .queue small{display:block;color:var(--muted);font-size:12px}
#yd .queue .due{flex:none;font-size:12px;font-weight:700;color:var(--accent);white-space:nowrap}
#yd .spark{width:100%;height:auto;display:block}
#yd .spark text{font:500 11px "Plus Jakarta Sans",sans-serif;fill:var(--muted)}
#yd .saved{margin:0;min-height:20px;font-size:13px;color:var(--good)}
#yd .selbox{display:grid;gap:10px;margin-bottom:18px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
#yd .selbox .lab{font-size:13px;font-weight:600}
#yd .selbox .lab small{font-weight:400;color:var(--muted)}
#yd .nt{margin:0;min-height:0;font-size:13px;color:var(--warn)}
#yd .nt:empty{display:none}
#yd .lnk{padding:0;border:0;background:none;color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:3px}
#yd .savebar{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;justify-content:space-between}
#yd .hs{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;justify-content:space-between}
#yd .hs .tiles{margin-top:16px}
#yd .day{border:1px solid var(--line);border-radius:12px;background:var(--bg);padding:0 16px}
#yd .day summary{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;justify-content:space-between;padding:12px 0;font-weight:600;cursor:pointer;list-style:none}
#yd .day summary::-webkit-details-marker{display:none}
#yd .day summary::before{content:"▸";color:var(--muted);margin-right:-6px;transition:transform .15s}
#yd .day[open] summary::before{transform:rotate(90deg)}
#yd .day summary .l{display:flex;gap:10px;align-items:center;flex:1 1 160px}
#yd .day summary .r{display:flex;gap:12px;align-items:center;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
#yd .day .body{display:grid;gap:12px;padding:2px 0 16px}
#yd .day .body h4{margin:0 0 6px;font-size:13px}
#yd .day .body ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
#yd .day .body li{display:flex;gap:10px;justify-content:space-between;align-items:flex-start;font-size:14px}
#yd .day .body li span:first-child{min-width:0;overflow-wrap:anywhere}
#yd .dot{flex:none;font-size:12px;font-weight:700;white-space:nowrap}
#yd .dot.solid{color:var(--good)}
#yd .dot.fuzzy{color:var(--warn)}
#yd .dot.wrong{color:var(--bad)}
#yd .note{margin:0;padding:10px 12px;border-radius:10px;background:var(--card2);font-size:14px}
#yd .list{display:grid;gap:10px}
#yd .weak{display:grid;gap:8px;margin:0;padding:0;list-style:none}
#yd .weak li{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);font-size:14px}
#yd .weak li span:first-child{min-width:0;overflow-wrap:anywhere}
#yd .weak b{color:var(--bad);font-variant-numeric:tabular-nums;white-space:nowrap}
#yd details.why{border:1px solid var(--line);border-radius:12px;padding:4px 18px;background:var(--card)}
#yd details.why summary{cursor:pointer;padding:12px 0;font-weight:600}
#yd details.why ul{margin:0 0 14px;padding-left:20px;display:grid;gap:10px;color:var(--muted);font-size:14px}
#yd details.why a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
@media (prefers-reduced-motion:reduce){
  #yd .ring .val{transition:none}
}
