@import"https://fonts.googleapis.com/css2?family=Work+Sans:wght@400;500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--font-heading: "Work Sans", "IBM Plex Sans", system-ui, sans-serif;--font-body: "Work Sans", "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--color-text: #f0eef8;--color-text-light: #cfcce0;--color-text-muted: #9d99b8;--color-border: #28263a;--color-border-light: #3a3651;--color-background: #0b0a10;--color-surface: #13121a;--color-surface-hover: #171625;--color-accent: #a26df2;--color-accent-hover: #b586f7;--transition-speed: .2s}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);font-size:1.0625rem;line-height:1.7;background:radial-gradient(1200px 600px at 20% 10%,rgba(162,109,242,.06),transparent 60%),var(--color-background);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}.page{max-width:1200px;margin:0 auto;padding:2rem 1.5rem 4rem}.color-stripe{width:100%;height:8px;display:flex;gap:0;margin-bottom:1.5rem;background:linear-gradient(to right,#ff6b9d,#ff6b9d 16.666%,#fec46d 16.666%,#fec46d 33.333%,#c3f584 33.333%,#c3f584 50%,#5ecfff 50%,#5ecfff 66.666%,#b19cd9 66.666%,#b19cd9 83.333%,#ff8fb1 83.333%,#ff8fb1)}.hero{display:flex;gap:2rem;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;margin-bottom:2rem}.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;color:var(--color-text-muted);margin:0 0 .5rem;font-family:var(--font-mono)}h1{font-size:clamp(1.75rem,5vw,2.25rem);margin:0 0 .5rem;font-family:var(--font-heading);font-weight:600;letter-spacing:-.01em;color:var(--color-text)}.sub{margin:0;color:var(--color-text-light);font-size:1rem}.card{background:var(--color-surface);border:2px solid var(--color-text);border-radius:0;padding:1rem;min-width:380px;box-shadow:3px 3px #f0eef84d;margin-right:.375rem;margin-bottom:.75rem}.row{display:flex;gap:10px;flex-wrap:wrap}.top-row{align-items:center}button{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-text);border-radius:0;padding:.625rem 1rem;font-size:.9375rem;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-speed) ease;box-shadow:3px 3px #f0eef84d;margin-right:.375rem;margin-bottom:.75rem}button:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent);background:var(--color-surface)}button:disabled{opacity:.5;cursor:not-allowed}button.ghost{background:transparent;color:var(--color-text);border:2px solid var(--color-border);box-shadow:2px 2px #f0eef84d}select,input[type=text]{flex:1;min-width:200px;padding:.625rem .875rem;border:2px solid var(--color-text);border-radius:0;font-size:15px;font-family:var(--font-body);font-weight:450;background:var(--color-surface);color:var(--color-text);outline:none;transition:all var(--transition-speed) ease;box-shadow:3px 3px #f0eef84d}select:focus,input[type=text]:focus{border-color:var(--color-accent)}input[type=text]::placeholder{color:var(--color-text-muted)}select{max-width:240px}.new-activity{display:flex;gap:8px;flex:1;min-width:240px}.label{color:var(--color-text-muted);font-size:.75rem;font-family:var(--font-mono);letter-spacing:.03em}.value{display:block;font-weight:600;margin-top:.25rem;color:var(--color-text)}.error{margin-top:10px;color:#f27d72;font-weight:600}.toolbar{margin-top:1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.pill{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-text);border-radius:0;padding:.5rem .875rem;font-size:.875rem;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-speed) ease;box-shadow:2px 2px #f0eef84d;margin-right:.25rem;margin-bottom:.5rem}.pill:hover{border-color:var(--color-accent);color:var(--color-accent)}.pill.active{background:var(--color-accent);color:#0b0a10;border-color:var(--color-accent)}.range-info{color:var(--color-text-muted);font-size:.875rem;font-family:var(--font-mono)}.views{display:flex;gap:.5rem}.calendar{margin-top:1.5rem;background:var(--color-surface);border:2px solid var(--color-text);border-radius:0;padding:1.25rem;box-shadow:3px 3px #f0eef84d;margin-right:.375rem;margin-bottom:.75rem;min-height:200px}.calendar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;color:var(--color-text);gap:1rem;flex-wrap:wrap}.calendar-head h2{font-size:1.25rem;font-weight:600;margin:0}.year-nav{display:flex;align-items:center;gap:.25rem}.hint{font-size:.875rem;color:var(--color-text-muted)}.github-grid{margin-top:.5rem}.grid-container{display:flex;gap:4px}.weekday-labels{display:flex;flex-direction:column;gap:4px;font-size:.75rem;color:var(--color-text-muted);font-family:var(--font-mono);padding-top:18px;justify-content:flex-start;min-width:32px;text-align:right;padding-right:6px}.weekday-labels span{height:14px;display:flex;align-items:center;justify-content:flex-end;font-size:10px}.weeks-container{flex:1;position:relative}.months-labels{position:relative;height:16px;margin-bottom:2px;font-size:.75rem;color:var(--color-text-muted);font-family:var(--font-mono)}.months-labels span{position:absolute;top:0;font-size:11px}.weeks-grid{display:flex;gap:4px;flex-wrap:nowrap}.week-column{display:flex;flex-direction:column;gap:4px}.week-column.month-separator{margin-left:8px}.gh-cell{width:14px;height:14px;border:1px solid var(--color-border);border-radius:0;background:var(--color-surface-hover);cursor:pointer;transition:all var(--transition-speed) ease}.gh-cell.empty{opacity:.1;pointer-events:none}.gh-cell.on{background:#39d353;border-color:#2ea043;box-shadow:0 0 4px #39d35366}.gh-cell.off:hover{border-color:var(--color-accent);background:var(--color-surface)}.calendar-body{margin-top:12px;display:flex;gap:24px;align-items:flex-start;flex-wrap:wrap}.weekday-row{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:8px;color:var(--text-muted);font-size:13px;padding:0 4px}.weekday{text-align:center}.grid{display:grid;gap:6px}.grid-week,.grid-month{grid-template-columns:repeat(7,1fr)}.grid-year{grid-template-columns:repeat(auto-fit,minmax(18px,1fr))}.cell{height:36px;border-radius:0;display:flex;align-items:center;justify-content:center;font-size:.875rem;border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface);cursor:pointer;transition:all var(--transition-speed) ease}.cell.tiny{height:18px;border-radius:0;border-style:solid;border-width:1px}.cell.on{background:var(--color-accent);color:#0b0a10;border-color:var(--color-accent)}.cell.off:hover{border-color:var(--color-accent);background:var(--color-surface-hover)}.cell.muted{opacity:.35}.day-num{font-size:14px;font-weight:600}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:100}.modal-card{background:var(--color-surface);border:2px solid var(--color-text);border-radius:0;padding:1rem;max-width:420px;width:100%;box-shadow:3px 3px #f0eef84d}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal-head h3{font-size:1.125rem;font-weight:600;margin:.25rem 0 0}.note-body{margin:.5rem 0 0;color:var(--color-text-light);line-height:1.6}@media (max-width: 640px){h1{font-size:32px}.card{min-width:unset}.weekday-labels{min-width:24px;font-size:9px}.gh-cell{width:10px;height:10px}}
