html,body,#root{margin:0;min-height:100%}body{background:#fbf5ea}.app{--ev:#1d5a3a;--navy:#0d1b2a;--gold:#b88a2a;--wine:#b3202f;--ink:#1b2430;--mut:#5d6672;--line:#e3dccd;--card:#fffdf8;font-family:-apple-system,SF Pro Text,Segoe UI,system-ui,sans-serif;color:var(--ink);background:#fbf5ea;min-height:100vh;padding-bottom:48px}.app h1,.app h2,.app h3{font-family:Iowan Old Style,Palatino Linotype,Palatino,Book Antiqua,Georgia,serif;font-weight:600;letter-spacing:-.01em}h1{font-size:clamp(34px,8.5vw,60px);line-height:1.04;margin:10px 0 12px;font-weight:600}.wrap{max-width:1000px;margin:0 auto;padding:0 16px;box-sizing:border-box}.notice{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:10px;padding:14px 16px;margin-top:16px;font-size:14px;line-height:1.5}.notice p{margin:0 0 4px}.notice ul{margin:6px 0 0;padding-left:18px;color:#39424d}.notice li{margin:5px 0}.link{background:none;border:0;color:var(--wine);font:inherit;font-weight:600;padding:10px 0;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.tabs{display:flex;gap:4px;margin-top:14px;border-bottom:1px solid var(--line)}.tabs button{flex:1;min-height:48px;background:none;border:0;border-bottom:3px solid transparent;font:inherit;font-weight:600;font-size:15px;color:var(--mut);cursor:pointer}.tabs button.on{color:var(--ev);border-bottom-color:var(--gold)}.tabs i{font-style:normal;font-size:12px;background:var(--ev);color:#fff;border-radius:99px;padding:1px 7px;margin-left:4px}main{padding-top:14px}.flash{background:#efe7d3;border-radius:8px;padding:10px 14px;font-size:14px}.search{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #cfc6b2;border-radius:12px;padding:0 14px;color:var(--gold)}.search input{flex:1;border:0;outline:0;font:inherit;font-size:16px;min-height:50px;background:none;color:var(--ink)}.search:focus-within{border-color:var(--ev);box-shadow:0 0 0 3px #17382d26}.hint{font-size:13px;color:var(--mut);margin:10px 0}.hint button{background:none;border:0;border-bottom:1px solid var(--gold);color:var(--ev);font:inherit;margin:0 10px 0 6px;padding:4px 0;cursor:pointer}.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chips .sec{width:100%;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:8px 0 0}.chips button{height:40px;box-sizing:border-box;border:1px solid #cfc6b2;background:#fff;color:var(--ink);border-radius:99px;padding:0 13px;min-height:40px;font:inherit;font-size:14px;cursor:pointer}.chips button small{margin-left:6px;color:var(--mut);font-size:12px}.chips button.none{color:#8a8f97;border-style:dashed}.chips button.on{background:var(--ev);border-color:var(--ev);color:#fff}.chips button.on small{color:#cfe0d6}.bar{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;margin:14px 0;font-size:14px;color:var(--mut)}.bar label{display:flex;align-items:center;gap:6px;min-height:40px}.bar select{font:inherit;font-size:15px;min-height:40px;border-radius:8px;border:1px solid #cfc6b2;background:#fff;color:var(--ink);padding:0 8px}.gnote{font-size:13.5px;color:var(--mut);line-height:1.45}.empty{background:var(--card);border:1px dashed #cfc6b2;border-radius:12px;padding:16px;margin:10px 0;line-height:1.5;font-size:14.5px}.empty p{margin:6px 0 0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:0 1px #00000008}.meta{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--mut)}.src{display:inline-flex;align-items:center;gap:6px;color:var(--ev);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:11.5px}.kind{text-transform:uppercase;letter-spacing:.12em;font-size:11px}h3{font-size:22px;line-height:1.18;margin:10px 0 4px}.orig{font-size:13px;color:var(--wine);font-weight:600;margin-bottom:8px}.sum{margin:0 0 8px;font-size:14.5px;line-height:1.5;color:#2a3440}.cast{margin:0 0 10px;font-size:13px;line-height:1.45;color:var(--mut)}.cast span{font-weight:700;color:var(--ink);text-transform:uppercase;font-size:11px;letter-spacing:.1em;margin-right:4px}.tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.tags span{font-size:11.5px;color:var(--ev);background:#e8efe9;border-radius:99px;padding:2px 9px}.air{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px 0;margin-bottom:12px}.airrow{display:flex;flex-wrap:wrap;gap:2px 12px;font-size:13px;padding:3px 0}.airrow.past{opacity:.5}.airrow b{min-width:84px}.airrow span{color:var(--wine)}.airrow em{color:var(--mut);font-style:normal}.noair{font-size:13px;color:var(--mut);padding:3px 0}.actions{display:flex;gap:8px}.btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;border-radius:10px;border:1px solid var(--ev);background:#fff;color:var(--ev);font:inherit;font-weight:600;font-size:14.5px;cursor:pointer}.btn.on{background:var(--ev);color:#fff}.icon{min-width:46px;min-height:46px;border-radius:10px;border:1px solid #cfc6b2;background:#fff;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font:inherit;cursor:pointer}.icon.on{color:var(--wine);border-color:var(--wine);background:#f8ecee}.icon.txt{padding:0 12px;font-size:13.5px;color:var(--mut)}button:disabled{opacity:.5}.srcbox{font-size:12.5px;color:var(--mut);margin-top:10px;line-height:1.45}.srcbox a{color:var(--wine);font-weight:600}.day h2{font-size:19px;margin:20px 0 8px;color:var(--ev)}.day.past{opacity:.85}.lrow{display:flex;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:8px}.lt{min-width:72px;font-weight:700;font-size:13.5px;color:var(--wine)}.lm{flex:1}.small{font-size:12.5px;color:var(--mut)}footer{font-size:12px;color:var(--mut);margin-top:26px;line-height:1.5}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #2b6cb0;outline-offset:2px}@media (max-width:420px){.lt{min-width:60px}.airrow b{min-width:78px}}.hero{background:var(--ev);color:#fff;position:relative;border-bottom:6px solid transparent;border-image:repeating-linear-gradient(135deg,#b3202f 0,#b3202f 14px,#fbf5ea 14px,#fbf5ea 28px) 6}.art{height:clamp(170px,38vw,380px);background-size:cover;background-position:50% 60%}.hero-in{max-width:1000px;margin:0 auto;padding:22px 20px 20px;box-sizing:border-box;text-align:center}.eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#f1d58c}.eyebrow span{color:#f1d58c;margin:0 6px}.hero h1{font-size:clamp(34px,8.5vw,58px);line-height:1.05;margin:8px 0 10px;color:#fff}.lede{margin:0 auto 14px;max-width:32em;font-size:16px;line-height:1.45;color:#eaf3ec}.stamp{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 22px;font-size:13px;color:#d4e6d9;border-top:1px solid rgba(241,213,140,.55);padding-top:12px}.stamp b{color:#fff;font-weight:600}.notice{border-left-color:var(--wine)}.tabs button.on{border-bottom-color:var(--wine)}.tabs i{background:var(--wine)}.day h2,.week h2{color:var(--wine)}.btn{border-color:var(--ev)}.card{border-top:3px solid var(--wine)}.card:nth-child(2n){border-top-color:var(--ev)}.newbadge{display:inline-block;vertical-align:middle;margin-left:8px;font-family:-apple-system,SF Pro Text,system-ui,sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:var(--wine);color:#fff;border-radius:99px;padding:3px 9px;line-height:1.2}.week{background:linear-gradient(180deg,#fff7e6,#fffdf8);border:1px solid #e8d9b0;border-radius:14px;padding:14px 0 14px 14px;margin-bottom:16px}.week h2{font-size:21px;margin:0 0 2px}.week h2 span{color:var(--gold)}.week .small{margin:0 0 10px}.strip{display:flex;gap:10px;overflow-x:auto;padding:2px 14px 6px 0;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.mini{flex:0 0 190px;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-top:3px solid var(--ev);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:3px}.mini .newbadge{align-self:flex-start;margin:0 0 4px}.mini b{font-family:Iowan Old Style,Palatino Linotype,Palatino,Georgia,serif;font-size:16px;line-height:1.2}.mini em{font-style:normal;font-size:13px;color:var(--wine);font-weight:600}.mini small{font-size:12px;color:var(--mut)}.newtoggle{display:inline-flex;align-items:center;gap:8px;height:44px;box-sizing:border-box;margin:0 0 10px;padding:0 16px;border-radius:99px;border:1.5px solid var(--wine);background:#fff;color:var(--wine);font:inherit;font-weight:700;font-size:14.5px;cursor:pointer}.newtoggle span{color:var(--gold)}.newtoggle small{font-size:12px;background:var(--wine);color:#fff;border-radius:99px;padding:1px 7px}.newtoggle.on{background:var(--wine);color:#fff}.newtoggle.on span{color:#f1d58c}.newtoggle.on small{background:#fff;color:var(--wine)}.chips button.on{background:var(--ev);border-color:var(--ev)}.tags span{background:#e6f0e8}footer:before{content:"❄ ✦ ❄";display:block;text-align:center;color:var(--gold);letter-spacing:.6em;margin-bottom:10px}.thumb{height:140px;margin:-16px -16px 12px;border-radius:11px 11px 0 0;background-size:cover;background-position:center;border-bottom:1px solid var(--line)}.mthumb{height:84px;margin:-10px -12px 6px;border-radius:9px 9px 0 0;background-size:cover;background-position:center}.seg{display:flex;gap:0;background:#f1e8d6;border-radius:12px;padding:3px;margin:8px 0 10px;max-width:520px}.seg button{flex:1;min-height:44px;border:0;border-radius:10px;background:none;font:inherit;font-weight:600;font-size:14px;color:var(--mut);cursor:pointer;padding:0 8px}.seg button.on{background:#fff;color:var(--wine);box-shadow:0 1px 3px #00000026}.seg i{font-style:normal;font-size:11.5px;background:var(--line);color:var(--ink);border-radius:99px;padding:1px 7px;margin-left:5px}.seg button.on i{background:var(--wine);color:#fff}.flabel{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:14px 0 2px;font-weight:700}.week{padding-right:0}.week .seg{margin-right:14px}.week .small{margin:0 0 8px}.mini{flex-basis:200px;overflow:hidden}.macts{display:flex;gap:6px;margin-top:8px}.macts .btn{min-height:44px;font-size:13.5px;padding:0 6px}.macts .icon{min-width:44px;min-height:44px}.mini{flex-basis:210px}.strip{align-items:stretch}.mini{height:auto}.macts{margin-top:auto;padding-top:8px}.card{display:flex;flex-direction:column}.card .actions{margin-top:auto}.card .srcbox{margin-top:10px}.card .air{margin-bottom:12px}.stars{display:flex;align-items:center;gap:8px;margin:0 0 8px;text-decoration:none;color:var(--ink);font-size:13px;min-height:24px}.starbox{position:relative;display:inline-block;font-size:15px;letter-spacing:1px;line-height:1}.starbox .base{color:#d9d1bf}.starbox .fill{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#d79a1e}.snum{font-weight:700}.snum small{font-weight:400;color:var(--mut)}.ssrc{color:var(--mut);font-size:12px}.about{max-width:720px;line-height:1.55;font-size:15px}.about h2{font-size:28px;margin:6px 0 4px;color:var(--wine)}.about h3{font-size:19px;margin:20px 0 4px;color:var(--ev)}.about ul{padding-left:20px}.about li{margin:6px 0}.about a{color:var(--wine)}.ptools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:4px 0 14px}.ptools .btn{width:auto;padding:0 18px;flex:0 0 auto}.ptools .small{flex-basis:100%;margin:0}.printsheet{display:none}@media print{html,body,#root{background:#fff!important}body *{visibility:hidden!important}.printsheet,.printsheet *{visibility:visible!important}.printsheet{display:block!important;position:absolute;left:0;top:0;width:100%;color:#222;font-family:Georgia,serif}.ps-hd{background:#1d5a3a!important;color:#fff;padding:22px 28px 16px;border-bottom:6px solid #9b1c31;-webkit-print-color-adjust:exact;print-color-adjust:exact}.printsheet h1{font-size:32px;margin:4px 0;color:#fff}.printsheet .ps-hd p{margin:0;font:12px Helvetica,Arial,sans-serif;color:#eee8d6}.ps-brand{font:11px Helvetica,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#e9c46a}.printsheet section{padding:0 28px}.printsheet h2{font-size:18px;color:#9b1c31;margin:20px 0 4px;border-bottom:1.5px solid #cdbf93;padding-bottom:4px;break-after:avoid}.ps-row{display:grid;grid-template-columns:84px 1fr 180px;gap:12px;padding:7px 0;border-bottom:1px solid #e6e0d0;break-inside:avoid;font:12px Helvetica,Arial,sans-serif}.ps-row.nt2{grid-template-columns:1fr 180px}.ps-t{font-weight:700;color:#1d5a3a}.ps-row b{font:700 14px Georgia,serif;display:block}.ps-sm{color:#666;font-size:11px;margin-top:2px}.ps-ft{margin:24px 28px 0;padding-top:8px;border-top:1px solid #cdbf93;font:11px Helvetica,Arial,sans-serif;color:#666}@page{margin:12mm}}.contact{font-weight:700}.acctrow{display:flex;justify-content:flex-end;margin:10px 0 0}.acctrow .btn{width:auto;flex:0 0 auto;padding:0 16px;min-height:38px}.modalbg{position:fixed;top:0;right:0;bottom:0;left:0;background:#141e198c;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.modal{position:relative;background:#fffdf6;border:1px solid #e3d8b8;border-radius:16px;max-width:400px;width:100%;max-height:90vh;overflow:auto;padding:22px 20px;box-shadow:0 12px 40px #0000004d}.modal h3{font-family:Georgia,serif;color:#1d5a3a;margin:0 0 8px;font-size:22px}.mclose{position:absolute;right:10px;top:10px;font-size:22px;line-height:1}.modal input{display:block;width:100%;box-sizing:border-box;font:16px system-ui,sans-serif;padding:11px 12px;margin:8px 0;border:1px solid #cdbf93;border-radius:10px;background:#fff}.modal .btn{width:100%;margin:8px 0}.modal .link{display:block;margin:8px 0;background:none;border:0;color:#9b1c31;text-decoration:underline;font:inherit;cursor:pointer;padding:0}.modal .or{text-align:center;color:#777;font-size:13px;margin:6px 0}.modal .err{color:#9b1c31;font-weight:600}.modal .okmsg{color:#1d5a3a;font-weight:600}.modal .danger{color:#9b1c31}.modal .btn.danger{border-color:#9b1c31;background:#9b1c31;color:#fff}.modal .btn.danger:disabled{opacity:.45}.modal hr{border:0;border-top:1px solid #e3d8b8;margin:14px 0}.tznote{margin:6px 2px 0;text-align:center;font-size:12.5px;color:#7a6a45;font-style:italic}@media print{.tznote{display:none}}
