:root{--bg:#faf7f5;--surface:#fff;--ink:#2a2025;--muted:#8a7d82;--line:#ece4e6;--wine:#7a1f3d;--wine-dark:#5c1730;--wine-soft:#f3e6ea;--gold:#b08d57;--danger:#b3261e;--radius:14px;--shadow:0 1px 3px rgba(40,20,30,.06),0 8px 24px rgba(40,20,30,.06);--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.5}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 20px}.topbar{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.topbar-inner{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:700;font-size:1.25rem}.brand-mark{font-size:1.5rem}.topnav{display:flex;align-items:center;gap:16px}.topnav a{text-decoration:none;color:var(--muted);font-weight:500}.topnav a:hover{color:var(--ink)}main.container{padding-top:28px;padding-bottom:60px;min-height:70vh}h1{font-size:1.8rem;margin:0 0 4px;letter-spacing:-.02em}h3{margin:0 0 4px}.muted{color:var(--muted)}.lead{font-size:1.05rem}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-weight:600;font-size:.92rem;text-decoration:none;cursor:pointer;transition:.15s}.btn:hover{border-color:var(--muted)}.btn-primary{background:var(--wine);border-color:var(--wine);color:#fff}.btn-primary:hover{background:var(--wine-dark);border-color:var(--wine-dark)}.btn-danger{background:#fff;color:var(--danger);border-color:#e6c9c7}.btn-danger:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.filters{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}.filters .search{flex:1 1 280px}input,select,textarea{padding:10px 12px;border:1px solid var(--line);border-radius:10px;font-size:.95rem;font-family:inherit;background:var(--surface);color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid var(--wine-soft);border-color:var(--wine)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:inherit;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s;display:flex;flex-direction:column}.card:hover{transform:translateY(-3px);box-shadow:0 6px 14px #28141e1a,0 16px 40px #28141e14}.card-img{position:relative;aspect-ratio:4/3;background:var(--wine-soft);overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover}.noimg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;opacity:.5}.noimg.big{font-size:5rem}.card-body{padding:14px 16px 16px}.card-body h3{font-size:1.05rem;letter-spacing:-.01em}.card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:.85rem;color:var(--muted);gap:8px}.qty{font-weight:700;color:var(--wine)}.loc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{position:absolute;top:10px;left:10px;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;background:#ffffffeb;color:var(--ink);backdrop-filter:blur(4px)}.detail-info .badge{position:static;display:inline-block;margin-bottom:8px}.badge-Rött{background:#7a1f3d;color:#fff}.badge-Vitt{background:#e8d9a8;color:#5c4a16}.badge-Rosé{background:#f0b9c4;color:#7a2740}.badge-Mousserande{background:#f3e3b3;color:#6b5618}.badge-Dessert{background:#c89b5a;color:#3a2710}.badge-Starkvin{background:#8a5a2b;color:#fff}.badge-Övrigt{background:#d7cdd1;color:#3a2730}.empty{text-align:center;padding:70px 20px}.empty p{color:var(--muted);margin-bottom:18px}.wine-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field.span-2{grid-column:1/-1}.field label{font-size:.85rem;font-weight:600;color:var(--muted)}.field input,.field select,.field textarea{width:100%}.hint{font-size:.8rem;color:var(--muted)}.current-img{display:flex;align-items:center;gap:16px;margin-bottom:10px}.current-img img{width:90px;height:90px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.form-actions{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}.form-actions .btn-danger{margin-left:auto}.error{color:var(--danger);font-size:.85rem}.detail{display:grid;grid-template-columns:minmax(0,380px) 1fr;gap:36px;align-items:start}.detail-img{background:var(--wine-soft);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}.detail-img img{width:100%;display:block}.detail-img .noimg{aspect-ratio:3/4}.stars{color:var(--gold);font-size:1.3rem;letter-spacing:2px;margin:4px 0 16px}.facts{display:grid;grid-template-columns:140px 1fr;gap:8px 16px;margin:20px 0}.facts dt{color:var(--muted);font-weight:600;font-size:.9rem}.facts dd{margin:0}.notes{border-top:1px solid var(--line);padding-top:16px;margin-top:8px}.notes p{white-space:pre-wrap}.footer{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:.85rem;text-align:center}@media(max-width:720px){.form-grid{grid-template-columns:1fr}.detail{grid-template-columns:1fr;gap:20px}.detail-img{max-width:320px}.facts{grid-template-columns:120px 1fr}h1{font-size:1.5rem}}
