/* Public TV directory — Cinematic Editorial, responsive and no Bootstrap */
.public-directory{background:#08191e;color:#122d34}
.public-directory .visitor-shell{min-height:100vh}
.public-directory a{text-decoration:none}
.pd-hero{background:linear-gradient(115deg,#06191f,#153c41 78%,#15393b);color:#f4e6cd;padding:60px clamp(24px,5%,72px) 65px;position:relative}
.pd-hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:9px;background:#ecdec1;clip-path:polygon(0 40%,6% 75%,13% 35%,20% 65%,28% 35%,36% 70%,45% 35%,54% 69%,65% 30%,74% 65%,86% 36%,100% 60%,100% 100%,0 100%)}
.pd-eyebrow{font-size:10px;font-weight:900;letter-spacing:.19em;color:#c49b62;text-transform:uppercase}
.pd-hero h1{font:800 clamp(38px,6vw,72px)/1.09 Georgia,serif;letter-spacing:-.048em;margin:15px 0 17px;max-width:950px;color:#f6e8cd}
.pd-hero h1 em,.pd-heading h2 em{font-style:italic;color:#e9bd74}
.pd-hero p{max-width:700px;line-height:1.72;color:#d9e2df;margin:0 0 24px;font-size:15px}
.pd-hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.pd-hero-actions a,.pd-inline-button{display:inline-flex;align-items:center;min-height:42px;border:1px solid #b99a72;color:#fae8c8;padding:10px 16px;font-weight:800;font-size:12px;letter-spacing:.025em}
.pd-hero-actions a:hover,.pd-inline-button:hover{background:#dcb475;color:#0a252c;border-color:#dcb475}
.pd-hero-actions .pd-button-gold{background:#dcb475;color:#09272e;border-color:#dcb475}
.pd-paper{padding:50px clamp(20px,5%,72px) 64px;background:#ecdec1 url('paper-grain.png') repeat;background-blend-mode:multiply}
.pd-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;border-bottom:1px solid #b39b75;padding-bottom:24px;margin-bottom:24px;flex-wrap:wrap}
.pd-heading h2{font:800 clamp(29px,4vw,48px)/1.1 Georgia,serif;letter-spacing:-.04em;margin:10px 0 3px;color:#0c3036}
.pd-heading h2 em{color:#a33e31}
.pd-heading p{color:#4e5751;font-size:13px;line-height:1.5;margin:8px 0 0}
.pd-page-label{border:1px solid #aa9574;padding:13px;color:#14434b;font-size:11px;font-weight:900;letter-spacing:.12em}
.pd-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.pd-card{min-width:0;background:#f6ebd7;border-top:3px solid #153c44;display:flex;flex-direction:column;box-shadow:0 6px 16px #4d392212}
.pd-card-art{display:block;aspect-ratio:2/3;background:#18343b;overflow:hidden}
.pd-card-art img{width:100%;height:100%;object-fit:cover;transition:transform .2s}
.pd-card-art:hover img{transform:scale(1.035)}
.pd-no-art{display:grid;place-items:center;height:100%;min-height:190px;color:#e5bf82;font:900 23px Georgia,serif;letter-spacing:.1em}
.pd-card-text{display:flex;flex-direction:column;gap:10px;padding:15px;flex:1}
.pd-card-meta{font-size:9px;font-weight:900;letter-spacing:.11em;color:#966039;text-transform:uppercase}
.pd-card h3{margin:0;font:800 19px/1.2 Georgia,serif;color:#103239}
.pd-card h3 a{color:inherit}
.pd-card h3 a:hover{color:#ae3f31}
.pd-genres{font-size:11px;color:#5f6864}
.pd-card p{color:#495852;font-size:12px;line-height:1.6;margin:0 0 8px}
.pd-card-link{color:#9c362b;margin-top:auto;padding-top:9px;border-top:1px solid #cbbba1;font-size:11px;font-weight:900}
.pd-card-link:hover{color:#123b44}
.pd-pagination{display:flex;gap:7px;align-items:center;justify-content:center;flex-wrap:wrap;margin:38px 0 5px}
.pd-pagination a,.pd-pagination span{display:grid;place-items:center;min-width:41px;min-height:42px;padding:8px 11px;background:#faeed7;border:1px solid #a99674;color:#153841;font-weight:800;font-size:12px}
.pd-pagination a[aria-current=page]{background:#12404a;color:#f8eccf;border-color:#12404a}
.pd-pagination a:hover{background:#a7332d;color:#fff;border-color:#a7332d}
.pd-credit{font-size:11px;line-height:1.6;color:#56615b;margin-top:32px}
.pd-credit a{color:#983c30;font-weight:800}
.pd-note,.pd-body-note{line-height:1.6;color:#45554f}
.pd-show-hero{padding-top:38px}
.pd-breadcrumb{font-size:12px;color:#ddcaad;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:28px}
.pd-breadcrumb a{color:#e5bd79}
.pd-show-hero-layout{display:grid;grid-template-columns:minmax(165px,240px) minmax(0,1fr);gap:clamp(20px,4vw,60px);align-items:start}
.pd-show-cover{background:#264248;aspect-ratio:2/3;overflow:hidden;max-width:240px;box-shadow:12px 12px 0 #b08b573b}
.pd-show-cover img{width:100%;height:100%;object-fit:cover}
.pd-show-lead h1{font-size:clamp(31px,4.5vw,63px);margin-bottom:20px}
.pd-show-chips{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:14px}
.pd-show-chips span{padding:8px 11px;border:1px solid #71918a;color:#f5e4c9;font-size:11px}
.pd-show-genres{font-size:12px!important;color:#e7bc7e!important;letter-spacing:.08em;font-weight:800}
.pd-show-synopsis{max-width:760px;white-space:normal}
.pd-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:26px}
.pd-facts div{background:#fbf0dd;border-top:4px solid #193d42;padding:19px 15px;min-width:0}
.pd-facts span{display:block;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.1em;color:#905c45;margin-bottom:8px}
.pd-facts strong{color:#12333b;font-size:15px;overflow-wrap:anywhere}
.pd-inline-button{color:#f9e7cf;background:#16414a;border-color:#16414a;margin:12px 0}
.pd-season-list{display:grid;gap:26px;margin-top:25px}
.pd-season{background:#f8edda;border-top:5px solid #123f48;padding:20px}
.pd-season h3{font:800 23px Georgia,serif;color:#11383f;margin:0 0 17px;display:flex;align-items:baseline;justify-content:space-between;gap:20px}
.pd-season h3 span{font:800 11px sans-serif;color:#92664d}
.pd-episode-list{display:grid;gap:0}
.pd-episode{display:flex;align-items:start;justify-content:space-between;gap:22px;padding:13px 0;border-top:1px solid #c7b696}
.pd-episode h4{display:inline;font-size:15px;font-weight:800;color:#133940;margin:0}
.pd-episode p{margin:8px 0 0;font-size:12px;line-height:1.6;color:#505950}
.pd-episode-code{font-weight:900;color:#a33830;font-size:11px;margin-right:12px}
.pd-episode time{font-size:12px;color:#6b5543;white-space:nowrap}
@media(max-width:980px){.pd-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.pd-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.pd-hero{padding:40px 22px 46px}.pd-paper{padding:36px 18px 45px}.pd-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.pd-card-text{padding:12px;gap:7px}.pd-card h3{font-size:17px}.pd-show-hero-layout{grid-template-columns:minmax(0,1fr)}.pd-show-cover{width:165px}.pd-facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.pd-episode{flex-direction:column;gap:7px}.pd-show-hero{padding-top:24px}}
@media(max-width:350px){.pd-cards{grid-template-columns:1fr}.pd-card{display:grid;grid-template-columns:115px minmax(0,1fr)}.pd-card-art{height:100%}}
/* Editorial browse controls · public TMDB discovery */
.pd-filters{background:#f6ead4;border:1px solid #b9a380;border-top:4px solid #153c44;padding:22px 25px;margin:0 0 27px;box-shadow:0 7px 22px #4d392214}
.pd-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:15px}
.pd-filters label{display:flex;flex-direction:column;gap:8px;font-size:10px;font-weight:900;letter-spacing:.095em;color:#294b4c;text-transform:uppercase}
.pd-filters select{width:100%;min-width:0;min-height:42px;background:#fff8ed;color:#18343b;border:1px solid #ab9a7b;border-radius:0;padding:9px 34px 9px 12px;font:700 13px/1.3 system-ui,sans-serif;letter-spacing:normal;text-transform:none;cursor:pointer;appearance:auto}
.pd-filters select:focus-visible,.pd-filter-buttons button:focus-visible,.pd-pagination a:focus-visible{outline:3px solid #b84638;outline-offset:2px}
.pd-filter-buttons{display:flex;gap:9px;align-items:center;white-space:nowrap}
.pd-filter-buttons button,.pd-filter-buttons a,.pd-empty a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;font:800 11px/1.3 system-ui,sans-serif;border-radius:0;text-decoration:none;cursor:pointer}
.pd-filter-buttons button{color:#f9ead0;background:#153b43;border:1px solid #153b43}
.pd-filter-buttons button:hover{background:#a43b31;border-color:#a43b31}
.pd-filter-buttons a{color:#4b4740;border:1px solid #baa588;background:transparent}
.pd-filter-buttons a:hover{color:#a43b31;border-color:#a43b31}
.pd-advanced{border-top:1px solid #c8b797;margin-top:17px;padding-top:14px}
.pd-advanced summary{color:#24505a;font:800 12px/1.5 system-ui,sans-serif;cursor:pointer;list-style-position:inside;width:fit-content}
.pd-advanced summary:hover{color:#a23f33}
.pd-advanced-content{padding:18px 0 2px;max-width:220px}
.pd-empty{background:#f9edda;border-left:4px solid #aa4a39;padding:34px clamp(20px,5vw,50px);margin:16px 0 20px}
.pd-empty h3{font:700 26px Georgia,serif;color:#163e43;margin:0 0 8px}
.pd-empty p{font-size:13px;color:#52605d;line-height:1.6}
.pd-empty a{background:#153b43;color:#f9ecd7;border:1px solid #153b43;margin-top:8px}
.pd-info{font-size:12px;color:#52615e;line-height:1.6;margin:0 0 18px}
.pd-fallback{background:#f8ebd3;padding:20px;border-left:4px solid #ba9960}
@media(max-width:1150px){.pd-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pd-filter-buttons{grid-column:1/-1}}
@media(max-width:720px){.pd-filters{padding:17px}.pd-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.pd-filter-grid label:nth-child(3){grid-column:1/-1}.pd-filter-buttons{grid-column:1/-1;flex-wrap:wrap}.pd-filter-buttons button{flex:1}.pd-heading h2{font-size:clamp(26px,6vw,38px)}}
@media(max-width:420px){.pd-filter-grid{grid-template-columns:minmax(0,1fr)}.pd-filter-grid label:nth-child(3){grid-column:auto}.pd-filter-buttons{grid-column:auto}.pd-filters select{font-size:14px}.pd-filter-buttons button,.pd-filter-buttons a{padding:11px}}
/* EpisodeOrbit discovery · Stage 2: compact editorial spotlight and facets */
.pd-discovery-links{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:-12px 0 28px}
.pd-discovery-links a{display:inline-flex;align-items:center;justify-content:space-between;gap:17px;min-height:42px;padding:10px 16px;border:1px solid #927f60;background:#f7ead2;color:#21474b;font-size:11px;font-weight:900;letter-spacing:.045em;transition:background .15s,color .15s}
.pd-discovery-links a span{color:#ad4a39}
.pd-discovery-links a[aria-current=page],.pd-discovery-links a:hover{background:#173e46;border-color:#173e46;color:#f5e7ce}
.pd-discovery-links a[aria-current=page] span,.pd-discovery-links a:hover span{color:#e9bc78}
.pd-advanced-content{max-width:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 16px;align-items:end;padding:18px 0 10px}
.pd-filter-help{font-size:11px;color:#647069;line-height:1.6;margin:10px 0 0;max-width:830px}
@media(max-width:900px){.pd-advanced-content{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.pd-discovery-links{margin:-8px 0 22px;gap:7px}.pd-discovery-links a{flex:1 1 auto;gap:8px;padding:10px 11px}.pd-advanced-content{grid-template-columns:minmax(0,1fr)}}

/* Member controls are optional additions to the same PUBLIC catalogue. */
.pd-member-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;background:#163941;color:#f1e0bf;padding:14px 18px;margin:0 0 20px;font-size:12px;font-weight:800}
.pd-member-bar a{color:#eec58c;font-weight:900}
.pd-member-notice{margin:0 0 18px;border-left:4px solid #8a9a75;background:#f8eed7;padding:12px 15px;color:#17423f;font-weight:750;font-size:13px}
.pd-following{display:block;color:#174c44;background:#e1ebd5;padding:10px;font-size:11px;font-weight:900;margin-top:auto}
.pd-follow-form{display:flex;flex-direction:column;gap:9px;margin-top:auto;border-top:1px solid #c5af8f;padding-top:10px}
.pd-past-watched{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:700;color:#465652;line-height:1.3;cursor:pointer}
.pd-past-watched input,.pd-show-follow input{accent-color:#164e4b;width:15px;height:15px;flex:none}
.pd-follow-form button,.pd-show-follow button{background:#153d42;border:1px solid #153d42;color:#f9e7c8;padding:10px 12px;min-height:40px;text-align:center;cursor:pointer;font-size:11px;font-weight:900;border-radius:0}
.pd-follow-form button:hover,.pd-show-follow button:hover{background:#a53730;border-color:#a53730}
.pd-show-follow{display:flex;align-items:center;flex-wrap:wrap;gap:12px;max-width:390px}
.pd-show-follow label{display:flex;gap:7px;align-items:center;color:#f1ddbb;font-size:12px}
@media(max-width:620px){.pd-member-bar{padding:13px}.pd-past-watched{font-size:10px}.pd-follow-form button{font-size:11px}}

/* EpisodeOrbit watchlist facets — light Cinematic Editorial and mobile. */
.pd-match-note{background:#f7ead4;border-left:3px solid #b78d58;padding:13px 16px;margin:0 0 20px;color:#294b4b}
.pd-unfollow-form{display:flex;flex-direction:column;gap:8px;margin-top:9px;padding-top:8px;border-top:1px solid #c5af8f}
.pd-unfollow-form button{align-self:flex-start;background:transparent;color:#8d352d;border:1px solid #a35c4e;border-radius:0;padding:8px 12px;min-height:35px;font-size:11px;font-weight:800;cursor:pointer}
.pd-unfollow-form button:hover{background:#8d352d;color:#fff0d8}
.pd-unfollow-form button:focus-visible,.pd-unfollow-form input:focus-visible{outline:3px solid #aa4835;outline-offset:2px}
.pd-unfollow-form label{font-size:11px;line-height:1.45}
@media(max-width:720px){.pd-filter-grid:has(#filter-watchlist) label:nth-child(3){grid-column:auto}.pd-filter-grid:has(#filter-watchlist) label:nth-child(4){grid-column:1/-1}}
@media(max-width:420px){.pd-filter-grid:has(#filter-watchlist) label:nth-child(4){grid-column:auto}}
.pd-verify-note{color:#5e6358;font-size:10px;line-height:1.45}

/* Signed-in discovery has one top-level section, with two clear destinations.
   Guest Browse stays a standalone public SEO directory. */
.pd-discover-switch{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid #a48a66;padding-bottom:20px;margin:0 0 30px}
.pd-discover-switch a{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:10px 20px;background:#f9efd8;border:1px solid #826e58;color:#12383e;font:850 12px/1.4 system-ui,sans-serif;text-decoration:none}
.pd-discover-switch a.current{background:#123b42;color:#ffe8be;border-color:#123b42}
.pd-discover-switch a:not(.current):hover{background:#ebd9b2}
.pd-discover-switch a:focus-visible{outline:3px solid #b84638;outline-offset:3px}
html[data-theme="dark"] .pd-discover-switch{border-color:#5f7775}
html[data-theme="dark"] .pd-discover-switch a:not(.current){background:#243f47;color:#f9e3ba;border-color:#728580}
html[data-theme="dark"] .pd-discover-switch a.current{background:#c89a56;color:#152c34;border-color:#c89a56}
@media(max-width:480px){.pd-discover-switch a{flex:1 1 155px;padding:10px 12px}}

/* Compact, consistent member Discover/Browse views and intentional poster fallbacks. */
.pd-hero-member{padding-top:43px;padding-bottom:49px}
.pd-hero-member h1{font-size:clamp(38px,4.7vw,59px);max-width:660px}
.pd-hero-member p{max-width:570px;margin-bottom:0}
.pd-discover-switch{margin-top:-9px;margin-bottom:24px}
.pd-card-art{position:relative;isolation:isolate}
.pd-card-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;padding:15px;text-align:center;color:#f4e1bd;background:radial-gradient(ellipse at 48% 15%,#2c5860 0%,#12343d 58%,#091f27 100%)}
.pd-card-fallback strong{font:700 clamp(16px,1.45vw,22px)/1.22 Georgia,serif;letter-spacing:-.02em;overflow-wrap:anywhere;max-width:100%}
.pd-card-fallback small{font:800 8px/1.6 system-ui,sans-serif;letter-spacing:.11em;color:#c6ad83}
.pd-fallback-star{font-size:22px;color:#dcb475}
.pd-card-art img{position:relative;z-index:1;display:block}
.pd-card-art img[hidden]{display:none!important}
.pd-card-art-backdrop img{object-position:50% 50%}
.pd-follow-extra{min-width:0;margin:0}
.pd-follow-extra summary{cursor:pointer;list-style-position:inside;color:#3b5b58;font-size:11px;line-height:1.5;font-weight:800}
.pd-follow-extra[open]{padding-bottom:2px}
.pd-follow-extra button[type=submit]{width:100%;margin-top:8px;background:transparent;border:1px solid #846c4c;color:#24474b;padding:10px 6px;white-space:normal;line-height:1.4}
.pd-follow-extra button[type=submit]:hover{background:#e4d2b0;border-color:#825f35;color:#142e33}
.pd-follow-extra summary:focus-visible{outline:2px solid #aa4334;outline-offset:2px}
@media(max-width:620px){.pd-hero-member{padding:33px 22px 42px}.pd-hero-member h1{font-size:clamp(34px,8.4vw,44px)}.pd-card-fallback{padding:10px;gap:7px}.pd-card-fallback strong{font-size:clamp(15px,4vw,19px)}.pd-card-fallback small{font-size:7px}}

.pd-title-search{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 15px;border:1px solid #a08760;background:transparent;color:#23454b;font:800 12px/1.4 system-ui,sans-serif;cursor:pointer}
.pd-title-search:hover{background:#163e46;color:#f8ecd4;border-color:#163e46}
.pd-title-search:focus-visible{outline:3px solid #a53a2d;outline-offset:2px}
@media(max-width:480px){.pd-title-search{width:100%}}
