/* Weekly project status one-pager. Light by default, follows the OS, forced by [data-theme]. */
:root{
  color-scheme:light dark;
  --bg:light-dark(#F9FAFB,#0C0D12);
  --card:light-dark(#FFFFFF,#15161D);
  --card2:light-dark(#F3F4F6,#1C1E27);
  --ink:light-dark(#111827,#E8E9EF);
  --muted:light-dark(#6B7280,#9498A6);
  --line:light-dark(#E5E7EB,#262935);
  --accent:light-dark(#7C3AED,#A78BFA);
  --accent-soft:light-dark(#F5F1FE,rgba(167,139,250,.14));
  --green:light-dark(#15803D,#4ADE80); --green-bg:light-dark(#ECFDF3,rgba(74,222,128,.13));
  --amber:light-dark(#B45309,#FBBF24); --amber-bg:light-dark(#FEF6EC,rgba(251,191,36,.13));
  --red:light-dark(#B91C1C,#F87171);   --red-bg:light-dark(#FEF2F2,rgba(248,113,113,.13));
  --sans:system-ui,-apple-system,"Segoe UI",sans-serif;
}
:root[data-theme="light"]{color-scheme:only light}
:root[data-theme="dark"]{color-scheme:only dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14.5px;line-height:1.6;-webkit-font-smoothing:antialiased;text-wrap:pretty}
.wrap{max-width:880px;margin:0 auto;padding:44px 24px 60px}
.head{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:baseline;justify-content:space-between}
h1{font-size:24px;font-weight:650;letter-spacing:-.02em;margin:0}
.week{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.status{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:650;letter-spacing:.04em;padding:5px 12px;border-radius:999px;background:var(--amber-bg);color:var(--amber)}
.status i{width:7px;height:7px;border-radius:50%;background:currentColor;display:block}
.progress{margin:22px 0 20px}
.ptrack{height:10px;border-radius:6px;background:var(--card2);border:1px solid var(--line);overflow:hidden}
.ptrack i{display:block;height:100%;background:var(--accent);border-radius:6px}
.pmeta{display:flex;justify-content:space-between;font-size:12.5px;color:var(--muted);margin-top:8px;font-variant-numeric:tabular-nums}
.pmeta b{color:var(--ink);font-weight:650}
.summary{font-size:15.5px;line-height:1.65;margin:0 0 24px;max-width:66ch}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 22px;margin-bottom:16px}
h2{font-size:12.5px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.done li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px}
.tick{color:var(--green);font-weight:700;line-height:1.5}
.wip li{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--line)}
.wip li:last-child{border-bottom:none;padding-bottom:0}
.owner{font-size:12.5px;color:var(--muted);white-space:nowrap}
.blocked li{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}
.blocked li:first-child{border-top:none;padding-top:0}
.blocked span.txt{flex:1;min-width:200px}
.init{width:26px;height:26px;flex:none;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:10.5px;font-weight:700;display:grid;place-content:center;letter-spacing:.04em}
.chip{font-size:11px;font-weight:650;letter-spacing:.07em;text-transform:uppercase;padding:3px 8px;border-radius:6px;white-space:nowrap}
.chip.high{background:var(--red-bg);color:var(--red)}
.chip.med{background:var(--amber-bg);color:var(--amber)}
.chip.low{background:var(--green-bg);color:var(--green)}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;font-size:11px;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:0 10px 9px 0;border-bottom:1px solid var(--line)}
td{padding:11px 10px 11px 0;border-bottom:1px solid var(--line);vertical-align:top}
tr:last-child td{border-bottom:none}
th:last-child,td:last-child{padding-right:0}
.decide{background:var(--accent-soft);border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:12px;padding:20px 22px}
.decide h2{color:var(--accent)}
.decide ol{margin:0;padding:0;list-style:none;counter-reset:d;display:grid;gap:14px}
.decide li{counter-increment:d;position:relative;padding-left:32px;font-size:15px;line-height:1.5}
.decide li::before{content:counter(d);position:absolute;left:0;top:3px;font-size:11.5px;font-weight:700;color:var(--accent);border:1px solid var(--accent);width:20px;height:20px;border-radius:50%;display:grid;place-content:center}
.decide small{display:block;color:var(--muted);font-size:12.5px;margin-top:3px}
@media (max-width:620px){
  .wrap{padding:30px 16px 44px}
  table{font-size:13px}
  th:nth-child(3),td:nth-child(3){display:none}
}
@media print{
  @page{margin:14mm}
  :root{color-scheme:only light}
  body{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:10pt}
  .wrap{padding:0;max-width:none}
  .card,.decide{break-inside:avoid;margin-bottom:9px;padding:12px 14px}
  .summary{margin-bottom:12px}
}
