*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0d1117;--bg-2:#161b22;--bg-3:#21262d;--border:#30363d;--text:#c9d1d9;--text-strong:#e6edf3;--muted:#8b949e;--accent:#58a6ff;--accent-2:#79c0ff;--accent-purple:#d2a8ff;--pursue:#3fb950;--consider:#d29922;--tier1:#f85149}body,html{background:var(--bg);color:var(--text);min-height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5;-webkit-tap-highlight-color:transparent;padding-bottom:env(safe-area-inset-bottom)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.shell{max-width:1400px;margin:0 auto;padding:calc(16px + env(safe-area-inset-top)) 16px 16px}.topbar{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;margin-bottom:14px}.topbar .brand{font-weight:700;color:var(--accent)}.topbar .spacer{flex:1 1}.topbar .who{color:var(--muted);font-size:.85em}.topbar .signout,.topbar .switch-event{background:var(--bg-3);border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:6px;cursor:pointer;font-size:.85em;text-decoration:none;display:inline-block}.topbar .signout:hover,.topbar .switch-event:hover{background:var(--border)}.offline-badge{display:none;align-items:center;gap:6px;padding:4px 10px;background:rgba(210,153,34,.15);color:var(--consider);border:1px solid var(--consider);border-radius:999px;font-size:.75em}body.is-offline .offline-badge{display:inline-flex}.nav{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:12px;margin-bottom:14px;display:flex;flex-wrap:wrap;gap:6px}.nav a{display:inline-block;padding:8px 12px;background:var(--bg-3);border:1px solid var(--border);border-radius:6px;font-size:.85em;color:var(--text)}.nav a:hover{background:var(--border);text-decoration:none}.nav a.active{background:#1f6feb;border-color:#1f6feb;color:white}.nav .divider{width:1px;align-self:stretch;background:var(--border);margin:0 4px}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:10px;gap:10px}.team-card{display:block;padding:14px 16px;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;color:var(--text);text-decoration:none;transition:border-color .1s,background .1s}.team-card:hover{background:var(--bg-3);border-color:var(--accent);text-decoration:none}.team-card-name{font-weight:600;color:var(--text-strong);margin-bottom:4px}.team-card-meta{color:var(--muted);font-size:.82em;display:flex;flex-wrap:wrap;gap:8px}.team-card-meta span:before{content:"· ";color:var(--border);margin-right:4px}.team-card-meta span:first-child:before{content:"";margin-right:0}h1{font-size:1.5em;margin-bottom:8px}h1,h2{color:var(--accent)}h2{font-size:1.2em;margin:24px 0 12px}h3{color:var(--accent-2);font-size:1.05em;margin:18px 0 8px}.md{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:22px 28px;line-height:1.7;max-width:1000px}.md p{margin:8px 0}.md ol,.md ul{margin:8px 0 8px 24px}.md li{margin:4px 0}.md strong{color:var(--text-strong)}.md em{color:var(--accent-purple)}.md hr{border:none;border-top:1px solid var(--border);margin:20px 0}.md blockquote{border-left:3px solid var(--border);padding-left:14px;color:var(--muted);margin:8px 0}.md code{padding:1px 5px;border-radius:4px;font-size:.9em}.md code,.md pre{background:var(--bg-3)}.md pre{padding:12px;border-radius:6px;overflow-x:auto;margin:12px 0}.md pre code{background:transparent;padding:0}.md table{border-collapse:collapse;width:100%;font-size:.9em;margin:12px 0}.md th{background:var(--bg-3);color:var(--accent);text-align:left;padding:8px 10px}.md td,.md th{border:1px solid var(--border)}.md td{padding:6px 10px}.md tr:nth-child(2n) td{background:rgba(255,255,255,.02)}.section-header{color:var(--accent);margin:28px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border);font-size:1.15em}.table-wrap{overflow-x:auto}table.csv{border-collapse:collapse;width:100%;font-size:.85em}table.csv th{background:var(--bg-2);color:var(--accent);text-align:left;padding:8px 10px;position:-webkit-sticky;position:sticky;top:0;z-index:1}table.csv td,table.csv th{border:1px solid var(--border)}table.csv td{padding:6px 10px;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}table.csv tr:nth-child(2n) td{background:var(--bg-2)}table.csv tr:hover td{background:#1c2128}.pursue{color:var(--pursue);font-weight:600}.consider{color:var(--consider);font-weight:600}.deprioritize{color:var(--muted)}.pending{color:var(--accent-purple);font-weight:600}.tier1{color:var(--tier1);font-weight:700}.tier2{color:var(--consider);font-weight:600}.tier3{color:var(--muted)}.score-high{color:var(--pursue);font-weight:700}.score-med{color:var(--consider);font-weight:600}.score-low{color:var(--muted)}.toolbar{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-bottom:12px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.toolbar input[type=search]{flex:1 1;min-width:220px;padding:8px 12px;font-size:.9em}.toolbar input[type=search],.toolbar select{background:var(--bg-3);color:var(--text);border:1px solid var(--border);border-radius:6px}.toolbar select{padding:6px 8px;font-size:.85em}.toolbar label{display:inline-flex;gap:6px;align-items:center}.row-count,.toolbar label{color:var(--muted);font-size:.8em}.signin-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px}.signin-inner{width:100%;max-width:380px;background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:40px 32px}.signin-logo{display:flex;justify-content:center;margin-bottom:36px}.signin-logo img{height:26px;width:auto}.signin-heading{text-align:center;margin-bottom:28px}.signin-heading h1{color:var(--text-strong);font-size:1.4rem;font-weight:600;letter-spacing:-.01em;margin:0}.signin-heading p{color:var(--muted);margin-top:6px;font-size:.85rem}.signin-error{color:var(--tier1);font-size:.85rem;text-align:center;background:rgba(248,81,73,.08);padding:10px 14px;border-radius:8px;margin-bottom:18px;border:1px solid rgba(248,81,73,.25)}.signin-google{width:100%;padding:11px 16px;border-radius:8px;background:var(--bg-3);color:var(--text-strong);font-weight:500;font-size:.92rem;border:1px solid var(--border);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background-color .15s ease,border-color .15s ease,opacity .15s ease}.signin-google:hover{background:var(--border);border-color:var(--accent)}.signin-google:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(88,166,255,.25)}.signin-google:disabled{opacity:.4;cursor:not-allowed}.signin-google-mark{width:18px;height:18px}.signin-footnote{text-align:center;color:var(--muted);font-size:.75rem;margin-top:22px;margin-bottom:0}@media (max-width:720px){.shell{padding:calc(10px + env(safe-area-inset-top)) 10px 10px}.nav{padding:8px}.nav a{padding:6px 10px;font-size:.8em}.md{padding:16px 18px}table.csv td{white-space:normal}}.event-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.event-card{display:block;padding:18px 20px;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;color:var(--text);text-decoration:none;transition:border-color .15s ease,transform .15s ease}.event-card:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-1px)}.event-card__name{font-size:1.05em;font-weight:600;color:var(--text-strong);margin-bottom:4px}.event-card__meta{color:var(--muted);font-size:.85em;margin-bottom:12px}.event-card__phase{display:inline-block;padding:4px 10px;border-radius:999px;background:rgba(31,111,235,.15);border:1px solid rgba(31,111,235,.45);color:var(--accent);font-size:.78em;font-weight:500}.event-card__phase.phase--day,.event-card__phase.phase--post-day{background:rgba(63,185,80,.15);border-color:rgba(63,185,80,.45);color:var(--pursue)}.event-card__phase.phase--eve-of-event{background:rgba(210,153,34,.15);border-color:rgba(210,153,34,.45);color:var(--consider)}.event-card__phase.phase--post-event{background:rgba(210,168,255,.14);border-color:rgba(210,168,255,.35);color:var(--accent-purple)}.phase-banner{background:linear-gradient(180deg,rgba(31,111,235,.18),rgba(31,111,235,.05));border:1px solid rgba(31,111,235,.45);border-left:3px solid var(--accent);border-radius:10px;padding:12px 16px;margin-bottom:14px}.phase-banner__title{color:var(--text-strong);font-weight:600;font-size:1em;margin-bottom:2px}.phase-banner__body{color:var(--muted);font-size:.9em;line-height:1.45}.phase-banner--placeholder{min-height:56px;opacity:0}.phase--day,.phase--post-day{background:linear-gradient(180deg,rgba(63,185,80,.18),rgba(63,185,80,.05));border-color:rgba(63,185,80,.45);border-left-color:var(--pursue)}.phase--eve-of-event{background:linear-gradient(180deg,rgba(210,153,34,.18),rgba(210,153,34,.05));border-color:rgba(210,153,34,.45);border-left-color:var(--consider)}.phase--post-event{background:linear-gradient(180deg,rgba(210,168,255,.14),rgba(210,168,255,.04));border-color:rgba(210,168,255,.35);border-left-color:var(--accent-purple)}.install-toast{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 6px 24px rgba(0,0,0,.4);z-index:100}.install-toast button{background:#1f6feb;border:none;color:white;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85em}.install-toast .dismiss{background:transparent;color:var(--muted)}.fab{position:fixed;right:calc(20px + env(safe-area-inset-right));bottom:calc(20px + env(safe-area-inset-bottom));z-index:90;background:#1f6feb;color:white;border:none;border-radius:999px;padding:14px 20px;font-size:1em;font-weight:600;cursor:pointer;box-shadow:0 6px 24px rgba(0,0,0,.5);-webkit-tap-highlight-color:transparent}.fab:hover{background:#2978f0}.fab:active{transform:scale(.97)}.fab-backdrop{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.6);display:flex;align-items:flex-end;justify-content:center;padding:16px 16px calc(16px + env(safe-area-inset-bottom))}@media (min-width:640px){.fab-backdrop{align-items:center}}.fab-modal{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:16px;width:100%;max-width:480px;display:flex;flex-direction:column;gap:12px;box-shadow:0 10px 40px rgba(0,0,0,.6)}.fab-modal-header{display:flex;align-items:center;justify-content:space-between;font-size:1.05em;color:var(--text-strong)}.fab-close{background:transparent;border:none;color:var(--muted);font-size:1.6em;line-height:1;cursor:pointer;padding:0 6px}.fab-close:hover{color:var(--text-strong)}.fab-label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:.85em}.fab-label input,.fab-label textarea{background:var(--bg-3);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:10px 12px;font:inherit;font-size:1em;resize:vertical}.fab-label input:focus,.fab-label textarea:focus{outline:none;border-color:var(--accent)}.fab-error{color:var(--tier1);font-size:.85em;background:rgba(248,81,73,.1);border:1px solid var(--tier1);border-radius:6px;padding:6px 10px}.fab-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.fab-btn{border-radius:8px;padding:10px 16px;font:inherit;font-size:.95em;cursor:pointer;border:1px solid var(--border)}.fab-btn-secondary{background:var(--bg-3);color:var(--text)}.fab-btn-secondary:hover{background:var(--border)}.fab-btn-primary{background:#1f6feb;color:white;border-color:#1f6feb}.fab-btn-primary:hover{background:#2978f0}.fab-btn:disabled{opacity:.6;cursor:not-allowed}.fab-toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:95;background:var(--bg-2);color:var(--text-strong);border:1px solid var(--pursue);border-radius:999px;padding:8px 18px;font-size:.9em;box-shadow:0 4px 16px rgba(0,0,0,.5)}.notes-list{gap:12px;margin-top:16px}.note-card,.notes-list{display:flex;flex-direction:column}.note-card{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:14px 16px;gap:8px}.note-card-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;justify-content:space-between}.note-card-head strong{color:var(--text-strong);font-size:1.05em}.note-meta{color:var(--muted);font-size:.8em}.note-text{white-space:pre-wrap;margin:0}.note-actions{display:flex;gap:8px;justify-content:flex-end}.note-delete{color:var(--tier1)}.note-edit-account,.note-edit-text{background:var(--bg-3);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:8px 10px;font:inherit;width:100%}.share-grid{display:grid;grid-gap:12px;gap:12px;margin-top:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.share-card{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:12px}.share-card h3{margin:0;color:var(--text-strong);font-size:1.1em}.share-card p{margin:0;color:var(--muted);font-size:.9em;flex:1 1}.share-card-actions{display:flex;gap:8px;flex-wrap:wrap}.qr-modal{background:white;border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:16px;align-items:center;max-width:92vw}.qr-modal h2{color:#111;margin:0;text-align:center;font-size:1.2em}.qr-modal .qr-url{color:#555;font-size:.8em;word-break:break-all;text-align:center}.qr-modal .fab-btn{color:#111;border-color:#ccc;background:#f3f3f3}.share-landing{max-width:540px;margin:40px auto;padding:24px;background:var(--bg-2);border:1px solid var(--border);border-radius:12px;text-align:center;display:flex;flex-direction:column;gap:20px;box-sizing:border-box}.share-landing-header{display:flex;flex-direction:column;gap:6px}.share-landing-header h1{color:var(--accent);margin:0;font-size:1.4em}.share-landing-header h2{margin:0;font-size:1.15em}.share-landing-header p{margin:0}.share-landing-actions{display:flex;justify-content:center}.share-landing .download-btn{display:inline-block;background:#1f6feb;color:white;padding:16px 28px;border-radius:10px;font-weight:600;font-size:1.05em;text-decoration:none}.share-landing .download-btn:hover{background:#2978f0;text-decoration:none}.share-landing-footer{font-size:.8em;margin:0}@media (max-width:768px){.share-landing{margin:16px;padding:20px}.share-landing-actions{width:100%}.share-landing .download-btn{width:100%;box-sizing:border-box}}