/* Shared public components. No external fonts, trackers or runtime dependency. */
:root{--bg:#f6f5ef;--bg2:#fffefa;--line:#d9e0d5;--text:#263b35;--body:#334c42;--muted:#62746c;--bolt:#17615c;--btn-ink:#fff;--chip:#eceee6;color-scheme:light}
body[data-mode=night]{--bg:#0e1b2c;--bg2:#16283f;--line:#314452;--text:#e8eef5;--body:#c7d2df;--muted:#a5b6c7;--bolt:#69c6b5;--btn-ink:#092f29;--chip:#1e3350;color-scheme:dark}
*{box-sizing:border-box}body{font-family:'Segoe UI',system-ui,sans-serif;line-height:1.6;background:var(--bg);color:var(--text)}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}
:is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--bolt);outline-offset:4px}
[hidden]{display:none!important}a{color:var(--bolt)}h1{letter-spacing:-1px;line-height:1.2}h2,h3{letter-spacing:-.3px}
body .nav{padding:18px max(24px,calc((100vw - 1120px)/2));background:var(--bg2);gap:20px;z-index:2}
body .nav b{font-size:23px;letter-spacing:-.6px}body .nav .bolt{width:38px;height:38px}body .nav a{font-size:14px}
body .wrap{max-width:1120px;padding:48px 28px 20px}body .legal{max-width:820px}
body .hero{padding-top:72px;text-align:center}.hero .eyebrow{font-size:13px;font-weight:600;color:var(--bolt);margin-bottom:14px}
.hero .hero-title{font-size:clamp(36px,5vw,60px);max-width:860px;margin:auto;line-height:1.12}
.hero .hero-description{font-size:18px;line-height:1.65;color:var(--muted);max-width:650px;margin:22px auto 0}
body .feat{padding:25px;border-radius:19px;max-width:320px;flex:1 1 250px;line-height:1.7}body .feat b{font-size:17px}body .feat .muted{font-size:14px}
body .actions{margin-top:30px;gap:12px}body .act,body .dl{padding:13px 22px;border-radius:12px;min-height:48px;display:inline-flex;align-items:center;justify-content:center}
body .foot{max-width:1120px;margin:48px auto 0;padding:28px;color:var(--muted)}
.hemisky-delivery{padding:32px 18px;align-items:flex-start;min-height:100dvh}
.hemisky-delivery .card{margin:7vh auto;background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:0 14px 46px #183a2c0c}
.hemisky-delivery .brand{display:flex;justify-content:center;align-items:center;gap:11px;font-size:26px;font-weight:700;letter-spacing:-.7px}
.hemisky-delivery .brand img{width:40px;height:40px}
.hemisky-delivery .file,.hemisky-delivery .row{background:var(--bg);border:1px solid var(--line);border-radius:13px;text-align:left;line-height:1.6}
.hemisky-delivery .field,.hemisky-delivery input:not([type=file]){background:var(--bg2);color:var(--text);border:1px solid var(--line);border-radius:11px;padding:13px;font-size:15px}
.hemisky-delivery .btn{background:var(--bolt);color:var(--btn-ink);font-size:15px;font-weight:650;border-radius:11px;min-height:46px}
.hemisky-delivery .hint,.hemisky-delivery .sz{color:var(--muted);font-size:13px;line-height:1.65}
.hemisky-delivery .get{color:var(--bolt)}.hemisky-delivery .bar{background:var(--bolt)}.hemisky-delivery .progress{background:var(--line)}
.hemisky-delivery .ok{color:#22754f}.hemisky-delivery .bad{color:#b7433d}
.hemisky-download main{background:var(--bg2);border:1px solid var(--line);border-radius:22px;padding:32px;max-width:780px;margin:6vh auto;color:var(--text)}
.hemisky-download h1{display:flex;align-items:center;gap:12px;font-size:28px}.hemisky-download h1 img{width:40px;height:40px}
.hemisky-download section{border-color:var(--line);background:var(--bg);border-radius:14px;padding:18px}
.hemisky-download .button{background:var(--bolt);color:var(--btn-ink);border-radius:11px;padding:12px 18px}
.hemisky-download .button.secondary{background:var(--chip);color:var(--text)}.hemisky-download p,.hemisky-download .muted{color:var(--muted)}
.hemisky-admin .top,.hemisky-admin .card,.hemisky-admin .stat{background:var(--bg2);border-color:var(--line);border-radius:16px}
.hemisky-admin .card{padding:22px}.hemisky-admin .stat .v,.hemisky-admin .card h3{color:var(--bolt)}
.hemisky-admin .top{margin:20px 0 28px;padding:18px;gap:12px}.hemisky-admin .top .bolt-mark{width:34px;height:34px}
.hemisky-admin input,.hemisky-admin select{background:var(--bg2);color:var(--text);border-color:var(--line);min-height:42px;border-radius:10px}
.hemisky-admin .btn{background:var(--bolt);color:var(--btn-ink);min-height:40px;border-radius:10px}.hemisky-admin .btn.sec{background:var(--chip);color:var(--text)}.hemisky-admin .btn.red{background:#b7433d;color:white}
.hemisky-admin .flag,.hemisky-admin .prof{background:var(--bg);border:1px solid var(--line);padding:14px}.hemisky-admin .hint,.hemisky-admin .stat .l,.hemisky-admin .flag .d{color:var(--muted);font-size:12px}
.hemisky-admin .t th,.hemisky-admin .t td{padding:10px;border-color:var(--line);font-size:12px}.hemisky-admin .t th{color:var(--muted)}
.hemisky-admin .err{color:#b7433d}.hemisky-admin .okmsg{color:#22754f}.hemisky-admin #login p{color:var(--muted)}
@media(max-width:700px){body .nav{flex-wrap:wrap;padding:16px 20px;gap:12px}body .nav b{flex:1}body .nav .sp{display:none}body .nav a{font-size:13px}body .wrap{padding:30px 20px}body .hero{padding-top:42px}.hero .hero-description{font-size:16px}.hemisky-delivery .card{padding:23px;margin:3vh auto}.hemisky-download main{margin:24px 12px;padding:22px}body .foot{gap:12px;padding:24px 20px}.hemisky-admin .t{display:block;overflow-x:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
