*{box-sizing:border-box}:root{--ink:#1c1917;--muted:#57534e;--faint:#78716c;--paper:#fafaf9;--card:#fff;--line:#e7e5e4;--wash:#f5f5f4;--accent:#9f1239;--accent-soft:#fff1f2}body{color:var(--ink);background:var(--paper);margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6}code{background:var(--wash);border:1px solid var(--line);border-radius:4px;padding:.1em .35em;font-family:ui-monospace,Cascadia Code,Menlo,monospace;font-size:.85em}.shell{max-width:64rem;margin:0 auto;padding:0 1.5rem}.top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1.25rem 0;display:flex}.wordmark{letter-spacing:-.01em;color:var(--ink);font-weight:700;text-decoration:none}.wordmark span{color:var(--accent)}.top nav a{color:var(--muted);margin-left:1.5rem;font-size:.9rem;text-decoration:none}.top nav a:hover{color:var(--ink)}.hero{text-align:center;padding:5rem 0 4rem}.hero .eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border:1px solid #fecdd3;border-radius:999px;margin-bottom:1.25rem;padding:.25rem .85rem;font-size:.75rem;font-weight:600;display:inline-block}.hero h1{letter-spacing:-.02em;margin:0 0 1rem;font-size:clamp(2rem,5vw,3rem);line-height:1.15}.hero .lead{max-width:38rem;color:var(--muted);margin:0 auto 2rem;font-size:1.1rem}.cta-row{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.button{border-radius:8px;padding:.6rem 1.25rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}.button.primary{background:var(--accent);color:#fff}.button.primary:hover{background:#881337}.button.ghost{color:var(--ink);border:1px solid var(--line);background:var(--card)}.button.ghost:hover{border-color:var(--faint)}section{padding:3rem 0}section>h2{letter-spacing:-.01em;margin:0 0 .5rem;font-size:1.5rem}section>.sub{color:var(--muted);max-width:40rem;margin:0 0 2rem}.features{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem;display:grid}.feature{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.25rem 1.25rem 1rem}.feature .icon{margin-bottom:.75rem;font-size:1.4rem;line-height:1}.feature h3{margin:0 0 .35rem;font-size:1rem}.feature p{color:var(--muted);margin:0;font-size:.9rem}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;display:grid}.step{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.25rem;position:relative}.step:before{counter-increment:step;content:counter(step);background:var(--accent-soft);width:1.75rem;height:1.75rem;color:var(--accent);border-radius:999px;justify-content:center;align-items:center;margin-bottom:.75rem;font-size:.9rem;font-weight:700;display:inline-flex}.step h3{margin:0 0 .35rem;font-size:1rem}.step p{color:var(--muted);margin:0;font-size:.9rem}.code-card{color:#e7e5e4;background:#1c1917;border-radius:12px;padding:1.25rem 1.5rem;overflow-x:auto}.code-card pre{margin:0;font-family:ui-monospace,Cascadia Code,Menlo,monospace;font-size:.85rem;line-height:1.55}.code-card .cmt{color:#a8a29e}.code-card .str{color:#fda4af}.code-card .kw{color:#93c5fd}.endpoints{border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:12px;width:100%;font-size:.9rem;overflow:hidden}.endpoints th,.endpoints td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.55rem .85rem}.endpoints tr:last-child td{border-bottom:none}.endpoints th{color:var(--faint);background:var(--wash);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;font-weight:600}.table-scroll{overflow-x:auto}.method{text-align:center;border-radius:6px;min-width:3.5rem;padding:.15rem .4rem;font-family:ui-monospace,Cascadia Code,Menlo,monospace;font-size:.72rem;font-weight:700;display:inline-block}.method.get{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.method.post{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.method.patch{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.method.delete{color:#9f1239;background:#fff1f2;border:1px solid #fecdd3}.auth-shell{justify-content:center;align-items:center;min-height:100vh;padding-top:2rem;padding-bottom:2rem;display:flex}.auth-card{background:var(--card);border:1px solid var(--line);text-align:center;border-radius:16px;width:100%;max-width:22rem;padding:2rem}.auth-card h1{margin:1.25rem 0 .25rem;font-size:1.5rem}.auth-note{color:var(--muted);margin:0 0 1.5rem;font-size:.9rem}.button.wide{width:100%}.auth-divider{color:var(--faint);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:.75rem;margin:1rem 0;font-size:.75rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.auth-form{flex-direction:column;gap:.75rem;display:flex}.auth-form input{border:1px solid var(--line);width:100%;font:inherit;background:var(--paper);color:var(--ink);border-radius:8px;outline:none;padding:.6rem .85rem;font-size:.95rem}.auth-form input:focus{border-color:var(--accent)}.auth-error{color:var(--accent);margin:0;font-size:.85rem}.top-actions{align-items:center;gap:.75rem;display:flex}.signed-in{color:var(--faint);font-size:.85rem}.admin{padding:2.5rem 1.5rem 4rem}.admin h1{letter-spacing:-.01em;margin:0 0 .25rem;font-size:1.75rem}.admin .sub{color:var(--muted);margin:0 0 1.75rem}.stats{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1rem;margin-bottom:2rem;display:grid}.stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1rem 1.25rem}.stat-value{letter-spacing:-.01em;font-size:1.6rem;font-weight:700}.stat-label{color:var(--faint);font-size:.8rem}.registry-card{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:.75rem}.registry-card summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.9rem 1.25rem;list-style:none;display:flex}.registry-card summary::-webkit-details-marker{display:none}.registry-title{font-weight:600}.badges{flex-wrap:wrap;gap:.35rem;display:inline-flex}.badge{color:var(--muted);background:var(--wash);border:1px solid var(--line);border-radius:999px;padding:.1rem .6rem;font-size:.7rem;font-weight:600}.badge.active{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.badge.archived{color:var(--faint)}.registry-meta{color:var(--faint);margin-left:auto;font-size:.8rem}.registry-body{border-top:1px solid var(--line);padding:1rem 1.25rem 1.25rem}.registry-body .desc{color:var(--muted);margin:0 0 .5rem}.registry-id{color:var(--faint);margin:0 0 1rem;font-size:.8rem}.item-note{color:var(--faint);font-size:.8rem}.empty{color:var(--muted)}.banner-error{background:var(--accent-soft);color:var(--accent);border:1px solid #fecdd3;border-radius:8px;margin:0 0 1.25rem;padding:.6rem 1rem;font-size:.9rem}.admin input,.admin select{border:1px solid var(--line);font:inherit;background:var(--paper);color:var(--ink);border-radius:8px;outline:none;padding:.4rem .6rem;font-size:.85rem}.admin input:focus,.admin select:focus{border-color:var(--accent)}.form-grid{flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin:0 0 1rem;display:flex}.form-grid label{color:var(--faint);text-transform:uppercase;letter-spacing:.05em;flex-direction:column;gap:.25rem;font-size:.72rem;font-weight:600;display:flex}.form-grid label .hint{text-transform:none;letter-spacing:0;font-weight:400}.form-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.form-row input[type=number]{width:4.5rem}.button.small{padding:.45rem .9rem;font-size:.8rem}.button.danger{background:var(--accent);color:#fff;border:none}.button.danger:hover{background:#881337}button.button{cursor:pointer;font-family:inherit}.manage summary,.add-item summary,.confirm-delete summary{cursor:pointer;color:var(--accent);font-size:.85rem;font-weight:600}.add-item,.confirm-delete{margin-top:1rem}.confirm-delete summary{color:var(--faint)}.confirm-delete form{margin-top:.5rem}.manage-panel{background:var(--wash);border:1px solid var(--line);border-radius:8px;min-width:20rem;margin-top:.75rem;padding:.85rem}.claims h4{text-transform:uppercase;letter-spacing:.05em;color:var(--faint);margin:0 0 .4rem;font-size:.8rem}.claims ul{flex-direction:column;gap:.35rem;margin:0 0 .6rem;padding:0;list-style:none;display:flex}.claims li{justify-content:space-between;align-items:center;gap:.75rem;font-size:.85rem;display:flex}.new-registry summary .registry-title{color:var(--accent)}.dash{min-height:100vh;display:flex}.sidebar{background:var(--card);border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;gap:1.5rem;width:15rem;height:100vh;padding:1.5rem 1rem;display:flex;position:sticky;top:0}.sidebar .wordmark{padding:0 .75rem}.side-nav{flex-direction:column;gap:.15rem;display:flex}.side-nav a{color:var(--muted);border-radius:8px;padding:.45rem .75rem;font-size:.9rem;font-weight:500;text-decoration:none}.side-nav a:hover{background:var(--wash);color:var(--ink)}.side-nav a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.sidebar-foot{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:auto;padding:1rem .75rem 0;display:flex}.sidebar-foot .signed-in{overflow-wrap:anywhere}.dash-main{flex:1;min-width:0;max-width:72rem}.dash-section{margin-top:2.5rem}.dash-section h2{letter-spacing:-.01em;margin:0 0 .75rem;font-size:1.15rem}.dash-section .sub{margin-bottom:1rem}.table-note{color:var(--faint);margin:.5rem 0 0;font-size:.85rem}.switcher{flex-direction:column;gap:.25rem;padding:0 .75rem;display:flex}.switcher-label{color:var(--faint);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;font-weight:600}.switcher select{border:1px solid var(--line);width:100%;font:inherit;background:var(--paper);color:var(--ink);border-radius:8px;outline:none;padding:.4rem .6rem;font-size:.85rem}.switcher select:focus{border-color:var(--accent)}.badge.you{color:var(--accent);background:var(--accent-soft);border-color:#fecdd3;margin-left:.5rem}.invite-link{flex-wrap:wrap;align-items:center;gap:.5rem;display:inline-flex}@media (max-width:760px){.dash{flex-direction:column}.sidebar{border-right:none;border-bottom:1px solid var(--line);flex-flow:wrap;align-items:center;gap:.75rem 1.25rem;width:100%;height:auto;padding:1rem 1.25rem;position:static}.sidebar .wordmark,.switcher,.sidebar-foot{padding:0}.side-nav{flex-flow:wrap}.sidebar-foot{border-top:none;flex-direction:row;align-items:center;margin-top:0;margin-left:auto;padding-top:0}}.auth-toggle,.back-link{margin:1.25rem 0 0}.link-button{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.auth-card .back-link a{color:var(--accent)}.auth-card.quick-add{text-align:left;max-width:26rem}.auth-card.quick-add .wordmark,.auth-card.quick-add h1,.auth-card.quick-add>.auth-note{text-align:center;display:block}.quick-add-form label{color:var(--faint);text-transform:uppercase;letter-spacing:.05em;flex-direction:column;gap:.25rem;font-size:.72rem;font-weight:600;display:flex}.quick-add-form select{border:1px solid var(--line);width:100%;font:inherit;background:var(--paper);color:var(--ink);border-radius:8px;outline:none;padding:.6rem .85rem;font-size:.95rem}.quick-add-form select:focus{border-color:var(--accent)}.form-duo{gap:.75rem;display:flex}.form-duo label{flex:1}footer{border-top:1px solid var(--line);color:var(--faint);margin-top:3rem;padding:2rem 0 3rem;font-size:.85rem}
