/* Enkel, ren stil. Inga ramverk – lätt att förstå och ändra. */
:root{--blå:#1457b8;--mörk:#16202e;--grå:#5b6675;--ljus:#f5f7fa;--linje:#e2e7ee;--grön:#1a8a4a;--röd:#c0392b;}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--mörk);background:#fff}
a{color:var(--blå);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1100px;margin:0 auto;padding:24px 16px}

/* Topbar */
.topbar{display:flex;align-items:center;gap:16px;padding:10px 20px;border-bottom:1px solid var(--linje);position:sticky;top:0;background:#fff;z-index:10;flex-wrap:wrap}
.brand{font-weight:800;font-size:22px;color:var(--mörk)}
.brand span{color:var(--blå)}
.topbar .search{flex:1;display:flex;min-width:200px}
.topbar .search input{flex:1;padding:9px 12px;border:1px solid var(--linje);border-radius:6px 0 0 6px}
.topbar .search button{padding:9px 16px;border:none;background:var(--blå);color:#fff;border-radius:0 6px 6px 0;cursor:pointer}
.topbar nav{display:flex;gap:14px;align-items:center}
.notif{position:relative}
.badge{position:absolute;top:-8px;right:-10px;background:var(--röd);color:#fff;border-radius:10px;font-size:11px;padding:1px 6px}

/* Knappar */
.btn,button.btn{display:inline-block;background:var(--blå);color:#fff;padding:10px 18px;border:none;border-radius:6px;cursor:pointer;font-size:15px}
.btn:hover{text-decoration:none;opacity:.92}
.btn-grön{background:var(--grön)}
.btn-ljus{background:var(--ljus);color:var(--mörk);border:1px solid var(--linje)}
.btn-block{display:block;width:100%;text-align:center}

/* Flash */
.flash{padding:12px 16px;border-radius:6px;margin-bottom:12px}
.flash-success{background:#e6f6ec;color:var(--grön)}
.flash-error{background:#fdecea;color:var(--röd)}
.flash-info{background:#eaf2fb;color:var(--blå)}

/* Rutnät av objekt */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.card{border:1px solid var(--linje);border-radius:10px;overflow:hidden;background:#fff;transition:box-shadow .15s}
.card:hover{box-shadow:0 4px 16px rgba(0,0,0,.08)}
.card .thumb{height:160px;background:var(--ljus) center/cover no-repeat;display:flex;align-items:center;justify-content:center;color:var(--grå)}
.card .body{padding:12px}
.card h3{margin:0 0 6px;font-size:15px;line-height:1.3}
.card .price{font-weight:700;font-size:18px}
.card .meta{color:var(--grå);font-size:13px;display:flex;justify-content:space-between;margin-top:6px}
.tag{display:inline-block;background:var(--ljus);border:1px solid var(--linje);border-radius:20px;padding:2px 10px;font-size:12px;color:var(--grå)}

/* Layout objektvy */
.detail{display:grid;grid-template-columns:1.6fr 1fr;gap:28px}
@media(max-width:800px){.detail{grid-template-columns:1fr}}
.gallery .main-img{width:100%;border-radius:10px;background:var(--ljus);min-height:320px;object-fit:cover}
.thumbs{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.thumbs img{width:70px;height:70px;object-fit:cover;border-radius:6px;border:1px solid var(--linje);cursor:pointer}

/* Budruta */
.bidbox{border:1px solid var(--linje);border-radius:10px;padding:18px;position:sticky;top:80px}
.bidbox .cur{font-size:28px;font-weight:800}
.bidbox .row{display:flex;justify-content:space-between;padding:4px 0;color:var(--grå);font-size:14px}
.bidbox input[type=number]{width:100%;padding:10px;border:1px solid var(--linje);border-radius:6px;margin:6px 0}
.cost-box{background:var(--ljus);border-radius:8px;padding:12px;margin:12px 0;font-size:14px}

/* Formulär / wizard */
.form{max-width:680px}
.form label{display:block;font-weight:600;margin:14px 0 4px}
.form input[type=text],.form input[type=email],.form input[type=password],.form input[type=number],.form select,.form textarea{
  width:100%;padding:10px;border:1px solid var(--linje);border-radius:6px;font-size:15px;font-family:inherit}
.form textarea{min-height:120px}
.form .hint{color:var(--grå);font-size:13px;margin-top:4px}
.steps{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.steps .step{background:var(--ljus);border-radius:20px;padding:4px 12px;font-size:13px;color:var(--grå)}

/* Statistik / dashboard */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin:18px 0}
.stat{border:1px solid var(--linje);border-radius:10px;padding:16px}
.stat .num{font-size:26px;font-weight:800}
.stat .lbl{color:var(--grå);font-size:13px}

/* Tabeller */
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:10px;border-bottom:1px solid var(--linje);font-size:14px}
th{color:var(--grå);font-weight:600}
.status{padding:2px 10px;border-radius:20px;font-size:12px;background:var(--ljus)}

/* FAQ */
.faq-item{border-bottom:1px solid var(--linje);padding:14px 0}
.faq-item h4{margin:0 0 6px}

/* Diverse */
.muted{color:var(--grå)}
.section-title{margin:24px 0 8px}
.filters{border:1px solid var(--linje);border-radius:10px;padding:16px;margin-bottom:18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.footer{border-top:1px solid var(--linje);padding:20px;text-align:center;color:var(--grå);font-size:14px;margin-top:40px}
.error-text{color:var(--röd);font-size:14px}
