:root {
    --bg: #eef2f7;
    --bg-card: #ffffff;
    --bg-soft: #e3eaf2;
    --bg-soft-2: #f4f7fb;
    --text: #0f172a;
    --text-muted: #334155;
    --text-faint: #64748b;
    --border: #cbd5e1;
    --border-soft: #dde5ee;
    --blue: #1f4db8;
    --blue-strong: #173f96;
    --accent: #ad5d2a;
    --accent-strong: #8a4a22;
    --radius-sm: 12px;
    --radius-md: 18px;
    --radius-lg: 26px;
    --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.05), 0 10px 24px rgba(15, 23, 42, 0.06);
    --shadow: 0 3px 10px rgba(15, 23, 42, 0.06), 0 18px 46px rgba(15, 23, 42, 0.10);
}

* { box-sizing: border-box; }
body {
    margin: 0;
    font-family: "Inter", system-ui, sans-serif;
    background:
        radial-gradient(circle at top left, rgba(31,77,184,.09), transparent 28%),
        radial-gradient(circle at top right, rgba(173,93,42,.10), transparent 24%),
        linear-gradient(180deg, #f7fafc 0%, #edf2f7 100%);
    color: var(--text);
    line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; height: auto; display: block; }

.wrap { width: min(100% - 32px, 1160px); margin: 0 auto; }
.site-header {
    position: sticky;
    top: 0;
    z-index: 40;
    background: rgba(247,250,252,.92);
    border-bottom: 1px solid rgba(15,23,42,.08);
    backdrop-filter: blur(18px);
}
.site-header__inner { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:72px; }
.nejdenet-logo { display:inline-flex; align-items:flex-end; font-size:31px; letter-spacing:-.05em; white-space:nowrap; }
.wifi-icon { width:.88em; height:.88em; transform: scaleX(-1) rotate(45deg) translateY(-0.02em); margin-right:.03em; }
.arc { fill:none; stroke-width:5; stroke-linecap:round; }
.arc-blue { stroke: var(--blue); }
.arc-orange { stroke: var(--accent); }
.arc-red { stroke: #b63730; }
.box-net { display:inline-flex; align-items:center; justify-content:center; margin:0 .05em; padding:.045em .18em .065em; border-radius:.15em; background:#0f172a; color:#fff; font-weight:800; }
.text-nejde { font-weight:800; }
.text-cz { font-size:.47em; font-weight:700; color: var(--blue-strong); margin-left:.03em; transform:translateY(-0.02em); }
.cursor { display:inline-block; width:.24em; height:.08em; margin-left:.06em; background:var(--accent); border-radius:999px; transform:translateY(-0.05em); }
.site-nav { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.site-nav a { display:inline-flex; align-items:center; min-height:40px; padding:0 14px; border-radius:999px; font-size:13px; font-weight:700; border:1px solid transparent; }
.site-nav a:hover, .site-nav a.is-active { background:rgba(255,255,255,.98); border-color:rgba(15,23,42,.12); }
.mobile-toggle { display:none; width:42px; height:42px; border:1px solid var(--border); border-radius:var(--radius-sm); background:rgba(255,255,255,.88); }

.site-main { padding:28px 0 44px; }
.page-shell, .card, .item-card { background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,251,253,.98)); border:1px solid var(--border); border-radius:var(--radius-lg); box-shadow:var(--shadow); }
.page-shell { padding:26px; }
.card, .item-card { padding:20px; }

.page-grid, .stack, .listing-list { display:grid; gap:18px; }
.two-col { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:20px; align-items:start; }
.three-col { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.hero { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr); gap:18px; }

.kicker, .chip, .meta-chip {
    display:inline-flex; align-items:center; gap:8px; width:fit-content; min-height:30px; padding:0 11px; border-radius:999px; font-size:11px; font-weight:800;
}
.kicker { background:rgba(173,93,42,.09); color:var(--accent-strong); letter-spacing:.08em; text-transform:uppercase; }
.chip, .meta-chip { background:var(--bg-soft-2); color:var(--text-muted); font-size:12px; font-weight:700; }
.meta-chip--warning { background:rgba(173,93,42,.12); color:var(--accent-strong); }

h1,h2,h3 { margin:0; letter-spacing:-.04em; }
h1 { font-size:clamp(2.2rem, 5vw, 4rem); line-height:.98; }
h2 { font-size:1.7rem; }
h3 { font-size:1.08rem; }
p { margin:0; color:var(--text-muted); }

.button,.button-secondary,.button-link {
    display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:0 18px; border-radius:16px; font-size:14px; font-weight:800;
}
.button { background:var(--text); color:#fff; border:1px solid var(--text); }
.button-secondary { background:#fff; color:var(--text); border:1px solid rgba(15,23,42,.12); }
.button-link { min-height:auto; padding:0; border-radius:0; color:var(--blue-strong); }

.notice { padding:14px 16px; border-radius:16px; border:1px solid rgba(15,23,42,.10); background:rgba(255,255,255,.86); }
.notice--success { border-color:rgba(15,118,110,.16); background:rgba(240,253,250,.94); }
.notice--error { border-color:rgba(182,55,48,.16); background:rgba(254,242,242,.96); }

.toolbar,.inline-actions,.listing-meta,.footer-links,.pagination { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.sidebar-list { display:grid; gap:10px; }
.sidebar-list a,.sidebar-list div {
    display:block; padding:14px 15px; border-radius:16px; border:1px solid rgba(15,23,42,.08); background:rgba(255,255,255,.9);
}

.category-link,.listing-row {
    display:grid; gap:12px; padding:18px; border-radius:22px; border:1px solid rgba(15,23,42,.10); background:rgba(255,255,255,.94); box-shadow:0 12px 24px rgba(15,23,42,.05);
}
.category-link:hover,.listing-row:hover,.sidebar-list a:hover,.item-card:hover { transform:translateY(-1px); border-color:rgba(15,23,42,.16); box-shadow:0 18px 30px rgba(15,23,42,.08); }

.listing-row__head { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; align-items:start; }
.listing-copy { color:var(--text-muted); font-size:14px; }
.listing-meta { color:var(--text-faint); font-size:12px; font-weight:700; }
.listing-image {
    width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:18px; border:1px solid rgba(15,23,42,.08); background:#fff;
}

.field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.field { display:grid; gap:6px; }
.field label { color:var(--text-faint); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.input,.textarea,.select { width:100%; padding:12px 13px; border:1px solid rgba(15,23,42,.14); border-radius:14px; background:#fff; color:var(--text); }
.textarea { min-height:168px; resize:vertical; }
.help-text { color:var(--text-faint); font-size:12px; }
.form-actions { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.form-trap { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

.site-footer { margin-top:28px; padding:20px 0 32px; border-top:1px solid rgba(15,23,42,.08); background:rgba(255,255,255,.68); }
.site-footer__inner { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; }
.site-footer__copy { font-size:12px; color:var(--text-muted); }
.footer-links { font-size:12px; color:var(--text-muted); }

@media (max-width: 980px) {
    .two-col, .three-col, .hero, .field-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
    .wrap { width:min(100% - 24px, 1160px); }
    .site-nav {
        display:none; position:absolute; top:72px; left:0; right:0; padding:12px 20px 18px; background:rgba(244,245,247,.98); border-bottom:1px solid rgba(15,23,42,.08);
        flex-direction:column; align-items:stretch;
    }
    .site-nav.open { display:flex; }
    .site-nav a { min-height:46px; justify-content:space-between; background:rgba(255,255,255,.76); border-color:rgba(15,23,42,.08); }
    .mobile-toggle { display:inline-flex; align-items:center; justify-content:center; }
    .page-shell, .card, .item-card, .category-link, .listing-row { padding:18px; }
    .toolbar, .inline-actions, .pagination, .form-actions { flex-direction:column; align-items:stretch; }
    .button, .button-secondary { width:100%; }
    .listing-row__head { grid-template-columns:1fr; }
}
