/*
Theme Name: The Place WiFi
Theme URI: https://theplacesunderland.com/
Author: The Place
Description: Lightweight companion theme for the The Place WiFi Operations plugin.
Version: 0.1.0
Text Domain: the-place-wifi-theme
*/

:root {
  --tpw-bg: #07090d;
  --tpw-panel: #11151d;
  --tpw-panel-2: #171c26;
  --tpw-text: #f7f8fb;
  --tpw-muted: #9aa3b2;
  --tpw-red: #ed1a39;
  --tpw-blue: #0a74ff;
  --tpw-border: rgba(255,255,255,.10);
  --tpw-radius: 18px;
  --tpw-shadow: 0 18px 55px rgba(0,0,0,.35);
}

*{box-sizing:border-box}
html{background:var(--tpw-bg)}
body{margin:0;background:linear-gradient(180deg,#090c12 0%,#05070a 100%);color:var(--tpw-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;min-height:100vh}
a{color:inherit}
img{max-width:100%;height:auto}

.tpw-site-shell{min-height:100vh;display:flex;flex-direction:column}
.tpw-site-header{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--tpw-border);background:rgba(7,9,13,.88);backdrop-filter:blur(16px)}
.tpw-site-header__inner{width:min(1180px,calc(100% - 32px));margin:auto;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.tpw-brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;letter-spacing:.01em}
.tpw-brand__mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--tpw-red),var(--tpw-blue));box-shadow:0 0 28px rgba(237,26,57,.22)}
.tpw-brand__text small{display:block;color:var(--tpw-muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.14em}
.tpw-site-nav{display:flex;align-items:center;gap:10px}
.tpw-site-nav a{padding:10px 14px;border-radius:999px;text-decoration:none;color:#dce1ea;font-size:14px}
.tpw-site-nav a:hover{background:rgba(255,255,255,.07)}

.tpw-main{flex:1;width:min(1180px,calc(100% - 32px));margin:0 auto;padding:48px 0 72px}
.tpw-main--portal{width:100%;max-width:none;padding:0}
.tpw-content-card{background:var(--tpw-panel);border:1px solid var(--tpw-border);border-radius:var(--tpw-radius);padding:32px;box-shadow:var(--tpw-shadow)}
.tpw-content-card h1{margin-top:0;font-size:clamp(32px,5vw,58px);line-height:1}
.tpw-content-card p{color:#c9cfda}

.tpw-site-footer{border-top:1px solid var(--tpw-border);color:var(--tpw-muted);font-size:13px}
.tpw-site-footer__inner{width:min(1180px,calc(100% - 32px));margin:auto;padding:22px 0;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

.tpw-utility{min-height:100vh;display:grid;place-items:center;padding:32px;background:
radial-gradient(circle at 12% 20%,rgba(237,26,57,.15),transparent 30%),
radial-gradient(circle at 86% 78%,rgba(10,116,255,.14),transparent 30%),
#07090d}
.tpw-utility__card{width:min(620px,100%);background:rgba(17,21,29,.93);border:1px solid var(--tpw-border);border-radius:24px;padding:34px;box-shadow:var(--tpw-shadow)}
.tpw-utility__eyebrow{color:var(--tpw-red);text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:12px}
.tpw-utility__card h1{font-size:clamp(34px,7vw,64px);line-height:.98;margin:10px 0 16px}
.tpw-utility__card p{color:#bcc4d0}
.tpw-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:12px;background:var(--tpw-red);color:white;text-decoration:none;font-weight:800;border:0}
.tpw-button:hover{filter:brightness(1.07)}

.login h1 a{background-image:none!important;width:auto!important;height:auto!important;text-indent:0!important;color:#fff!important;font-size:0!important}
.login h1 a:after{content:"The Place WiFi";font-size:22px;font-weight:800}
body.login{background:#07090d}
body.login #login{padding-top:7vh}
body.login form{border:1px solid rgba(255,255,255,.10);border-radius:18px;background:#11151d;box-shadow:0 18px 55px rgba(0,0,0,.35)}
body.login label,body.login #backtoblog a,body.login #nav a{color:#d9dee7}
body.login .button-primary{background:#ed1a39;border-color:#ed1a39}

@media(max-width:760px){
  .tpw-site-nav{display:none}
  .tpw-main{padding-top:28px}
  .tpw-content-card{padding:24px}
}

.tpw-brand__logo{max-width:150px;max-height:44px;object-fit:contain}.tpw-home-logo{display:block;max-width:220px;max-height:90px;object-fit:contain;margin-bottom:24px}.tpw-home-status{margin:0 0 20px;padding:12px 14px;border:1px solid var(--tpw-border);border-radius:12px;font-size:13px}.tpw-home-status.info{background:rgba(1,166,232,.1)}.tpw-home-status.warning{background:rgba(255,181,94,.1)}.tpw-home-status.critical{background:rgba(237,26,57,.14)}
