:root{--bg:#f7f0e7;--s:#fffaf3;--s2:#efe1d0;--t:#281c18;--mut:#76645b;--p:#74152f;--gold:#c89443;--line:#3b241b18;--shadow:0 18px 50px #3a1d1514}
html[data-theme=dark]{--bg:#140d10;--s:#1d1516;--s2:#291b1e;--t:#f5e8dc;--mut:#b9a79d;--p:#d45c79;--gold:#e0b86c;--line:#fff1e20e;--shadow:0 18px 55px #0008}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--t);font:14px system-ui,sans-serif;background-image:radial-gradient(circle at 10% 0,#c8944314,transparent 25%)}a{color:inherit}.shell{max-width:1080px;margin:auto;padding:0 20px}header{height:72px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:10px;align-items:center;text-decoration:none}.brand>b{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--p);color:#f2c56d;font:23px Georgia}.brand span{font:bold 16px Georgia}.brand small{display:block;color:var(--mut);font:10px system-ui}nav{display:flex;gap:8px}nav a,nav button{border:1px solid var(--line);background:var(--s);padding:10px 13px;border-radius:12px;text-decoration:none;color:var(--t)}button{cursor:pointer;color:inherit;font:inherit}
main{padding-bottom:20px}label{display:block;color:var(--p);font-size:10px;font-weight:900;letter-spacing:.16em}.hero{display:grid;grid-template-columns:1fr 280px;gap:30px;padding:65px 0 35px;align-items:center}.hero h1{font:clamp(43px,7vw,72px)/.98 Georgia;margin:13px 0 20px;letter-spacing:-.04em}.hero h1 i{color:var(--p);font-weight:400}.hero p{color:var(--mut);line-height:1.8;max-width:650px}.primary,.secondary{border:0;border-radius:12px;padding:12px 17px;font-weight:800}.primary{background:var(--p);color:#fff}.secondary{background:var(--s2)}.ornament{height:230px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:38px Georgia;background:radial-gradient(circle,var(--s2),transparent 68%)}
.today{background:linear-gradient(135deg,var(--p),#3b0f1c);color:white;border-radius:20px;padding:25px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow)}.today small{letter-spacing:.15em;color:#f0c36a;font-size:9px}.today h2{font:25px Georgia;margin:8px 0}.today p{margin:0;color:#f5dce2}.today>strong{text-align:center}.today em{display:block;font:46px Georgia;color:#f0c36a}
.head{display:flex;justify-content:space-between;align-items:end;margin-top:38px}.head h2,.seo h2,.section-intro h2{font:30px Georgia;margin:7px 0}.head button{border:1px solid var(--line);background:var(--s);width:42px;height:42px;border-radius:12px;font-size:24px}.tools{display:flex;gap:8px;margin:18px 0}.tools input,.tools select,.checker input{border:1px solid var(--line);background:var(--s);color:var(--t);border-radius:12px;padding:12px}.tools input{flex:1}.week,.grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.week{text-align:center;color:var(--mut);font-size:10px;padding:7px}.grid{background:var(--s);border:1px solid var(--line);padding:10px;border-radius:20px;box-shadow:var(--shadow)}.day{min-height:90px;text-align:left;border:1px solid var(--line);background:transparent;border-radius:12px;padding:9px;position:relative}.day:hover{background:var(--s2);border-color:var(--p)}.day b{font-size:17px}.day span{display:block;color:var(--gold);font:14px Georgia;margin-top:9px}.day small{color:var(--mut);font-size:9px}.day i{position:absolute;right:6px;bottom:6px;background:var(--s2);padding:3px 5px;border-radius:6px;font:9px system-ui;color:var(--mut)}.day.now{outline:2px solid var(--gold)}.blank{border:0}.loading{grid-column:1/-1;text-align:center;padding:50px;color:var(--mut)}#status{min-height:18px;color:var(--mut);font-size:10px}
.weton-check{margin-top:42px}.section-intro{margin-bottom:18px}.section-intro p{color:var(--mut);line-height:1.7;margin-top:5px}.checker{display:grid;grid-template-columns:1fr 1.2fr;gap:14px}.checker-form,.weton-result{background:var(--s);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow)}.checker-form>label{margin-bottom:9px}.date-row{display:flex;gap:8px}.date-row input{flex:1;min-width:0}.weton-result{background:linear-gradient(145deg,var(--s),var(--s2))}.weton-result>small{color:var(--p);font-weight:900;letter-spacing:.15em;font-size:9px}.weton-result h3{font:28px Georgia;margin:7px 0 16px}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.result-grid div{background:var(--s);padding:12px;border-radius:12px}.result-grid span{display:block;color:var(--mut);font-size:9px}.result-grid b{font:17px Georgia}.weton-result p{color:var(--mut);font-size:11px}.detail{position:relative;margin-top:28px;background:var(--s);border:1px solid var(--line);border-radius:18px;padding:22px}.detail>#close{position:absolute;right:15px;top:15px;border:0;background:var(--s2);border-radius:9px;width:32px;height:32px;font-size:20px}.detail h2{font:28px Georgia}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.facts div{background:var(--s2);padding:14px;border-radius:12px}.facts small{display:block;color:var(--mut);font-size:9px}.facts b{font:16px Georgia}
.seo{padding:40px 0}.seo h2{margin-bottom:10px}.seo p,footer p{color:var(--mut);line-height:1.7;font-size:12px}footer{border-top:1px solid var(--line);padding:32px 0 50px;display:flex;justify-content:space-between;color:var(--mut);font-size:11px}footer strong{font:18px Georgia;color:var(--t)}#toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);opacity:0;background:var(--t);color:var(--bg);padding:12px 18px;border-radius:12px;font-size:11px;transition:.25s;z-index:9;box-shadow:0 12px 30px #0003}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:720px){.shell{padding:0 13px}.hero{grid-template-columns:1fr;padding:40px 0 25px}.ornament{display:none}.hero h1{font-size:45px}.tools{display:grid;grid-template-columns:1fr 1fr}.tools input{grid-column:1/-1}.week,.grid{gap:3px}.grid{padding:6px}.day{min-height:74px;padding:7px}.day span{font-size:11px;margin-top:7px}.day small{font-size:7px}.day i{font-size:7px}.head h2{font-size:25px}.checker{grid-template-columns:1fr}.date-row{display:grid;grid-template-columns:1fr}.result-grid{grid-template-columns:1fr 1fr}.result-grid div:last-child{grid-column:1/-1}.facts{grid-template-columns:1fr}.today h2{font-size:19px}.today em{font-size:38px}footer{display:block}}
