@import "https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Mono:wght@300;400&display=swap";*{box-sizing:border-box;margin:0;padding:0}body{color:#1a1814;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#faf8f5;font-family:DM Serif Display,Georgia,serif}a{color:inherit}.nav-link{letter-spacing:.12em;text-transform:lowercase;color:#888;cursor:pointer;background:0 0;border:none;padding:4px 0;font-family:DM Mono,monospace;font-size:12px;font-weight:300;text-decoration:none;transition:color .2s}.nav-link:hover{color:#1a1814}.nav-link.active{color:#1a1814;border-bottom:1px solid #1a1814}.section{opacity:0;animation:.6s forwards fadeUp;transform:translateY(16px)}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.mono{font-family:DM Mono,monospace;font-weight:300}.label-eyebrow{letter-spacing:.15em;color:#999;text-transform:uppercase;font-family:DM Mono,monospace;font-size:10px;font-weight:400}.contact-link{color:#1a1814;border-bottom:1px solid #ccc;padding-bottom:1px;font-family:DM Mono,monospace;font-size:13px;font-weight:300;text-decoration:none;transition:border-color .2s}.contact-link:hover{border-color:#1a1814}.btn{letter-spacing:.1em;text-transform:lowercase;color:#faf8f5;cursor:pointer;background:#1a1814;border:1px solid #1a1814;padding:10px 18px;font-family:DM Mono,monospace;font-size:12px;font-weight:400;text-decoration:none;transition:background .15s,color .15s;display:inline-block}.btn:hover{background:#2a2520}.btn.secondary{color:#1a1814;background:0 0}.btn.secondary:hover{color:#faf8f5;background:#1a1814}.btn:disabled{opacity:.35;cursor:not-allowed}.match-card{border-bottom:1px solid #eee5d8;grid-template-columns:1fr 1fr;gap:8px;padding:10px 0;display:grid;position:relative}.match-card-final{padding-top:22px}.match-final-flag{letter-spacing:.12em;text-transform:uppercase;color:#999;font-family:DM Mono,monospace;font-size:9px;position:absolute;top:6px;left:0}.pick-button.locked{cursor:default;opacity:1}.pick-button.locked:not(.picked){color:#b8b0a2;background:0 0;border-style:dashed}.pick-button.pending{color:#1a1814;background:#fdfbf6;border:1px dashed #1a1814;font-weight:400}.admin-confirm-bar{z-index:10;color:#faf8f5;background:#1a1814;justify-content:space-between;align-items:center;gap:16px;padding:14px 32px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 16px #1a18142e}.admin-confirm-bar .btn.secondary{color:#faf8f5;background:0 0;border-color:#faf8f5}.admin-confirm-bar .btn.secondary:hover{color:#1a1814;background:#faf8f5}.admin-confirm-bar .btn:not(.secondary){color:#1a1814;background:#faf8f5;border-color:#faf8f5}.admin-confirm-bar .btn:not(.secondary):hover{background:#ede9e0}.pick-button{text-align:left;cursor:pointer;color:#1a1814;background:#fdfbf6;border:1px solid #eee5d8;padding:10px 14px;font-family:DM Mono,monospace;font-size:13px;font-weight:300;transition:all .12s}.pick-button:hover{background:#f3efe5;border-color:#d8cfb8}.pick-button.picked{color:#faf8f5;background:#1a1814;border-color:#1a1814}.pick-button .seed{color:#aaa;margin-right:6px;font-size:10px}.pick-button.picked .seed{color:#888}.pick-button .nat{color:#999;margin-left:6px;font-size:10px}.pick-button.picked .nat{color:#aaa}.pick-button.empty{color:#bbb;cursor:not-allowed;font-style:italic}.pick-button.empty:hover{background:#fdfbf6;border-color:#eee5d8}.round-pills{flex-wrap:wrap;gap:6px;margin-bottom:24px;display:flex}.round-pill{letter-spacing:.1em;color:#aaa;text-transform:uppercase;background:0 0;border:1px solid #e8e4dd;border-radius:2px;padding:5px 10px;font-family:DM Mono,monospace;font-size:10px}.round-pill.done{color:#1a1814;background:#fdfbf6;border-color:#1a1814}.round-pill.current{color:#faf8f5;background:#1a1814;border-color:#1a1814}@media (width<=600px){.match-card{grid-template-columns:1fr}}.bracket-scroll{-webkit-overflow-scrolling:touch;margin:0 calc(50% - 50vw);padding:0 32px 32px;overflow:auto hidden}.bracket-labels{gap:8px;margin-bottom:14px;padding:0 4px;display:grid}.bracket-col-label{text-align:center;letter-spacing:.15em;text-transform:uppercase;color:#999;border-bottom:1px solid #e8e4dd;padding-bottom:6px;font-family:DM Mono,monospace;font-size:10px}.bracket-grid{gap:8px;min-height:1600px;padding:0 4px;display:grid}.bracket-column{flex-direction:column;justify-content:space-around;gap:2px;display:flex}.bracket-col-final{justify-content:center}.bracket-match{background:#fdfbf6;border:1px solid #eee5d8;border-radius:2px;flex-direction:column;display:flex;overflow:hidden}.bracket-match-final{border:1px solid #1a1814;box-shadow:0 2px 8px #1a181414}.bracket-slot{color:#1a1814;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #f0ebe0;padding:6px 8px;font-family:DM Mono,monospace;font-size:14px;font-weight:300;line-height:1.3;overflow:hidden}.bracket-slot:last-child{border-bottom:none}.bracket-slot-advanced{color:#faf8f5;background:#1a1814;font-weight:400}.bracket-slot{position:relative}.bracket-slot-winner{box-shadow:inset 3px 0 #3d8a4f}.bracket-slot-check{color:#3d8a4f;margin-left:6px;font-size:11px;font-weight:600}.bracket-slot-advanced.bracket-slot-winner{box-shadow:inset 3px 0 #6fc97e}.bracket-slot-advanced .bracket-slot-check{color:#6fc97e}.bracket-slot-eliminated{opacity:.42}.bracket-slot-eliminated .bracket-slot-name{text-decoration:line-through}.bracket-slot-empty{color:#ddd;font-style:italic}.bracket-slot-seed{color:#b8aa8a;margin-right:4px;font-size:9px;font-weight:300}.bracket-slot-advanced .bracket-slot-seed{color:#c9b890}.bracket-match-final .bracket-slot{padding:10px;font-size:16px}.bracket-stadium{width:100%;margin:0 auto}.bracket-labels-stadium,.bracket-grid-stadium{grid-template-columns:repeat(13,minmax(0,1fr))}.bracket-labels-linear,.bracket-grid-linear{grid-template-columns:repeat(7,minmax(150px,1fr))}.bracket-desktop-only{display:block}.bracket-mobile-only{display:none}@media (width<=700px){.bracket-desktop-only{display:none}.bracket-mobile-only{display:block}.bracket-scroll{scroll-snap-type:x mandatory;padding:0 0 24px}.bracket-labels-linear,.bracket-grid-linear{grid-template-columns:repeat(7,100vw);gap:0;padding:0}.bracket-grid-linear{align-items:start;min-height:0}.bracket-mobile-only .bracket-column,.bracket-mobile-only .bracket-col-final{justify-content:flex-start;gap:6px;padding-top:4px}.bracket-mobile-only .bracket-column,.bracket-mobile-only .bracket-col-label{scroll-snap-align:start;scroll-snap-stop:always;padding-left:20px;padding-right:20px}}.tl{--tl-font-body:"Georgia", "Iowan Old Style", "Palatino", serif;--tl-bg:#fbf6ef;--tl-surface:#fffdfa;--tl-ink:#4a3f39;--tl-ink-soft:#8a7d73;--tl-line:#e7dccd;--tl-accent:#c56b4a;--tl-shadow:0 6px 24px #785a3c1a;--tl-radius:16px;background:var(--tl-bg);min-height:100vh;color:var(--tl-ink);font-family:var(--tl-font-body);-webkit-font-smoothing:antialiased;line-height:1.6}.tl *{box-sizing:border-box}.tl .wrap{max-width:940px;margin:0 auto;padding:48px 24px 80px}.tl .loading,.tl .load-err{text-align:center;color:var(--tl-ink-soft);padding:80px 20px;font-style:italic}.tl .load-err{color:#b23b3b}.tl .page-head{text-align:center;margin-bottom:40px}.tl .page-head h1{letter-spacing:.5px;margin:0 0 8px;font-size:2.4rem;font-weight:400}.tl .page-head .subtitle{color:var(--tl-ink-soft);margin:0;font-size:1.05rem;font-style:italic}.tl .today-line{color:var(--tl-ink-soft);margin-top:14px;font-size:.95rem}.tl .today-line strong{color:var(--tl-accent)}.tl section{margin-bottom:52px}.tl .section-label{text-transform:uppercase;letter-spacing:2.5px;color:var(--tl-ink-soft);margin:0 0 16px;font-size:.78rem}.tl button.section-label{cursor:pointer;font-family:var(--tl-font-body);background:0 0;border:none;align-items:center;gap:8px;padding:0;display:inline-flex}.tl button.section-label:hover{color:var(--tl-ink)}.tl .section-label .chev{width:.8em;font-size:.72rem;display:inline-block}.tl .overview{background:var(--tl-surface);border-radius:var(--tl-radius);box-shadow:var(--tl-shadow);padding:34px 28px 54px;position:relative}.tl .arc-bar{border-radius:999px;height:46px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #0000000f}.tl .arc-seg{color:#fff;letter-spacing:.5px;white-space:nowrap;text-shadow:0 1px 2px #0000002e;justify-content:center;align-items:center;min-width:0;height:100%;font-size:.82rem;display:flex;overflow:hidden}.tl .here-marker{background:var(--tl-ink);z-index:3;border-radius:3px;width:3px;position:absolute;top:24px;bottom:30px;transform:translate(-50%)}.tl .here-marker:before{content:"";background:var(--tl-ink);border:3px solid var(--tl-surface);border-radius:50%;width:15px;height:15px;position:absolute;top:-9px;left:50%;transform:translate(-50%);box-shadow:0 2px 5px #00000040}.tl .here-label{background:var(--tl-ink);color:#fff;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:.68rem;position:absolute;top:-4px;left:50%;transform:translate(-50%)}.tl .arc-dates{height:30px;color:var(--tl-ink-soft);margin-top:8px;font-size:.75rem;position:relative}.tl .arc-date{white-space:nowrap;position:absolute;top:0;transform:translate(-50%)}.tl .arc-date.edge-start{transform:translate(0)}.tl .arc-date.edge-end{transform:translate(-100%)}.tl .focus-card{background:var(--tl-surface);border-radius:var(--tl-radius);box-shadow:var(--tl-shadow);border-left:8px solid var(--tl-accent);padding:30px 30px 34px}.tl .focus-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.tl .focus-head h2{margin:0;font-size:1.7rem;font-weight:400}.tl .focus-range{color:var(--tl-ink-soft);font-size:.9rem}.tl .focus-message{color:var(--tl-ink);margin:6px 0 22px;font-size:1.05rem;font-style:italic}.tl .progress-track{background:#eee3d6;border-radius:999px;height:26px;position:relative;overflow:hidden}.tl .progress-fill{border-radius:999px;height:100%;transition:width .9s}.tl .progress-stats{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:12px;display:flex}.tl .stat{text-align:center;background:var(--tl-bg);border-radius:12px;flex:120px;padding:12px 8px}.tl .stat .num{color:var(--tl-accent);font-size:1.6rem;line-height:1.1;display:block}.tl .stat .cap{text-transform:uppercase;letter-spacing:1.2px;color:var(--tl-ink-soft);font-size:.72rem}.tl .toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.tl .view-toggle{background:var(--tl-surface);box-shadow:var(--tl-shadow);border-radius:999px;padding:4px;display:inline-flex}.tl .tl-btn{font-family:var(--tl-font-body);cursor:pointer;color:var(--tl-ink-soft);background:0 0;border:none;border-radius:999px;padding:8px 18px;font-size:.9rem;transition:all .16s}.tl .tl-btn:hover{color:var(--tl-ink)}.tl .view-toggle .tl-btn.active{background:var(--tl-accent);color:#fff}.tl .tl-btn.primary{background:var(--tl-accent);color:#fff;box-shadow:var(--tl-shadow);padding:10px 20px;font-size:.92rem}.tl .tl-btn.primary:hover{color:#fff;filter:brightness(1.05)}.tl .saving-tag{color:var(--tl-ink-soft);font-size:.78rem;font-style:italic}.tl .cat-filter{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.tl .cat-chip{color:var(--tl-ink);background:var(--tl-surface);border:1px solid var(--tl-line);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 12px 4px 10px;font-size:.8rem;transition:all .14s;display:inline-flex}.tl .cat-chip .dot{border-radius:50%;flex:none;width:11px;height:11px}.tl .cat-chip.off{opacity:.4;text-decoration:line-through}.tl .cat-chip:hover{border-color:var(--tl-ink-soft)}.tl .people-legend{color:var(--tl-ink-soft);flex-wrap:wrap;align-items:center;gap:14px;margin:-6px 0 18px;font-size:.78rem;display:flex}.tl .people-legend .legend-label{text-transform:uppercase;letter-spacing:1.5px;font-size:.68rem}.tl .people-legend .legend-item{align-items:center;gap:6px;display:inline-flex}.tl .people-legend .dot{border-radius:50%;width:11px;height:11px}.tl .months-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:18px;padding:6px 4px 22px;display:flex;overflow-x:auto}.tl .month-card{scroll-snap-align:start;background:var(--tl-surface);border-radius:var(--tl-radius);box-shadow:var(--tl-shadow);border-top:6px solid var(--tl-line);flex-direction:column;flex:0 0 268px;display:flex;overflow:hidden}.tl .month-card.is-current{outline:3px solid var(--tl-accent);outline-offset:2px}.tl .m-head{padding:14px 18px 12px}.tl .m-name{margin:0;font-size:1.2rem}.tl .m-phase{text-transform:uppercase;letter-spacing:1.2px;color:var(--tl-ink-soft);margin:2px 0 0;font-size:.7rem}.tl .m-current-tag{background:var(--tl-accent);color:#fff;letter-spacing:1px;text-transform:uppercase;border-radius:999px;margin-top:6px;padding:2px 8px;font-size:.62rem;display:inline-block}.tl .m-body{flex-direction:column;flex:1;padding:4px 18px 18px;display:flex}.tl .milestones{margin:0 0 10px;padding:0;list-style:none}.tl .milestones li{border-bottom:1px dashed var(--tl-line);border-left:3px solid #0000;align-items:baseline;gap:8px;padding:6px 0 6px 6px;font-size:.9rem;display:flex}.tl .milestones li:last-child{border-bottom:none}.tl .m-day{color:var(--tl-accent);flex:none;min-width:34px;font-size:.82rem;font-weight:700}.tl .m-emoji{flex:none}.tl .m-text{flex:1}.tl .milestones .empty{color:var(--tl-ink-soft);border-bottom:none;border-left:none;padding-left:0;font-style:italic}.tl .ev-del{color:var(--tl-ink-soft);cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:6px;flex:none;padding:2px 4px;font-size:.85rem;line-height:1}.tl .ev-del:hover{opacity:1;color:#b23b3b;background:#f6e3e3}.tl .m-add{color:var(--tl-accent);border:1px dashed var(--tl-line);cursor:pointer;font-size:.82rem;font-family:var(--tl-font-body);background:0 0;border-radius:8px;align-self:flex-start;margin-top:auto;padding:6px 10px}.tl .m-add:hover{border-color:var(--tl-accent)}.tl .note-space{border:1.5px dashed var(--tl-line);min-height:40px;color:var(--tl-ink-soft);border-radius:10px;margin-top:10px;padding:10px 12px;font-size:.82rem;font-style:italic}.tl .note-space.has-note{color:var(--tl-ink);font-style:normal}.tl .note-photo{border-radius:8px;width:100%;margin-top:8px;display:block}.tl .scroll-hint{color:var(--tl-ink-soft);margin:0 0 8px;font-size:.8rem;font-style:italic}.tl .cal-nav{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.tl .cal-nav .tl-btn{background:var(--tl-surface);box-shadow:var(--tl-shadow);width:40px;height:40px;color:var(--tl-ink);border-radius:999px;padding:0;font-size:1.1rem}.tl .cal-nav .tl-btn:disabled{opacity:.35;cursor:default;box-shadow:none}.tl .cal-nav-title{align-items:baseline;gap:12px;font-size:1.25rem;display:inline-flex}.tl .cal-today{font-family:var(--tl-font-body);text-transform:uppercase;letter-spacing:1px;border:1px solid var(--tl-line);color:var(--tl-accent);cursor:pointer;background:0 0;border-radius:999px;padding:3px 10px;font-size:.72rem}.tl .cal-today:hover{border-color:var(--tl-accent)}.tl .calendar{flex-direction:column;gap:26px;display:flex}.tl .cal-month{background:var(--tl-surface);border-radius:var(--tl-radius);box-shadow:var(--tl-shadow);overflow:hidden}.tl .cal-month.is-current{outline:3px solid var(--tl-accent);outline-offset:2px}.tl .cal-month-head{align-items:baseline;gap:10px;padding:14px 18px;display:flex}.tl .cal-month-head h3{margin:0;font-size:1.25rem;font-weight:400}.tl .cal-phase{text-transform:uppercase;letter-spacing:1.2px;color:var(--tl-ink-soft);font-size:.7rem}.tl .cal-grid{grid-template-columns:repeat(7,1fr);display:grid}.tl .cal-weekday{text-align:center;text-transform:uppercase;letter-spacing:1px;color:var(--tl-ink-soft);border-top:1px solid var(--tl-line);padding:6px 0;font-size:.66rem}.tl .cal-cell{border-top:1px solid var(--tl-line);border-left:1px solid var(--tl-line);cursor:pointer;flex-direction:column;gap:3px;min-height:82px;padding:4px 4px 5px;transition:background .14s;display:flex;position:relative}.tl .cal-cell:nth-child(7n){border-right:1px solid var(--tl-line)}.tl .cal-cell:hover{background:#c56b4a0f}.tl .cal-cell.blank{cursor:default;background:repeating-linear-gradient(45deg,#faf5ee,#faf5ee 6px,#f4ece0 6px 12px)}.tl .cal-cell.out{opacity:.4;cursor:default}.tl .cal-cell.out:hover{background:0 0}.tl .cal-cell.today{box-shadow:inset 0 0 0 2px var(--tl-accent)}.tl .cal-daynum{color:var(--tl-ink-soft);align-self:flex-end;font-size:.72rem}.tl .cal-cell.today .cal-daynum{color:var(--tl-accent);font-weight:700}.tl .cal-event{text-overflow:ellipsis;white-space:nowrap;color:var(--tl-ink);border-left:3px solid var(--tl-accent);padding:2px 4px;font-size:.68rem;line-height:1.25;position:relative;overflow:hidden}.tl .cal-ev-del{color:#b23b3b;cursor:pointer;background:0 0;border:none;padding:0 3px;font-size:.7rem;display:none;position:absolute;top:0;right:0}.tl .cal-event:hover .cal-ev-del{display:inline}.tl .cal-event.seg-single{border-radius:6px}.tl .cal-event.seg-start{border-radius:6px 0 0 6px}.tl .cal-event.seg-mid{border-left-color:#0000;border-radius:0;min-height:16px}.tl .cal-event.seg-end{border-left-color:#0000;border-radius:0 6px 6px 0;min-height:16px}.tl .page-foot{text-align:center;color:var(--tl-ink-soft);margin-top:40px;font-size:.85rem;font-style:italic}.tl-modal-overlay{z-index:50;background:#3c2d2373;justify-content:center;align-items:center;padding:20px;font-family:Georgia,serif;display:flex;position:fixed;inset:0}.tl-modal{color:#4a3f39;background:#fffdfa;border-radius:16px;width:100%;max-width:420px;max-height:92vh;padding:26px 26px 22px;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.tl-modal h3{margin:0 0 8px;font-size:1.4rem;font-weight:400}.tl-modal label{text-transform:uppercase;letter-spacing:1px;color:#8a7d73;margin:14px 0 5px;font-size:.72rem;display:block}.tl-modal label .sub{text-transform:none;letter-spacing:0;color:#8a7d73}.tl-modal input{color:#4a3f39;background:#fbf6ef;border:1px solid #e7dccd;border-radius:10px;width:100%;padding:9px 11px;font-family:Georgia,serif;font-size:1rem}.tl-modal input:focus{border-color:#c56b4a;outline:none}.tl-modal .date-row{gap:12px;display:flex}.tl-modal .date-row>div{flex:1}.tl-modal .cat-pick{flex-wrap:wrap;gap:7px;margin-top:4px;display:flex}.tl-modal .cat-pick-chip{cursor:pointer;color:#4a3f39;background:#fbf6ef;border:1.5px solid #e7dccd;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-family:Georgia,serif;font-size:.85rem;display:inline-flex}.tl-modal .cat-pick-chip .dot{border-radius:50%;width:10px;height:10px}.tl-modal .cat-pick-chip.selected{background:#fff;border-color:#4a3f39;font-weight:700}.tl-modal .emoji-row{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.tl-modal .emoji-chip{cursor:pointer;background:#fbf6ef;border:1px solid #e7dccd;border-radius:8px;padding:4px 7px;font-size:1rem}.tl-modal .emoji-chip:hover{border-color:#c56b4a}.tl-modal .modal-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.tl-modal .tl-btn{cursor:pointer;color:#8a7d73;background:0 0;border:none;border-radius:999px;padding:8px 18px;font-family:Georgia,serif;font-size:.9rem}.tl-modal .tl-btn.primary{color:#fff;background:#c56b4a;padding:10px 20px}.tl-modal .modal-err{color:#b23b3b;min-height:1em;margin-top:10px;font-size:.8rem}@media print{.tl{color:#000;background:#fff}.tl .wrap{max-width:100%;padding:0}.tl .here-marker,.tl .here-label,.tl .progress-track,.tl .progress-stats,.tl .scroll-hint,.tl .today-line,.tl .toolbar,.tl .m-add,.tl .ev-del,.tl .cat-filter,.tl-modal-overlay{display:none!important}.tl .page-head h1{font-size:20pt}.tl section{page-break-inside:avoid;margin-bottom:20px}.tl .overview,.tl .focus-card,.tl .month-card,.tl .cal-month{box-shadow:none;border:1px solid #999}.tl .focus-card{border-left:4px solid #000}.tl .view-calendar{display:none!important}.tl .view-cards{display:block!important}.tl .months-scroll{grid-template-columns:repeat(3,1fr);gap:10px;display:grid;overflow:visible}.tl .month-card{break-inside:avoid;page-break-inside:avoid;flex:none}.tl .month-card.is-current{outline:2px solid #000}.tl .arc-seg{text-shadow:none;color:#000!important}}
