:root{color-scheme:light dark;--bg:#f6f7f9;--panel:#fff;--border:#dde1e6;--text:#1a1d21;--muted:#667085;--accent:#2f6feb;--accent-contrast:#fff;--danger:#c0362c;--radius:8px}@media(prefers-color-scheme:dark){:root{--bg:#14161a;--panel:#1c1f24;--border:#2b2f36;--text:#e7e9ec;--muted:#9aa2ad;--accent:#5b8def;--accent-contrast:#0b1220}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5;margin:0}a{color:var(--accent)}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-header{align-items:center;background:var(--panel);border-bottom:1px solid var(--border);display:flex;gap:2rem;padding:.75rem 1.5rem}.app-header .brand{font-weight:700;letter-spacing:.02em}.app-header nav{display:flex;gap:1.25rem}.app-header nav a{color:var(--muted);font-size:.92rem;text-decoration:none}.app-header nav a.router-link-exact-active,.app-header nav a:hover{color:var(--text)}.app-main{flex:1;margin:0 auto;max-width:980px;padding:1.5rem;width:100%}h1{font-size:1.5rem;margin:0 0 .25rem}h2{font-size:1.1rem;margin:0 0 .5rem}h3{font-size:.98rem;margin:0 0 .4rem}.subtitle{color:var(--muted);margin:0 0 1.5rem}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.25rem;padding:1rem 1.25rem}.card-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);display:block;padding:1rem 1.25rem;text-decoration:none}.card .count{font-size:1.6rem;font-weight:700}.card .label{color:var(--muted);font-size:.85rem}table{border-collapse:collapse;font-size:.92rem;width:100%}td,th{border-bottom:1px solid var(--border);padding:.45rem .5rem;text-align:left}th{color:var(--muted);font-size:.8rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}tr:last-child td{border-bottom:none}.form-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.field{display:flex;flex-direction:column;gap:.25rem}.field label{color:var(--muted);font-size:.78rem}input,select{background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9rem;min-width:0;padding:.4rem .55rem}button{background:var(--accent);border:none;border-radius:6px;color:var(--accent-contrast);cursor:pointer;font-size:.88rem;font-weight:600;padding:.45rem .85rem}button:hover{filter:brightness(1.08)}button:disabled{cursor:default;opacity:.5}button.secondary{background:transparent;border:1px solid var(--border);color:var(--text)}button.danger{background:transparent;border:1px solid var(--danger);color:var(--danger);font-size:.8rem;padding:.3rem .6rem}.actions{display:flex;gap:.5rem;justify-content:flex-end}.pill{background:var(--bg);border:1px solid var(--border);border-radius:999px;color:var(--muted);display:inline-block;font-size:.75rem;padding:.1rem .5rem}.error{color:var(--danger);font-size:.85rem;margin:.25rem 0}.empty{color:var(--muted);font-style:italic;padding:.5rem 0}.plant-block,.string-block{border:1px solid var(--border);border-radius:var(--radius);margin:.75rem 0;padding:.85rem 1rem}.string-block{background:var(--bg)}.row-actions{align-items:center;display:flex;gap:.4rem}.jar-chip-list{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0}.jar-chip{align-items:center;background:var(--panel);border:1px solid var(--border);border-radius:999px;display:inline-flex;font-size:.78rem;gap:.35rem;padding:.15rem .3rem .15rem .6rem}.jar-chip button{background:transparent;color:var(--muted);font-size:.85rem;line-height:1;padding:0 .3rem}.jar-chip button:hover{color:var(--danger)}
