
:root{--t1:#0f3d40;--t2:#14716f;--c:#e76f51;--bg:#fff;--tx:#111;--line:#d6e5e4;--soft:#f2f8f8}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--tx);background:var(--bg);line-height:1.65}
a{color:var(--t2)}
header{background:radial-gradient(circle at 85% 20%,rgba(231,111,81,.35),transparent 40%),radial-gradient(circle at 10% 110%,rgba(255,255,255,.08),transparent 45%),linear-gradient(135deg,#0b2f31 0%,#0f3d40 45%,#14716f 100%);color:#fff}
.wrap{max-width:960px;margin:0 auto;padding:0 16px}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.12)}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800;font-size:1.1rem;letter-spacing:.2px}
.brand img{width:34px;height:34px}
nav{display:flex;flex-wrap:wrap;gap:6px}
nav a{color:#e8f3f2;text-decoration:none;font-size:.92rem;padding:6px 12px;border-radius:999px}
nav a:hover{background:rgba(255,255,255,.1)}
nav a[aria-current]{background:#fff;color:var(--t1);font-weight:700}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;padding:38px 0 46px}
.hero.solo{grid-template-columns:1fr auto}
.kicker{display:inline-block;background:rgba(231,111,81,.18);color:#ffc3b3;border:1px solid rgba(231,111,81,.5);border-radius:999px;padding:4px 12px;font-size:.8rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;margin-bottom:12px}
.hero h1{margin:0 0 10px;font-size:clamp(1.8rem,4.6vw,2.7rem);line-height:1.12}
.hero h1 em{font-style:normal;color:#ffb39f}
.hero p{margin:0;color:#d5e8e6;max-width:560px;font-size:1.05rem}
.hcard{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:22px 18px;text-align:center;box-shadow:0 18px 40px rgba(0,0,0,.25);backdrop-filter:blur(6px)}
.hcard .lbl{font-size:.8rem;letter-spacing:1.5px;text-transform:uppercase;color:#ffc3b3;font-weight:700}
.hcard .clock{font-size:clamp(2.6rem,9vw,3.8rem);font-weight:800;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:1px;line-height:1.1;margin:6px 0}
.hcard .nx{font-size:1.05rem;color:#fff}.hcard .now{font-size:.88rem;color:#bcd9d6;margin-top:4px}
.hcard .today{margin-top:14px}
.hcard .chip{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:#fff}
.hart svg{width:150px;height:150px;opacity:.9}
main{padding:24px 0 40px}
h2{color:var(--t1);margin:34px 0 10px;font-size:1.4rem}
h3{margin:22px 0 6px;font-size:1.08rem;color:var(--t1)}
.card{border:1px solid var(--line);border-radius:12px;padding:18px;background:var(--soft);margin:16px 0}
.today{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:14px}
.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font-size:.92rem}
.chip.done{opacity:.55;text-decoration:line-through}.chip.next{background:var(--c);border-color:var(--c);color:#fff;font-weight:700}
label{font-weight:600;display:block;margin:0 0 6px}
select,input{font:inherit;padding:10px 12px;border-radius:8px;border:1px solid #9cbcba;background:#fff;color:var(--tx);width:100%}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.row>div{flex:1 1 220px}
table{width:100%;border-collapse:collapse;margin:12px 0;font-size:.95rem}
th,td{border:1px solid var(--line);padding:8px 10px;text-align:left}
th{background:var(--t1);color:#fff}
tr:nth-child(even) td{background:var(--soft)}
tr.hl td{background:#fde4dc!important;font-weight:700}
.tablewrap{overflow-x:auto}
details{border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin:10px 0;background:#fff}
summary{font-weight:700;cursor:pointer;color:var(--t1)}
.disc{background:#fdeee9;border-left:5px solid var(--c);padding:12px 14px;border-radius:6px;margin:24px 0}
footer{background:var(--t1);color:#dcecea;padding:22px 0;font-size:.9rem}footer a{color:#fff}
@media (max-width:760px){.hero,.hero.solo{grid-template-columns:1fr;padding:26px 0 32px}.hart{display:none}nav a{padding:5px 10px}}
