:root{--navy:#1B3A5C;--gold:#C9A84C;--steel:#4A6FA5;--green:#2E6B47;--ink:#26323d;--muted:#5a6b7b;--paper:#f7f8fa;--line:#e2e7ee}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.5}a{color:var(--steel)}.container{max-width:760px;margin:0 auto;padding:1.5rem}.topbar{display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid var(--gold);background:var(--navy);color:#fff;padding:.85rem 1.25rem}.topbar .brand{font-weight:700;letter-spacing:.02em}.topbar .who{font-size:.85rem;color:#cdd8e6}.topbar form{display:inline}.btn,button{font:inherit;cursor:pointer;border:none;border-radius:6px;background:var(--gold);color:var(--navy);font-weight:700;padding:.6rem 1.1rem}.btn.secondary,button.secondary{background:transparent;color:#cdd8e6;text-decoration:underline;padding:.3rem 0}button:disabled{opacity:.6;cursor:default}label{display:block;font-size:.82rem;color:var(--muted);margin:.75rem 0 .25rem}input,select{font:inherit;width:100%;padding:.55rem .65rem;border:1px solid var(--line);border-radius:6px;background:#fff}.row{display:flex;gap:.75rem}.row>div{flex:1 1}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:1.5rem;margin:1.25rem 0}.card h2{color:var(--navy);margin:0 0 .25rem}.eyebrow{color:var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.dm{font-size:1.9rem;color:var(--navy);margin:.25rem 0}.pillars{display:flex;gap:.5rem;flex-wrap:wrap;margin:.75rem 0}.pillar{border:1px solid var(--line);border-radius:8px;padding:.5rem .7rem;min-width:96px}.pillar .k{font-size:.7rem;color:var(--muted);text-transform:uppercase}.pillar .v{font-weight:700;color:var(--navy)}.pillar.day{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.elem{display:grid;grid-template-columns:64px 1fr 44px;align-items:center;grid-gap:.5rem;gap:.5rem;margin:.28rem 0}.elem .bar{background:var(--line);border-radius:4px;height:12px;overflow:hidden}.elem .fill{height:100%;background:var(--steel)}.elem .fill.zero{background:transparent}.gold-callout{background:#faf5e6;border-left:4px solid var(--gold);border-radius:6px;padding:.9rem 1.1rem;margin:1rem 0}.gold-callout .eyebrow{color:#a6842e}.note{color:var(--muted)}.flag,.note{font-size:.85rem}.flag{background:#eef3fb;border-left:4px solid var(--steel);border-radius:6px;padding:.6rem .9rem;margin:.75rem 0}.error{color:#9b2c2c;font-size:.88rem}.prose{white-space:pre-wrap}.tiers{font-size:.78rem;color:var(--muted);margin-top:.5rem}.roles span{display:inline-block;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:.15rem .6rem;margin:.15rem .2rem 0 0;font-size:.8rem}.modcard{transition:box-shadow .15s}.modcard:hover{box-shadow:0 2px 10px rgba(27,58,92,.12)}.modcard.locked{opacity:.65}.modcard.locked:hover{box-shadow:none}.progressbar{background:var(--line);border-radius:6px;height:10px;overflow:hidden;margin:.6rem 0}.progressbar span{display:block;height:100%;background:var(--gold)}h1{font-size:1.6rem}.card.finale{border:2px solid var(--gold);background:linear-gradient(180deg,#fffdf6,#fff 30%)}.checklist{list-style:none;padding:0;margin:.75rem 0 0}.checklist li{padding:.3rem 0;color:var(--muted);font-size:.92rem}.checklist li.done{color:var(--green)}.btn.quiet,button.quiet{background:transparent;color:var(--muted);border:1px solid var(--line);font-weight:400}.checkin-cat{border:1px solid var(--line);border-radius:8px;margin:.4rem 0;padding:.4rem .7rem}.checkin-cat summary{cursor:pointer;padding:.2rem 0}.checkin-list{list-style:none;margin:.3rem 0 .2rem;padding:0}.checkin-list li label{display:flex;align-items:baseline;gap:.5rem;font-size:.9rem;color:var(--ink);margin:0;padding:.24rem 0;border-top:1px solid var(--paper);cursor:pointer}.checkin-list input[type=checkbox]{width:auto;accent-color:var(--gold)}.checkin-list .pts{margin-left:auto;color:var(--gold);font-weight:700;font-size:.8rem}.graph-frame{border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:.75rem 0;background:#fff}.graph-frame svg{display:block;width:100%;height:auto}.caret{color:var(--gold);font-weight:700;animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.actions-list{display:flex;flex-direction:column;gap:.6rem;margin-top:1rem}.action-row{display:flex;gap:.75rem;align-items:flex-start;flex-wrap:wrap;border:1px solid var(--line);border-radius:8px;padding:.7rem .8rem;background:#fff}.action-row__main{flex:1 1 20rem;display:flex;flex-direction:column;gap:.35rem;min-width:0}.action-row__main input{width:100%}.action-row__side{display:flex;align-items:flex-end;gap:.5rem;flex:0 0 auto;padding-left:.25rem}.action-row__side label{display:flex;flex-direction:column;gap:.15rem;white-space:nowrap}.action-row__side input{width:4.5rem}.week-list{display:flex;flex-direction:column;gap:.4rem;margin-top:1rem}.week-item{display:flex;align-items:flex-start;gap:.7rem;cursor:pointer;border:1px solid var(--line);border-radius:8px;padding:.7rem .85rem;background:#fff}.week-item:hover{border-color:var(--gold)}.week-item--on{background:#f7fbf8;border-color:#cfe6d8}.week-item input{width:auto;margin:.15rem 0 0;flex:0 0 auto}.week-item__txt{flex:1 1 auto;display:flex;flex-direction:column;gap:.15rem;min-width:0}.week-item__label{font-weight:600;color:var(--ink,#26323d)}.week-item__why{font-size:.82rem;color:var(--muted)}.week-item__pts{flex:0 0 auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;color:var(--navy);background:#f1f5f9;border-radius:999px;padding:.1rem .55rem;font-size:.85rem}.week-item--on .week-item__pts{background:#dff0e6;color:#1b6b45}.graph-archive{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.3rem}.graph-archive li a{display:block;padding:.5rem .7rem;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:.9rem;text-decoration:none}.graph-archive li a:hover{border-color:var(--gold)}.upgrade-list{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.7rem}.upgrade-list li{padding-left:1.1rem;position:relative;line-height:1.5}.upgrade-list li:before{content:"→";position:absolute;left:0;color:var(--gold);font-weight:700}.upgrade-continuity{margin-top:1.25rem;padding:.9rem 1rem;border-radius:8px;background:#f7f2e2;border:1px solid var(--gold)}.coverage{margin:1rem 0 .5rem}.coverage__track{height:14px;border-radius:7px;background:#e6ebf2;overflow:hidden;border:1px solid var(--line,#dbe3ec)}.coverage__fill{height:100%;background:linear-gradient(90deg,var(--gold) 0,#b8902f 100%);border-radius:7px 0 0 7px}.coverage__label{margin:.5rem 0 0;font-size:.95rem}.doc{max-width:46rem}.doc p{line-height:1.65;margin:0 0 .85rem}.doc .doc-h1{color:var(--navy);font-size:1.45rem;margin:2.6rem 0 .9rem;padding-bottom:.4rem;border-bottom:2px solid var(--gold)}.doc .doc-h2{color:var(--navy);font-size:1.15rem;margin:2rem 0 .6rem}.doc .doc-h3{color:#2c5480;font-size:1rem;margin:1.5rem 0 .5rem}.doc .doc-rule{border:0;border-top:1px solid var(--gold);opacity:.5;margin:2rem 0}.doc .doc-list{margin:0 0 1rem;padding-left:1.15rem}.doc .doc-list li{margin-bottom:.4rem;line-height:1.6}.doc .doc-callout{margin:1.1rem 0 1.4rem;padding:1rem 1.15rem;background:#fbf7ec;border-left:4px solid var(--gold);border-radius:0 6px 6px 0}.doc .doc-callout p{font-style:italic;margin-bottom:.7rem}.doc .doc-callout p:last-child{margin-bottom:0}.doc .doc-callout strong{font-style:normal}.doc .doc-callout__head{font-style:normal!important;font-weight:800;color:#8a6d1f;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;margin-bottom:.5rem!important}.doc .doc-tablewrap{overflow-x:auto;margin:.9rem 0 1.4rem}.doc .doc-table{width:100%;border-collapse:collapse;font-size:.92rem}.doc .doc-table th{background:var(--navy);color:#fff;text-align:left;padding:.5rem .65rem;font-weight:700}.doc .doc-table td{padding:.5rem .65rem;border:1px solid var(--line,#dbe3ec);background:#f7fafc;vertical-align:top}.doc a{word-break:break-word}.doc a,.doc code{color:var(--navy)}.doc code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.86em;background:#eef3f8;padding:.05rem .25rem;border-radius:3px}