@import url('https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;500;700&family=Ubuntu+Condensed&display=swap');

/* ===== GLOBAL LINK HOVER ===== */
a{
  text-decoration:none;
  color:inherit;
  transition:color .2s ease, filter .2s ease, text-decoration-color .2s ease;
}
a:hover{
  color:color-mix(in srgb, currentColor 88%, white 12%);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

/* Навігаційні та текстові посилання */
.nav-link:hover,
.back:hover,
.admin-table a:hover{
  filter:brightness(1.12);
}

/* Кнопки та картки не повинні отримувати підкреслення */
.button:hover,
.hero-card:hover,
.brand:hover{
  text-decoration:none;
}

:root{
  --bg:#151a19;
  --paper:#202725;
  --surface:#252e2b;
  --surface-2:#2b3532;
  --ink:#f1f4f2;
  --muted:#aeb9b5;
  --line:#3b4743;
  --accent:#00a981;
  --accent-dark:#00785b;
  --accent-soft:#193d35;
  --mint:#70c6a9;
  --coral:#f1645d;
  --gold:#c8a96b;
  --shadow:0 16px 45px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Ubuntu",system-ui,sans-serif;line-height:1.55}
.container{width:min(1180px,calc(100% - 36px));margin:auto}
button,input,textarea,select{font:inherit}
.top{background:rgba(21,26,25,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;backdrop-filter:blur(14px)}
.nav{height:76px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand-mark{width:38px;height:38px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;color:var(--mint);overflow:hidden;background:#19211f}.brand-mark img{width:30px;height:30px;object-fit:contain}.brand strong,.brand small{display:block}.brand strong{font-size:15px;font-weight:700}.brand small{color:var(--muted);font-size:12px;margin-top:2px}.nav-link{font-weight:700;color:var(--mint)}.nav-admin{border:1px solid var(--line);padding:10px 15px;border-radius:10px;font-size:14px;font-weight:700;background:var(--surface);color:var(--ink)}
.hero-banner{background:radial-gradient(circle at 82% 35%,rgba(0,169,129,.16),transparent 28%),linear-gradient(125deg,#111615 0%,#1a2925 55%,#18211f 100%);color:#fff;overflow:hidden;position:relative}.hero-banner:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(112,198,169,.13);border-radius:50%;right:-160px;top:-160px;box-shadow:0 0 0 70px rgba(112,198,169,.025),0 0 0 140px rgba(112,198,169,.018)}
.banner-inner{min-height:430px;display:flex;align-items:center;justify-content:space-between}.banner-copy{max-width:800px;padding:70px 0;position:relative;z-index:1}.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mint);font-weight:700}.hero-banner .eyebrow{color:#70c6a9}.banner-copy h1,.section-head h2,.hero-info h1,.text-section h2,.toolbar h1,.empty h1,.empty h3{font-family:"Ubuntu Condensed","Arial Narrow",sans-serif}.banner-copy h1{font-size:clamp(46px,6vw,76px);font-weight:400;line-height:.98;margin:18px 0 8px;letter-spacing:-.015em}.banner-community{display:flex;align-items:center;gap:16px;color:#70c6a9;font-family:"Ubuntu Condensed","Arial Narrow",sans-serif;font-size:clamp(25px,3vw,39px);font-weight:500;line-height:1.1;margin:0 0 18px}.banner-community:before,.banner-community:after{content:"";height:1px;background:rgba(112,198,169,.45);width:55px}.banner-copy p{font-size:18px;color:#d6dfdc;max-width:650px}.banner-symbol{font-size:250px;opacity:.055;margin-right:50px;color:var(--mint);position:relative;z-index:1}
.search{display:flex;max-width:700px;margin-top:30px;background:var(--paper);padding:6px;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.24)}.search input{flex:1;border:0;outline:0;padding:14px 16px;font-size:15px;background:transparent;color:var(--ink)}.search input::placeholder{color:#7f8d88}.search button,.button{background:var(--accent-dark);color:#fff;border:0;border-radius:9px;padding:13px 22px;font-weight:700;cursor:pointer;transition:.2s}.search button:hover,.button:hover{background:var(--accent);transform:translateY(-1px)}
.content{padding:65px 0 90px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.section-head h2{font-size:44px;font-weight:400;margin:8px 0}.count{color:var(--muted);font-size:14px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.hero-card{background:var(--paper);border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:var(--shadow);transition:.2s}.hero-card:hover{transform:translateY(-4px);border-color:#4a5a54;box-shadow:0 20px 48px rgba(0,0,0,.35)}.card-photo{height:310px;background:linear-gradient(145deg,#27332f,#18201e);display:grid;place-items:center;overflow:hidden}.card-photo img{width:100%;height:100%;object-fit:cover}.card-photo span{font-size:75px;color:var(--mint);opacity:.55}.card-body{padding:22px}.card-body h3{font-family:"Ubuntu Condensed","Arial Narrow",sans-serif;font-size:29px;font-weight:400;margin:9px 0}.card-body p,.card-body small{color:var(--muted)}
.hero-page{padding:35px 0 80px}.back{color:var(--mint);font-weight:700;display:inline-block;margin-bottom:22px}.hero-card-large{background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:grid;grid-template-columns:42% 58%;box-shadow:var(--shadow)}.hero-photo-wrap{min-height:520px;background:#18201e}.hero-photo-wrap img{width:100%;height:100%;object-fit:cover}.photo-placeholder{height:100%;min-height:520px;display:grid;place-items:center;font-size:120px;color:var(--mint);opacity:.5}.hero-info{padding:65px}.hero-info h1{font-size:clamp(44px,5vw,68px);font-weight:400;line-height:1.02;margin:15px 0}.dates{font-size:20px;color:var(--mint);font-weight:700;margin-bottom:35px}.hero-info p{line-height:1.7;color:var(--muted)}.hero-info b{color:#dfe7e4}
.text-section{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:32px;margin-top:20px;line-height:1.8;color:#b9c4c0}.text-section h2{font-size:34px;font-weight:400;margin-top:0;color:var(--ink)}
.empty{padding:100px 20px;text-align:center}.empty h1,.empty h3{font-weight:400}footer{border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:13px;background:#111615}footer .container{display:flex;justify-content:space-between;gap:20px}footer span:first-child{color:var(--mint);font-weight:700}
/* Admin */
.admin{padding:40px 0 80px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:15px}.toolbar h1{font-size:48px;font-weight:400;margin:8px 0}.admin-table{width:100%;border-collapse:collapse;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow)}.admin-table th,.admin-table td{padding:14px;border-bottom:1px solid var(--line);text-align:left}.admin-table th{background:var(--surface-2);color:#e4ebe8}.admin-table tr:last-child td{border-bottom:0}.admin-table a{color:var(--mint);font-weight:700}.form{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:30px;max-width:900px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field label{display:block;font-weight:700;margin-bottom:7px}.field input,.field textarea,.field select{width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:#18201e;color:var(--ink);outline:0}.field input::placeholder,.field textarea::placeholder{color:#7f8d88}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(0,169,129,.13)}.field.full{grid-column:1/-1}.actions{margin-top:20px;display:flex;gap:10px}
@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.hero-card-large{grid-template-columns:1fr}.hero-photo-wrap{min-height:380px}.hero-info{padding:35px}.banner-symbol{display:none}}
@media(max-width:600px){.banner-community{font-size:27px;gap:9px}.banner-community:before,.banner-community:after{width:24px}}
@media(max-width:600px){.container{width:min(100% - 24px,1180px)}.nav{gap:12px;height:68px}.brand strong{font-size:12px}.nav-link{display:none}.nav-admin{font-size:12px;padding:8px 10px}.grid{grid-template-columns:1fr}.banner-copy{padding:55px 0}.search{display:block;background:transparent;padding:0;box-shadow:none;border:0}.search input{background:var(--paper);border:1px solid var(--line);border-radius:9px;width:100%;margin-bottom:8px}.search button{width:100%}.content{padding-top:45px}.section-head h2{font-size:37px}.hero-info h1{font-size:45px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.admin-table{font-size:13px}.admin-table th:nth-child(3),.admin-table td:nth-child(3){display:none}footer .container{display:block}footer span{display:block;margin:4px 0}}


/* ===== FINAL DARK ADMIN OVERRIDES ===== */
body:has(.admin){background:#0d1211 !important;color:#f5f7f6 !important}
body:has(.admin) .top{background:#0d1211 !important;border-bottom:1px solid #29332f !important}
body:has(.admin) .admin{color:#f5f7f6 !important}
body:has(.admin) .admin-table,
body:has(.admin) .admin-table tbody,
body:has(.admin) .admin-table tr,
body:has(.admin) .admin-table td,
body:has(.admin) .admin-table th{background:#151c1a !important;color:#f5f7f6 !important}
body:has(.admin) .admin-table th{background:#202a26 !important;color:#70c6a9 !important;font-weight:700 !important}
body:has(.admin) .admin-table td{border-color:#303b37 !important;color:#f5f7f6 !important}
body:has(.admin) .admin-table td b{color:#ffffff !important}
body:has(.admin) .admin-table a{color:#70c6a9 !important}
body:has(.admin) .admin-table a:hover{color:#00a981 !important}
body:has(.admin) .form{background:#151c1a !important;border-color:#303b37 !important;color:#f5f7f6 !important}
body:has(.admin) .field label{color:#f5f7f6 !important}
body:has(.admin) .field input,
body:has(.admin) .field textarea,
body:has(.admin) .field select{background:#0d1211 !important;color:#ffffff !important;border-color:#3a4742 !important}
body:has(.admin) .field input::placeholder,
body:has(.admin) .field textarea::placeholder{color:#87958f !important}
body:has(.admin) .field input:focus,
body:has(.admin) .field textarea:focus,
body:has(.admin) .field select:focus{border-color:#00a981 !important;box-shadow:0 0 0 3px rgba(0,169,129,.16) !important}
body:has(.admin) .login-form{background:#151c1a !important;border-color:#303b37 !important}
body:has(.admin) .login-form label{color:#f5f7f6 !important}
body:has(.admin) .login-form input{background:#0d1211 !important;color:#ffffff !important;border-color:#3a4742 !important}
body:has(.admin) .button{background:#00785b !important;color:#ffffff !important}
body:has(.admin) .button:hover{background:#00a981 !important}
@media(max-width:700px){body:has(.admin) .admin-table{display:block;overflow-x:auto;white-space:nowrap}body:has(.admin) .admin-table th,body:has(.admin) .admin-table td{background:#151c1a !important}}

/* Admin page explicit fallback (for browsers without :has support) */
body.admin-page{background:#0d1211 !important;color:#f5f7f6 !important}
body.admin-page .top{background:#0d1211 !important;border-color:#29332f !important}
body.admin-page .admin-table,
body.admin-page .admin-table tbody,
body.admin-page .admin-table tr,
body.admin-page .admin-table td{background:#151c1a !important;color:#f5f7f6 !important}
body.admin-page .admin-table th{background:#202a26 !important;color:#70c6a9 !important}
body.admin-page .admin-table td{border-color:#303b37 !important}
body.admin-page .admin-table td b{color:#fff !important}
body.admin-page .admin-table a{color:#70c6a9 !important}
body.admin-page .form{background:#151c1a !important;color:#f5f7f6 !important;border-color:#303b37 !important}
body.admin-page .field label{color:#f5f7f6 !important}
body.admin-page .field input,body.admin-page .field textarea,body.admin-page .field select{background:#0d1211 !important;color:#fff !important;border-color:#3a4742 !important}
