:root{--font-display: "Space Grotesk", ui-sans-serif, sans-serif;--font-body: "Space Grotesk", ui-sans-serif, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--ink: #0e0f13;--paper: #16181f;--rule: #262b38;--rule-soft: #1c2029;--chalk: #e8e6df;--chalk-dim: #9aa0ad;--signal: #e4ff3a;--signal-ink: #0e0f13;--space: 1rem;--space-xs: .375rem;--space-sm: .625rem;--space-lg: 1.75rem;--space-xl: 3rem;--gutter: 5.5rem;--measure: 44rem;--radius: 6px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background-color:var(--ink);background-image:linear-gradient(var(--rule-soft) 1px,transparent 1px),linear-gradient(90deg,var(--rule-soft) 1px,transparent 1px);background-size:2.5rem 2.5rem;color:var(--chalk);font-family:var(--font-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;touch-action:manipulation;-webkit-tap-highlight-color:color-mix(in srgb,var(--signal) 22%,transparent)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;animation-iteration-count:1!important}}.skip-link{position:absolute;left:.75rem;top:-3rem;z-index:10;font-family:var(--font-mono);font-size:.85rem;color:var(--signal-ink);background:var(--signal);padding:.55em 1em;border-radius:var(--radius);text-decoration:none;transition:top .16s ease}.skip-link:focus-visible{top:.75rem}#log{scroll-margin-top:1rem}.page{max-width:calc(var(--gutter) + var(--measure));margin:0 auto;padding:clamp(1.25rem,4vw,3rem) clamp(1rem,5vw,2rem) 4rem}.masthead{padding-block:clamp(2rem,7vw,5rem) clamp(2rem,5vw,3.5rem);border-bottom:1px solid var(--rule);margin-bottom:var(--space-xl)}.masthead-kicker{margin:0 0 var(--space-lg);font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--chalk-dim)}.masthead-kicker:before{content:"";display:inline-block;width:1.6rem;height:2px;margin-right:.7em;vertical-align:middle;background:var(--signal)}.masthead-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:clamp(2.75rem,12vw,6.5rem);line-height:.92;letter-spacing:-.04em;text-wrap:balance}.masthead-score{margin:var(--space-lg) 0 0;font-family:var(--font-mono);font-size:.95rem;color:var(--chalk-dim);display:flex;align-items:baseline;gap:.6rem}.score-number{font-family:var(--font-display);font-weight:700;font-size:clamp(2.5rem,9vw,4rem);line-height:1;letter-spacing:-.03em;color:var(--signal);font-variant-numeric:tabular-nums}.login-link{display:inline-block;margin-top:var(--space-lg);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.04em;color:var(--chalk-dim);text-decoration:none;border-bottom:1px dashed var(--rule);transition:color .16s ease,border-color .16s ease}.login-link:hover{color:var(--signal);border-color:var(--signal)}.admin-bar{display:flex;align-items:center;gap:var(--space);margin-top:var(--space-lg)}.admin-bar button{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--signal-ink);background:var(--signal);border:none;border-radius:var(--radius);padding:.6em 1.2em;cursor:pointer;transition:filter .16s ease,transform .12s ease}.admin-bar button:hover{filter:brightness(1.08)}.admin-bar button:active{transform:translateY(1px)}.admin-bar a{font-family:var(--font-mono);font-size:.8rem;color:var(--chalk-dim);text-decoration:none;border-bottom:1px solid transparent;transition:color .16s ease,border-color .16s ease}.admin-bar a:hover{color:var(--chalk);border-color:var(--rule)}.board{margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--rule)}.board-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space);margin-bottom:var(--space)}.board-eyebrow{margin:0;font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--chalk-dim)}.board-count{margin:0;font-family:var(--font-mono);font-size:.85rem;color:var(--chalk-dim);font-variant-numeric:tabular-nums}.board-count span{color:var(--signal);font-weight:700}.board-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem}.cell{position:relative;display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:1;padding:.5rem .55rem;border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);text-decoration:none}.cell-num{font-family:var(--font-mono);font-size:clamp(.85rem,2.4vw,1.15rem);font-weight:700;line-height:1;color:var(--chalk-dim);font-variant-numeric:tabular-nums}.cell-empty{background:transparent;border-style:dashed;border-color:var(--rule-soft)}.cell-empty .cell-num{color:color-mix(in srgb,var(--chalk-dim) 55%,transparent)}.cell-filled{cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease}.cell-filled:hover,.cell-filled:focus-visible{transform:translateY(-2px);border-color:var(--chalk-dim);background:color-mix(in srgb,var(--paper) 96%,var(--signal) 4%)}.cell-dot{align-self:flex-end;width:.5rem;height:.5rem;border-radius:50%;background:var(--chalk-dim)}.cell-idea .cell-dot{background:var(--rule)}.cell-shipped .cell-dot{background:var(--signal);box-shadow:0 0 .45rem color-mix(in srgb,var(--signal) 70%,transparent)}.board-caption{display:flex;align-items:baseline;flex-wrap:wrap;gap:.7rem;min-height:1.4rem;margin:var(--space) 0 0;font-family:var(--font-mono);font-size:.8rem;color:var(--chalk-dim)}.board-caption-day{color:var(--chalk);font-weight:700}.board-caption-name{color:var(--chalk)}.board-caption-status{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.timeline{list-style:none;margin:0;padding:0}.timeline>li{border-top:1px solid var(--rule)}.timeline>li:first-child{border-top:none}.entry{display:grid;grid-template-columns:var(--gutter) 1fr;gap:clamp(.75rem,3vw,1.75rem);padding-block:var(--space-lg);scroll-margin-top:1.25rem}.entry-jumped{animation:entry-flash 1.8s ease-out}@keyframes entry-flash{0%,12%{background:color-mix(in srgb,var(--signal) 12%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--signal) 45%,transparent)}to{background:transparent;box-shadow:none}}.entry-day{font-family:var(--font-mono);font-weight:700;font-size:clamp(1.9rem,5vw,2.9rem);line-height:1;color:var(--rule);letter-spacing:-.02em;padding-top:.15em;font-variant-numeric:tabular-nums;transition:color .18s ease}.entry-shipped .entry-day{color:var(--chalk-dim)}.entry-body{min-width:0}.entry-lead{display:flex;flex-direction:column;gap:var(--space-lg);margin-bottom:var(--space-lg)}.entry-text{min-width:0}.entry-text>:last-child{margin-bottom:0}@media (min-width: 720px){.entry-lead.has-shot{display:grid;grid-template-columns:1fr minmax(0,300px);gap:var(--space-lg);align-items:start}}.entry-lead .entry-shot{margin:0}.entry-lead .entry-description{max-width:none}.entry-header h2,.entry-pitch,.entry-description,.entry-struggle,.entry-tags li{overflow-wrap:anywhere}.entry-header{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:var(--space-xs)}.entry-header h2{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.5rem,4vw,2rem);letter-spacing:-.02em;line-height:1.1}.status{display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--chalk-dim);padding:.3em .7em;border:1px solid var(--rule);border-radius:100px;white-space:nowrap}.status-dot{width:.5em;height:.5em;border-radius:50%;background:currentColor;flex:none}.status-shipped{color:var(--signal);border-color:color-mix(in srgb,var(--signal) 40%,var(--rule))}.status-shipped .status-dot{box-shadow:0 0 .5rem color-mix(in srgb,var(--signal) 70%,transparent)}.entry-pitch{margin:0 0 var(--space-sm);font-size:1.1rem;color:var(--chalk)}.entry-description{margin:0 0 var(--space-lg);color:var(--chalk-dim);max-width:38rem}.entry-shot{margin:0 0 var(--space-lg);aspect-ratio:16 / 10;border-radius:var(--radius);border:1px solid var(--rule);background:var(--paper);overflow:hidden}.entry-screenshot{display:block;width:100%;height:100%;object-fit:cover}.entry-struggle{margin:0 0 var(--space-lg);padding-left:var(--space);border-left:2px solid var(--signal);color:var(--chalk-dim);font-size:.98rem}.entry-struggle strong{color:var(--chalk);font-weight:600}.entry-tags{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 var(--space);padding:0}.entry-tags li{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.02em;color:var(--chalk-dim);padding:.2em .6em;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius)}.entry-links{display:flex;flex-wrap:wrap;gap:1.5rem;margin:0}.entry-links a{font-family:var(--font-mono);font-size:.85rem;color:var(--chalk);text-decoration:none;padding:.15em 0;background-image:linear-gradient(var(--signal),var(--signal));background-repeat:no-repeat;background-position:0 100%;background-size:0% 2px;transition:background-size .2s ease,color .2s ease}.entry-links a:hover{background-size:100% 2px}.entry-admin{display:flex;gap:.6rem;margin-top:var(--space);padding-top:var(--space);border-top:1px dashed var(--rule-soft)}.entry-admin button{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--chalk-dim);background:transparent;border:1px solid var(--rule);border-radius:var(--radius);padding:.45em .9em;cursor:pointer;transition:color .16s ease,border-color .16s ease,background .16s ease}.entry-admin button:hover{color:var(--chalk);border-color:var(--chalk-dim);background:var(--paper)}.entry-admin button:last-child:hover{color:#ff6a6a;border-color:#ff6a6a}.error-panel{border:1px solid var(--rule);border-left:3px solid var(--signal);border-radius:var(--radius);background:var(--paper);padding:var(--space-lg);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space)}.error-panel p{margin:0;font-family:var(--font-mono);font-size:.95rem;color:var(--chalk)}.error-panel button{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--signal-ink);background:var(--signal);border:none;border-radius:var(--radius);padding:.55em 1.1em;cursor:pointer;transition:filter .16s ease,transform .12s ease}.error-panel button:hover{filter:brightness(1.08)}.error-panel button:active{transform:translateY(1px)}.loading,.empty{font-family:var(--font-mono);color:var(--chalk-dim);padding-block:var(--space-xl)}.loading:after{content:"_";margin-left:.15em;animation:blink 1.1s step-end infinite}@keyframes blink{50%{opacity:0}}.entry-form{display:flex;flex-direction:column;gap:var(--space);margin-bottom:var(--space-xl);padding:clamp(1.25rem,4vw,var(--space-xl));background:var(--paper);border:1px solid var(--rule);border-left:3px solid var(--signal);border-radius:var(--radius)}.entry-form h2{margin:0 0 var(--space-xs);font-family:var(--font-display);font-weight:600;font-size:clamp(1.4rem,3.5vw,1.75rem);letter-spacing:-.02em}.entry-form label{display:flex;flex-direction:column;gap:.4em;font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--chalk-dim)}.entry-form input,.entry-form select,.entry-form textarea{font-family:var(--font-body);font-size:.95rem;letter-spacing:normal;text-transform:none;color:var(--chalk);background:var(--ink);border:1px solid var(--rule);border-radius:var(--radius);padding:.6em .75em;transition:border-color .16s ease}.entry-form textarea{min-height:5rem;resize:vertical;font-family:inherit}.entry-form input:hover,.entry-form select:hover,.entry-form textarea:hover{border-color:var(--chalk-dim)}.entry-form input:focus-visible,.entry-form select:focus-visible,.entry-form textarea:focus-visible{outline:2px solid var(--signal);outline-offset:1px;border-color:var(--signal)}.entry-form input[type=file]{font-family:var(--font-mono);font-size:.8rem;padding:.5em .6em}.entry-form input[type=file]::file-selector-button{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--chalk-dim);background:transparent;border:1px solid var(--rule);border-radius:var(--radius);padding:.45em .9em;margin-right:.75em;cursor:pointer;transition:color .16s ease,border-color .16s ease}.entry-form input[type=file]:hover::file-selector-button{color:var(--chalk);border-color:var(--chalk-dim)}.form-screenshot-preview{display:block;width:100%;max-width:20rem;aspect-ratio:16 / 10;object-fit:cover;border-radius:var(--radius);border:1px solid var(--rule);background:var(--ink)}.form-error{margin:0;font-family:var(--font-mono);font-size:.85rem;color:#ff6a6a;padding-left:var(--space);border-left:2px solid #ff6a6a}.form-actions{display:flex;gap:.75rem;padding-top:var(--space-xs)}.form-actions button[type=submit]{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--signal-ink);background:var(--signal);border:none;border-radius:var(--radius);padding:.6em 1.3em;cursor:pointer;transition:filter .16s ease,transform .12s ease}.form-actions button[type=submit]:hover{filter:brightness(1.08)}.form-actions button[type=submit]:active{transform:translateY(1px)}.form-actions button[type=button]{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--chalk-dim);background:transparent;border:1px solid var(--rule);border-radius:var(--radius);padding:.6em 1.3em;cursor:pointer;transition:color .16s ease,border-color .16s ease}.form-actions button[type=button]:hover{color:var(--chalk);border-color:var(--chalk-dim)}.form-actions button:disabled{opacity:.55;cursor:not-allowed}.footer{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--rule)}.footer a{font-family:var(--font-mono);font-size:.85rem;color:var(--chalk-dim);text-decoration:none;transition:color .16s ease}.footer a:hover{color:var(--signal)}:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:2px}@media (max-width: 560px){:root{--gutter: 3.25rem}body{background-size:1.75rem 1.75rem}.entry{grid-template-columns:1fr;gap:.5rem}.entry-day{font-size:1.6rem;padding-top:0}.board-grid{grid-template-columns:repeat(5,1fr);gap:.4rem}}@media (max-width: 380px){.board-grid{grid-template-columns:repeat(4,1fr)}}
