:root{--font-sans:system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--line-height:1.5;--bg:#fff;--page-bg:#f5f6f8;--surface:#fff;--surface-sunken:#f1f3f4;--overlay:#05052d80;--text:#111827;--text-muted:#6b7280;--text-subtle:#9ca3af;--border:#e5e7eb;--border-strong:#d1d5db;--brand-navy:#05052d;--brand-green:#6cd700;--brand-green-ink:#2f7a00;--primary:#007cff;--primary-hover:#0062cc;--primary-contrast:#fff;--primary-tint:#e8f2ff;--success:#1e7e34;--success-bg:#e6f4ea;--warning:#b45309;--warning-bg:#fef3c7;--danger:#b91c1c;--danger-bg:#fdecea;--info:#007cff;--package:#6d28d9;--package-bg:#ede9fe;--focus-ring:#facc15;--radius-sm:6px;--radius-md:10px;--radius-lg:12px;--space-1:4px;--space-2:6px;--space-3:8px;--space-4:12px;--space-5:16px;--space-6:24px;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);line-height:var(--line-height);color:var(--text);background:var(--page-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--page-bg)}a{color:inherit;text-decoration:none}button{font-family:inherit}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}code{background:var(--surface-sunken);border:1px solid var(--border);font-family:var(--font-mono);border-radius:4px;padding:.05em .35em;font-size:.9em}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--brand-navy);color:#fff;flex-direction:column;gap:.5rem;padding:.7rem 1rem;display:flex}.brand{letter-spacing:.2px;color:#fff;font-size:1.05rem;font-weight:700}.topbar nav{flex-wrap:wrap;gap:.25rem;display:flex}.topbar nav a{border-radius:var(--radius-sm);color:#ffffffb8;padding:.35rem .7rem;font-size:.9rem;font-weight:500}.topbar nav a:hover{color:#fff;background:#ffffff14}.topbar nav a.active{color:#fff;background:#ffffff29}.subnav{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.25rem;padding:.5rem 1rem;display:flex}.subnav a{border-radius:var(--radius-sm);color:var(--text-muted);padding:.35rem .75rem;font-size:.9rem;font-weight:500}.subnav a:hover{color:var(--text);background:var(--surface-sunken)}.subnav a.active{color:var(--primary);background:var(--primary-tint)}.banner{background:var(--flag-bg,#fffbeb);border:1px solid var(--warning-bg);border-left:3px solid var(--warning);border-radius:var(--radius-sm);color:var(--text-muted);margin:.75rem 1rem 0;padding:.55rem .8rem;font-size:.82rem}.content{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:1.25rem 1rem 2.5rem}.view h1{margin:0 0 .25rem;font-size:1.4rem}.view .blurb{color:var(--text-muted);max-width:60ch;margin:0 0 1rem}.stub{border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--text-muted);background:var(--surface);padding:1rem}.stub ul{margin:.5rem 0 0;padding-left:1.2rem}@media (width>=720px){.topbar{flex-direction:row;justify-content:space-between;align-items:center;padding:.7rem 1.5rem}.subnav{padding:.5rem 1.5rem}}.print-only{display:none}@media print{.topbar,.subnav,.banner,.no-print{display:none!important}.print-only{display:block!important}.content{max-width:none;padding:0!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}@page{margin:14mm}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.7s linear infinite spin}.obj-row{align-items:center;gap:10px;padding:14px 16px;display:flex}.obj-main{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.obj-title-btn{text-align:left;cursor:pointer;background:0 0;border:none;flex-wrap:wrap;flex:1;align-items:baseline;gap:10px;min-width:0;padding:0;display:flex}.obj-icon{color:var(--primary);flex:none;align-self:center}.obj-title{color:var(--text);font-size:18px;font-weight:700}.obj-tagline{color:var(--text-muted);font-size:12.5px}.obj-meta{flex:none;align-items:center;gap:10px;display:flex}.obj-count{font-family:var(--font-mono);color:var(--text-subtle);white-space:nowrap;flex:none;font-size:11px}.obj-grip{cursor:grab;color:var(--text-subtle);flex:none;display:inline-flex}.task-row{align-items:center;gap:10px;padding:11px 13px;display:flex}.task-main{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.task-title-btn{text-align:left;cursor:pointer;background:0 0;border:none;flex:1;min-width:0;padding:0;font-size:14.5px;font-weight:600}.task-meta{flex:none;align-items:center;gap:10px;display:flex}.task-grip{cursor:grab;color:var(--text-subtle);flex:none;display:inline-flex}.reorder-ctrl{display:none}.reorder-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex}.reorder-btn:disabled{opacity:.35;cursor:default}.btn-label{display:inline}@media (width<=640px){.topbar{padding:.6rem .85rem}.topbar nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity;flex-wrap:nowrap;gap:.15rem;margin:0 -.85rem;padding:.1rem .85rem;overflow-x:auto}.topbar nav::-webkit-scrollbar{display:none}.topbar nav a,.topbar nav>button{white-space:nowrap;scroll-snap-align:start;flex:none;align-items:center;min-height:44px;padding:.4rem .8rem;font-size:.92rem;display:inline-flex}.subnav{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.subnav::-webkit-scrollbar{display:none}.subnav a{white-space:nowrap;flex:none;padding:.5rem .7rem}.content{padding:1rem .85rem 2.5rem}.obj-row{align-items:flex-start;gap:8px;padding:13px 12px}.obj-main{flex-direction:column;align-items:stretch;gap:6px}.obj-title-btn{flex-wrap:wrap;align-items:flex-start;gap:8px}.obj-title{flex:auto;min-width:0;font-size:16.5px;line-height:1.3}.obj-tagline{flex:100%;font-size:12px}.obj-grip{display:none}.task-row{align-items:flex-start;gap:8px;padding:11px 12px}.task-main{flex-direction:column;align-items:stretch;gap:5px}.task-title-btn{font-size:14px;line-height:1.35}.task-grip{display:none}.reorder-ctrl{flex-direction:column;flex:none;align-self:center;gap:3px;display:inline-flex}.reorder-btn{width:44px;height:30px}.btn-label{display:none}.add-form input,.add-form button{min-height:44px}.add-form button{padding-left:14px;padding-right:14px}.tap{min-height:44px}.focus-actions button{flex:40%;justify-content:center}}
