@font-face{font-family:Festive;src:url('assets/Festive.ttf') format('truetype');font-display:swap}
:root{color-scheme:light;--paper:#fff8e9;--ink:#000;--orange:#f3c764;--purple:#164f35;--green:#9c2325;--line:#cdbfaa;--card:#fffcf4}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1.5rem}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.55 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select{font:inherit;color:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:.2em}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3{font-family:Festive,Georgia,serif;font-weight:400;line-height:1.17;margin:0;color:#000}h1{font-size:clamp(2.6rem,5.4vw,4.7rem);letter-spacing:.015em}h2{font-size:clamp(1.9rem,3vw,2.6rem);letter-spacing:.015em}h3{font-size:1.5rem;letter-spacing:.015em;overflow-wrap:anywhere}.readable h1,.readable h2,.readable h3{font-family:system-ui,sans-serif;font-weight:750;letter-spacing:normal}.readable h1{font-size:clamp(2.1rem,4.5vw,3.7rem)}.readable h2{font-size:1.8rem}.readable h3{font-size:1.2rem;line-height:1.4}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--purple);outline-offset:4px}.shell{width:min(1280px,calc(100% - 4rem));margin:auto}.holiday-trim{height:clamp(3.5rem,8.3vw,8.5rem);overflow:hidden;max-width:1680px;margin:0 auto}.holiday-trim img{width:100%;height:auto}.page-header{display:flex;justify-content:space-between;gap:2rem;align-items:center;padding-top:.75rem;padding-bottom:1.9rem}.edition{font-size:.875rem;letter-spacing:.08em;margin:0 0 .4rem;font-weight:700;text-transform:uppercase}.intro{margin:.65rem 0 0;font-size:1rem}.header-actions{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:flex-end;max-width:360px}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.65rem 1rem;border:1.5px solid var(--ink);border-radius:6px;background:var(--card);text-decoration:none;font-weight:650;white-space:normal}.button.primary{background:var(--orange);box-shadow:3px 3px 0 var(--ink)}.button:hover{background:#ffe1b5}.button.primary:hover{background:#ffac58}.file-size{font-weight:400;font-size:.875rem}.browse{padding:1.25rem 1.5rem;background:#f1e3cb;border:1px solid var(--line);border-radius:8px}#filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.44fr);gap:1rem}#filters label{display:block;font-weight:650;font-size:.9375rem;margin-bottom:.35rem}input[type=search],select{width:100%;min-height:50px;border:1px solid #70675a;border-radius:5px;padding:.7rem .85rem;background:#fffefb;font-size:1rem}input[type=search]::placeholder{color:#000;opacity:1}.browse-bottom{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-top:.8rem}.browse-bottom p{margin:0;font-size:.9375rem}.readable-control{margin-left:auto;display:flex;align-items:center;gap:.5rem;min-height:32px;font-size:.9375rem;cursor:pointer}.readable-control input{width:20px;height:20px;accent-color:var(--purple);flex-shrink:0}.text-button{border:0;background:transparent;text-decoration:underline;text-underline-offset:.2em;padding:.4rem 0;min-height:40px}.checked{font-size:.875rem;margin:1rem 0 1.8rem;color:#000}.collection{margin-bottom:3.4rem}.collection-heading{display:flex;gap:1rem;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--green);padding-bottom:.6rem;margin-bottom:1.25rem}.group-count{font-size:.9375rem;white-space:nowrap}.movie-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.movie{background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 3px 0 #e7d9c1;scroll-margin:2rem}.art{position:relative;aspect-ratio:1.55;background:#eee1c8;border-bottom:1px solid var(--line);padding:.8rem 2.3rem}.art>img{height:100%;width:100%;object-fit:contain}.number{position:absolute;top:.6rem;left:.6rem;background:#fffaf0;border:1px solid #97816b;border-radius:4px;padding:.1rem .35rem;font-size:.75rem;font-weight:750;line-height:1.5;z-index:1}.movie-info{padding:1.15rem 1.2rem 1.25rem}.year{margin:.8rem 0 .25rem;font-size:1rem}.year>span{font-weight:700;margin-right:.3rem}.watch,.episode{white-space:pre-line;font-size:1rem;margin:.25rem 0}.episode{margin-top:.65rem;padding-top:.65rem;border-top:1px solid #dfd4c3}.source{display:inline-block;margin-top:.85rem;font-size:.875rem;min-height:30px}.source:hover{color:#000;background:#fff0bc}.snoopy-art{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:1rem;background:#f1e3cb;border-radius:8px;padding:1rem;margin:0 0 1.4rem}.snoopy-art img{height:170px;width:100%;object-fit:contain}.empty{text-align:center;max-width:640px;margin:4rem auto 6rem}.empty h2{margin-bottom:.8rem}footer{border-top:2px solid var(--green);padding-top:1.4rem;padding-bottom:2rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.9375rem}footer p{margin:0}.back-top{white-space:nowrap;padding:.6rem}.share-status:not(:empty){position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);z-index:4;padding:.8rem 1.2rem;background:#fffaf0;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--purple);border-radius:6px;max-width:calc(100% - 2rem);text-align:center}.skip{position:absolute;top:-10rem;left:1rem;background:white;color:black;padding:.8rem;z-index:5}.skip:focus{top:1rem}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.art{aspect-ratio:1.45}}
@media(max-width:1020px){.movie-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-header{align-items:flex-start;gap:1rem}.header-actions{max-width:190px}.button{width:100%}.art{aspect-ratio:1.6}}
@media(max-width:640px){.shell{width:calc(100% - 2rem)}.page-header{display:block;padding-bottom:1.25rem}.header-actions{max-width:none;justify-content:flex-start;margin-top:1.25rem;display:grid;grid-template-columns:1fr 1fr}.button{font-size:.9375rem;padding:.65rem .6rem}.edition{font-size:.75rem;letter-spacing:.04em}.intro{max-width:32rem}.browse{padding:1rem}#filters{grid-template-columns:1fr;gap:.8rem}.browse-bottom{gap:.4rem 1rem}.readable-control{margin-left:0}.browse-bottom #result-count{width:100%}.movie-grid{grid-template-columns:1fr}.art{aspect-ratio:1.65;padding:.8rem 2.5rem}.movie-info{padding:1rem 1.2rem 1.2rem}h3{font-size:1.6rem}.collection-heading{align-items:center}.group-count{font-size:.875rem}.snoopy-art{gap:.4rem;padding:.7rem}.snoopy-art img{height:95px}.checked{margin-bottom:1.5rem}footer{display:block}footer .back-top{display:inline-block;padding:.6rem 0}.collection{margin-bottom:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.browse,.header-actions,.share-status,.back-top,.skip{display:none!important}.shell{width:100%}.holiday-trim{height:70px}.movie-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.movie{break-inside:avoid;box-shadow:none}.collection{break-inside:auto}body{background:white;font-size:12pt}.source{display:none}h3{font-size:18pt}.art{height:160px;aspect-ratio:auto}.watch,.episode,.year{font-size:11pt}}

.save-offline{font-size:.875rem;min-height:32px;display:block;padding:.25rem 0}.header-actions .save-offline{width:100%;text-align:right}@media(max-width:640px){.header-actions .save-offline{grid-column:1/-1;text-align:left}}

h1,h2{overflow-wrap:anywhere}.collection-heading{flex-wrap:wrap}.button{min-width:0;overflow-wrap:anywhere}.file-size{white-space:nowrap}.art{display:flex;justify-content:center;align-items:center}.cover-crop{height:100%;max-width:100%;position:relative;overflow:hidden}.cover-crop img{position:absolute;max-width:none;object-fit:fill}@media(max-width:640px){.header-actions{display:flex;flex-wrap:wrap}.header-actions .button{flex:1 1 9rem;width:auto}.header-actions .save-offline{flex-basis:100%;min-width:0}.watch,.episode{overflow-wrap:anywhere}}

h1,h2,h3{letter-spacing:0;line-height:1.23}h3{font-size:1.42rem}.note{font-size:1rem;margin:.65rem 0 0}.sources{display:flex;flex-wrap:wrap;gap:.35rem .65rem;margin:.8rem 0 .25rem;font-size:.875rem}.sources a{min-height:30px}.image-kind{font-size:.8rem;margin:0}.art{aspect-ratio:1.4;padding:.8rem 2.2rem;background:#f4e9d4}.number{font-size:.875rem}.holiday-trim{height:clamp(3.5rem,9vw,8rem)}.watch{font-weight:550}.checked{max-width:100ch}.note,.episode,.watch{overflow-wrap:anywhere}@media(max-width:640px){h3{font-size:1.45rem}.art{aspect-ratio:1.5}.image-kind{font-size:.8rem}}
/* Seasonal artwork frames the full page while the catalog stays readable. */
body{--festive-red:#b7192b;--festive-green:#075437;--festive-gold:#edba42;--tint-one:#f4463e;--tint-two:#bfddb0;--tint-three:#ffe090;--holiday-line:#075437;background:#fff5de;color:#000}
body[data-holiday="thanksgiving"]{--festive-red:#8c3e24;--festive-green:#526039;--festive-gold:#d3a255;--tint-one:#c99063;--tint-two:#b9bf96;--tint-three:#dbb276;--holiday-line:#845033;background:#ead2ad}
.holiday-frame{position:fixed;inset:0;z-index:0;pointer-events:none;--rail:clamp(26px,6.5vw,100px);--source-scale:10}
body[data-holiday="thanksgiving"] .holiday-frame{--source-scale:4.7}
.holiday-frame>div{position:absolute;background-image:url('assets/border.webp');background-repeat:repeat-y;background-size:calc(var(--rail) * var(--source-scale)) auto}
.frame-left,.frame-right{top:0;bottom:0;width:var(--rail)}
.frame-left{left:0;background-position:left top}
.frame-right{right:0;background-position:right top}
.holiday-frame .frame-top,.holiday-frame .frame-bottom{left:0;right:0;height:100px;background-repeat:repeat-x;background-size:660px auto}
.holiday-frame .frame-top{top:0;background-position:center top}
.holiday-frame .frame-bottom{bottom:0;background-position:center bottom}
.holiday-trim{display:none}
.shell{position:relative;z-index:1;width:min(1280px,calc(100% - 2 * clamp(28px,7.5vw,112px)))}
.page-header{display:grid;grid-template-columns:minmax(0,1fr) clamp(160px,21vw,275px);align-items:center;gap:1.25rem;padding-top:90px;padding-bottom:1.3rem}
.header-copy{min-width:0}
.seasonal-characters{width:100%;height:auto;max-height:190px;object-fit:contain;pointer-events:none}
.edition{letter-spacing:.025em;text-transform:none;font-weight:600;line-height:1.6;font-size:.875rem;margin:0}
.page-header h1{text-shadow:2px 2px 0 var(--festive-gold);font-size:clamp(2.4rem,4.9vw,4.4rem)}
.browse{background:var(--tint-two);border:2px solid var(--festive-green);box-shadow:0 4px 0 #0000000a}
.collection-heading{background:linear-gradient(105deg,var(--tint-one),var(--tint-three));padding:1rem 1.25rem;border:1px solid var(--holiday-line);border-left:7px solid var(--festive-red);border-radius:8px;box-shadow:0 3px 0 #00000008}
.collection:nth-child(even) .collection-heading{background:linear-gradient(105deg,var(--tint-two),var(--tint-three));border-left-color:var(--festive-green)}
.movie{border-color:var(--holiday-line);box-shadow:0 4px 0 #0000000b;background:#fffef9}
.movie .art{background:var(--tint-one);border-bottom:2px solid var(--holiday-line)}
.movie:nth-child(3n+2) .art{background:var(--tint-two)}
.movie:nth-child(3n) .art{background:var(--tint-three)}
.number{background:var(--festive-gold);border-color:#000;font-size:.9375rem}
.button.primary{background:var(--festive-gold)}
.button:hover,.button.primary:hover{background:var(--tint-one)}
.selection-panel{background:var(--tint-three);border-color:var(--festive-red)}
.pick-label{background:#fffef6;border-color:var(--festive-green)}
.movie.picked{outline-color:var(--festive-green)}
.movie.picked .pick-label{background:var(--tint-two);border-color:var(--festive-green)}
.new-choice{display:inline-block;padding:.2rem .6rem;margin:0 0 .7rem;border:1px solid var(--festive-red);background:var(--tint-one);border-radius:5px;font:700 .875rem/1.4 system-ui,sans-serif}
#filters:has(#media-type){grid-template-columns:minmax(0,1fr) minmax(150px,.45fr) minmax(190px,.55fr)}
.movie-shortcuts{display:flex;gap:.65rem;flex-wrap:wrap;margin:1rem 0 0}
.movie-shortcuts .button{min-height:44px;background:var(--tint-three)}
.movie-shortcuts .button[aria-pressed="true"]{background:var(--tint-two);border:2px solid var(--festive-green)}
.finish-picks{background:var(--festive-gold)}
.checked{background:#fffaf0;padding:.55rem .75rem;border-radius:5px}
footer.shell{padding-bottom:150px;border-color:var(--festive-green)}
.footer-signoff{display:flex;align-items:center;gap:1.25rem}
.footer-signoff .seasonal-characters{width:145px;max-height:110px}
.footer-links{display:flex;align-items:center;gap:.65rem 1.3rem;flex-wrap:wrap}
.footer-links>a{min-height:44px;display:inline-flex;align-items:center}
body[data-holiday="christmas"] .page-header{border-bottom:3px solid var(--festive-red);margin-bottom:1.4rem}
body[data-holiday="christmas"] .browse{background:#c7e0b8;border:2px solid #075437;border-top:6px solid #075437}
body[data-holiday="christmas"] .collection-heading{background:#ffe090;border:2px solid #b7192b;border-left:9px solid #b7192b;box-shadow:0 4px 0 #b7192b16}
body[data-holiday="christmas"] .collection:nth-child(even) .collection-heading{background:#c7e0b8;border-color:#075437}
body[data-holiday="christmas"] .movie{border:2px solid #075437;box-shadow:0 5px 0 #07543720;background:#fffcf3}
body[data-holiday="christmas"] .movie .art{background:#b7192b;border-color:#075437}
body[data-holiday="christmas"] .movie:nth-child(3n+2) .art{background:#075437}
body[data-holiday="christmas"] .movie:nth-child(3n) .art{background:#dfb347}
body[data-holiday="christmas"] .number{background:#ffe090;box-shadow:0 2px 0 #00000018}
body[data-holiday="christmas"] input[type=search],body[data-holiday="christmas"] select{border:1.5px solid #075437;background:#fffdf6}
#collections{margin-top:1.5rem}
body,h1,h2,h3,p,a,a:visited,label,button,input,select,span,textarea,small,strong{color:#000}
@media(max-width:1020px){#filters:has(#media-type){grid-template-columns:1fr 1fr}#filters:has(#media-type)>div:first-child{grid-column:1/-1}.holiday-frame .frame-top,.holiday-frame .frame-bottom{height:80px;background-size:530px auto}.page-header{padding-top:85px}}
@media(max-width:640px){.holiday-frame{--rail:25px}.holiday-frame .frame-top,.holiday-frame .frame-bottom{height:65px;background-size:430px auto}.page-header{padding-top:72px}h1{font-size:2.6rem}.shell{width:calc(100% - 56px)}.collection-heading{padding:.8rem;border-left-width:5px}.collection-heading h2{font-size:1.8rem}.movie-shortcuts .button{width:auto;flex:1 1 110px}.art{padding:.8rem 1.5rem}#filters:has(#media-type){grid-template-columns:1fr}#filters:has(#media-type)>div:first-child{grid-column:auto}footer.shell{padding-bottom:105px}.header-actions{display:flex;gap:.6rem}.finish-picks{right:.75rem;bottom:.75rem}.checked{padding:.6rem;font-size:.875rem}}
@media(max-width:800px){.page-header{align-items:center;grid-template-columns:minmax(0,1fr) 150px;gap:.65rem}.page-header h1{font-size:clamp(2.4rem,5vw,3.4rem)}}
@media(max-width:540px){.page-header{grid-template-columns:minmax(0,1fr) 100px;gap:.4rem}.page-header h1{font-size:clamp(1.95rem,7.2vw,2.4rem)}.page-header .intro{font-size:.9375rem;margin-top:.5rem}.seasonal-characters{max-height:145px}.footer-signoff{align-items:center;gap:.8rem}.footer-signoff .seasonal-characters{width:110px}.edition{font-size:.8125rem}.collection-heading .group-count{font-size:.8125rem}}
@media print{.holiday-frame{display:none}.shell{width:100%}.page-header{padding-top:0}.movie-shortcuts,.selection-panel,.finish-picks,.pick-label{display:none!important}.collection-heading,.art{-webkit-print-color-adjust:exact;print-color-adjust:exact}footer.shell{padding-bottom:1rem}}

.watch-panel{background:#f4463e;border:3px solid #ae1728;border-radius:12px;padding:1.1rem 1.35rem;margin:0 0 1.25rem;box-shadow:0 5px 0 #ae172825;color:#000}
.watch-panel h2{font-family:Festive,Georgia,serif;font-size:clamp(2rem,4.8vw,3.4rem);color:#000;line-height:1.15;margin:0}
.watch-panel p{margin:.55rem 0 .85rem;font-size:1rem;max-width:80ch}
.watched-heading{display:flex;align-items:center;justify-content:space-between;gap:.6rem 1.5rem;flex-wrap:wrap}
#watched-count{font-size:1.125rem;font-weight:800;white-space:nowrap;background:#fff4b8;border:1px solid #000;border-radius:6px;padding:.35rem .6rem}
.watch-actions{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}
.watch-actions .button{background:#ead0a0;box-shadow:none;width:auto;flex:1 1 190px}
.watch-actions .button.primary{background:#dfbd76}
#watch-status:empty{display:none}
.watched-toggle{display:block;width:100%;background:#e3c38c;color:#000;border:2px solid #695637;border-radius:7px;padding:.65rem;min-height:44px;font-weight:750;margin:0 0 .9rem;cursor:pointer}
.watched-toggle[aria-pressed="true"]{background:#bccb9f;border-color:#36513b}
.has-watched .art{box-shadow:inset 0 0 0 3px #35703e}
body[data-holiday="christmas"] .watch-actions .button{background:#fff8e2;border:2px solid #000}
body[data-holiday="christmas"] .watch-actions .button.primary{background:#ffe090}
body[data-holiday="christmas"] .watch-actions .button:hover{background:#c7e0b8}
body[data-holiday="christmas"] #watched-count{background:#ffe090;border:2px solid #000}
body[data-holiday="christmas"] .watched-toggle{background:#ffe090;border-color:#a57812}
body[data-holiday="christmas"] .watched-toggle:hover{background:#f2c451}
body[data-holiday="christmas"] .watched-toggle[aria-pressed="true"]{background:#b6d99c;border-color:#075437;box-shadow:inset 5px 0 0 #075437}
body[data-holiday="thanksgiving"] .watch-panel{background:#ce8e55;border-color:#4e512e}
body[data-holiday="thanksgiving"] .watch-panel h2{color:#143c20}
body[data-holiday="thanksgiving"] .watch-panel #watched-count{background:#e6bb78;color:#143c20;border-color:#4e512e}
body[data-holiday="thanksgiving"] .watch-panel .button{color:#143c20;border-color:#4e512e}
#filters{grid-template-columns:minmax(0,1fr) minmax(190px,.4fr)}
#filters:has(#media-type){grid-template-columns:repeat(3,minmax(0,1fr))}
#filters:has(#media-type)>div:first-child{grid-column:1/-1}
.preview-notice{background:#fff3c2;border:1px solid #846629;border-radius:6px;padding:.45rem .65rem;font:700 .875rem/1.4 system-ui,sans-serif;margin:.6rem 0 0}
body[data-preview="true"] #share{display:none!important}
@media(max-width:800px){#filters,#filters:has(#media-type){grid-template-columns:1fr 1fr}#filters>div:first-child{grid-column:1/-1}.watch-actions .button{width:auto;flex:1 1 180px}.watch-panel{padding:1rem}}
@media(max-width:540px){#filters,#filters:has(#media-type){grid-template-columns:1fr}#filters>div:first-child{grid-column:auto}.watch-panel h2{font-size:2.15rem}.watch-panel{padding:.9rem}.watch-panel p{font-size:.9375rem}.watch-actions{gap:.5rem}.watch-actions .button{flex:1 1 100%;font-size:1rem}}
@media print{.watch-panel,.watched-toggle,.preview-notice{display:none!important}}
