@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{color-scheme:dark;--bg:#111711;--panel:#182019;--panel2:#20291f;--line:#344033;--line2:#283328;--ink:#f0f2e9;--mute:#abb4a5;--dim:#778678;--accent:#c7dc92;--accent2:#f3e1ae;--warning:#ebbd7e;--red:#ed9281;--radius:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 'DM Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:disabled{opacity:.45;cursor:not-allowed}svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}a{color:inherit;text-decoration:none}.hidden{display:none!important}.site-shell{max-width:1512px;padding:0 60px;margin:auto}.topbar{min-height:98px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line2)}.brand{display:flex;gap:12px;align-items:center}.brand-symbol{display:grid;place-items:center;width:46px;height:46px;background:var(--accent);color:#283626;border-radius:12px}.brand-symbol svg{width:28px}.brand strong{display:block;font-family:'Manrope',sans-serif;font-size:19px;line-height:1.3;letter-spacing:-.75px}.brand strong em{font-style:normal;color:var(--accent)}.brand small{display:block;color:#91a28b;letter-spacing:2.15px;font-size:8px;font-weight:800;margin-top:2px}.top-actions,.status-right{display:flex;align-items:center;gap:22px}.top-marker{font-size:10px;font-weight:800;letter-spacing:1.65px;color:#c7cfbd;display:flex;align-items:center;gap:10px}.top-marker i{height:7px;width:7px;background:#acd077;border-radius:100%;box-shadow:0 0 0 4px #acd0771e}.icon-btn{height:39px;width:39px;display:grid;place-items:center;color:var(--accent);background:#1b251c;border:1px solid var(--line);border-radius:11px}.icon-btn svg{width:19px}.hero{min-height:312px;position:relative;overflow:hidden;padding:49px 0 56px;display:flex;align-items:center;border-bottom:1px solid var(--line2)}.hero-copy{position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:2.15px;font-weight:800;color:var(--accent)}.dash{height:1px;width:22px;background:currentColor;display:inline-block;opacity:.8}.hero h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-1.35px;font-size:clamp(37px,4.05vw,62px);line-height:1.18;margin:16px 0 15px}.hero h1 i{color:var(--accent);font-weight:500}.hero p{max-width:560px;font-size:14px;color:#abb6a6;margin:0;line-height:1.75}.hero-notes{display:flex;gap:25px;margin-top:27px;color:#c4ccbc;font-size:11px;font-weight:600}.hero-notes span{display:flex;align-items:center;gap:7px}.hero-notes svg{width:15px;height:15px;color:var(--accent)}.hero-ornament{position:absolute;right:6%;top:0;height:100%;aspect-ratio:1.12;background:radial-gradient(ellipse at center,#acc47915 0%,#acc47903 52%,transparent 73%)}.halo{display:block;border-radius:50%;border:1px solid #a8c38b25;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.halo.h1{height:190px;width:190px;border-color:#b5d19850}.halo.h2{height:290px;width:290px}.halo.h3{height:400px;width:400px;border-color:#acc9810e}.halo-center{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);font-family:Georgia,serif;font-size:94px;font-weight:300;color:#a9c58e44}.status-strip{min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line2);font-size:11px;color:var(--mute)}.status-summary{display:flex;align-items:center;gap:10px}.status-pulse{background:var(--accent);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #a3c57e18}.status-pulse.warn{background:var(--warning)}.status-pulse.bad{background:var(--red)}.status-right{gap:20px}.link-button{border:0;color:var(--accent);font-weight:700;background:transparent;display:flex;gap:8px;align-items:center;padding:8px 0}.link-button svg{width:16px;height:16px}.link-button.working svg{animation:spin 1.7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.feed-section{padding:39px 0 90px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px}.eyebrow.muted{color:#8caa7b}.section-head h2,.drawer-head h2{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.7px;font-size:36px;font-weight:500;line-height:1.22;margin:11px 0 4px}.section-head p,.drawer-head p{margin:0;color:var(--mute);font-size:12px}.title-dot{color:var(--accent)}.collection-counter{display:flex;align-items:center;gap:13px;border-left:1px solid var(--line);padding-left:25px}.collection-counter b{font-family:'Playfair Display',serif;font-size:39px;font-weight:500;color:var(--accent)}.collection-counter span{font-size:9px;font-weight:800;color:#b6c1ae;line-height:1.55;letter-spacing:1px}.toolbar{display:flex;gap:16px;align-items:center;justify-content:space-between;position:relative;border:1px solid var(--line);border-radius:12px;padding:9px;background:#192219}.tabs{display:flex;gap:2px}.tab{color:#a5b2a3;background:transparent;border:0;border-radius:8px;font-size:12px;font-weight:700;padding:11px 15px;white-space:nowrap;display:flex;gap:5px;align-items:center}.tab.active{color:#162518;background:var(--accent)}.dot-small{width:5px;height:5px;border-radius:50%;background:#df7d70}.toolbar-actions{display:flex;align-items:center;gap:10px}.search-wrap{height:39px;display:flex;align-items:center;gap:9px;padding:0 14px;background:#121a14;border:1px solid var(--line);border-radius:8px;min-width:218px}.search-wrap svg{width:16px;height:16px;color:var(--mute)}.search-wrap input{outline:0;border:0;color:var(--ink);background:none;font-size:12px;min-width:0;width:100%}.search-wrap input::placeholder{color:#899789}.filter-button{height:39px;display:flex;align-items:center;gap:9px;padding:0 12px;color:var(--ink);border:1px solid #4d6043;background:#273422;border-radius:8px;font-size:12px;font-weight:700}.filter-button svg{width:17px;height:17px;color:var(--accent)}.filter-button .chevron{height:13px;width:13px}.filter-button b{background:#475a3c;color:#e5f1d6;border-radius:5px;padding:0 6px;font-size:10px}.filter-note{display:flex;justify-content:space-between;align-items:center;margin:19px 0 23px;color:#8f9b8e;font-size:11px}.check-line{display:flex;gap:8px;align-items:center;cursor:pointer}.check-line input{width:15px;height:15px;accent-color:#b7d483;cursor:pointer}.custom-check{display:none}.help{border:1px solid var(--line);border-radius:50%;font-size:9px;width:15px;height:15px;display:inline-flex;align-items:center;justify-content:center;color:#b4c1aa;cursor:help}.grid-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 22px}.video-card{min-width:0;border:1px solid #304032;background:#192219;border-radius:14px;overflow:hidden;transition:transform .18s,border-color .18s;display:flex;flex-direction:column}.video-card:hover{transform:translateY(-3px);border-color:#6b8461}.thumb-wrap{display:block;position:relative;aspect-ratio:16/9;background:#263126;overflow:hidden}.thumb-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .24s}.video-card:hover .thumb-wrap img{transform:scale(1.045)}.thumb-wrap::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0a130b40,transparent 48%);pointer-events:none}.card-body{padding:16px 17px 17px;display:flex;flex:1;flex-direction:column}.card-source{display:flex;gap:8px;align-items:center;min-width:0;max-width:100%;color:var(--accent);font-size:13px;font-weight:700;margin-bottom:11px;flex-wrap:wrap}.channel-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:100%;flex:0 1 auto}.card-title{font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;letter-spacing:-.18px;line-height:1.55;min-height:46px;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-title:hover{color:var(--accent)}.card-foot{display:flex;align-items:center;gap:6px;color:#9daa99;font-size:10px;margin-top:auto;flex-wrap:wrap}.content-kind{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;border:1px solid #5f7a4c;background:#243122;color:#bdda91;font-size:9px;font-weight:800;letter-spacing:.7px;line-height:1;white-space:nowrap}.content-kind.live{color:#f0887b;border-color:#7f4b44;background:#2c1d1b}.card-foot .bullet{color:#647463}.save-btn{border:1px solid #334336;background:#243126;color:#8fa68a;border-radius:7px;margin-left:auto;width:30px;height:30px;display:grid;place-items:center;flex-shrink:0}.save-btn:hover,.save-btn.saved{color:var(--accent);background:#30432b}.save-btn svg{height:15px;width:15px}.save-btn.saved svg{fill:#c7dc9240}.loading-card{height:335px;border-radius:14px;background:linear-gradient(100deg,#192219,#273329,#192219);background-size:220% 100%;animation:shimmer 1.4s infinite;border:1px solid var(--line2)}@keyframes shimmer{to{background-position-x:-220%}}.empty-state{grid-column:1/-1;border:1px dashed #475b45;border-radius:14px;padding:65px 20px;text-align:center;color:var(--mute)}.empty-mark{width:50px;height:50px;border-radius:50%;background:#263627;display:grid;place-items:center;color:var(--accent);font-size:25px;margin:0 auto 15px}.empty-state h3{font-family:'Playfair Display',serif;color:var(--ink);font-size:24px;margin:0 0 7px;font-weight:500}.empty-state p{margin:0 auto;max-width:430px;font-size:12px;line-height:1.75}.pagination{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:43px;flex-wrap:wrap}.page-btn{min-width:37px;height:37px;padding:0 10px;border:1px solid #384737;background:#1a251b;color:#c1cbb8;border-radius:8px;font-size:12px;font-weight:700}.page-btn.active{background:var(--accent);color:#183019;border-color:var(--accent)}.page-btn:hover:not(:disabled):not(.active){border-color:#6c865d}.page-dots{padding:0 6px;color:var(--dim)}footer{border-top:1px solid var(--line2);padding:29px 0 40px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#788777;font-size:11px}footer div:first-child{display:flex;flex-direction:column;gap:3px}footer strong{font-family:'Manrope',sans-serif;color:var(--accent);font-size:13px}.popover{position:absolute;top:calc(100% + 9px);right:8px;z-index:10;width:335px;background:#222e24;border:1px solid #4a6245;border-radius:12px;box-shadow:0 20px 80px #0008;padding:16px}.popover-head,.select-actions,.popover-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.popover-head strong{font-size:14px}.close-small{font-size:24px;line-height:1;background:transparent;border:0;color:var(--mute)}.popover-search{width:100%;margin:14px 0 12px;background:#121a14;color:var(--ink);border:1px solid #496047;border-radius:7px;padding:11px 12px;outline:0;font-size:12px}.select-actions{border-bottom:1px solid #40503d;padding-bottom:11px}.select-actions button{background:transparent;border:0;color:var(--accent);font-size:11px;font-weight:700;padding:3px 0}.channel-checks{max-height:268px;overflow:auto;padding:10px 1px}.channel-item{display:flex;align-items:center;gap:11px;cursor:pointer;padding:8px 5px;border-radius:7px;font-size:12px}.channel-item:hover{background:#2f4130}.channel-item input{accent-color:var(--accent);width:15px;height:15px}.channel-item span{flex:1}.popover-footer{border-top:1px solid #40503d;padding-top:13px;color:var(--mute);font-size:11px}.apply-button{border:0;background:var(--accent);color:#162716;border-radius:7px;padding:10px 14px;font-size:11px;font-weight:800}.shade{position:fixed;inset:0;background:#0009;z-index:20}.sidepanel{position:fixed;z-index:21;right:0;top:0;bottom:0;max-width:100%;width:440px;background:#1b241d;box-shadow:-20px 0 70px #0008;padding:27px;display:flex;flex-direction:column}.drawer-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding-bottom:22px}.drawer-head h2{font-size:27px}.drawer-tally{padding:20px 0;display:flex;gap:7px;flex-wrap:wrap;color:var(--mute);font-size:11px}.drawer-pill{border:1px solid #3e513d;border-radius:50px;padding:5px 10px}.drawer-list{overflow-y:auto;flex:1}.drawer-item{display:flex;gap:10px;align-items:flex-start;border-bottom:1px solid #2d3b2d;padding:12px 0}.drawer-status{width:8px;height:8px;flex:none;margin-top:6px;background:#758475;border-radius:50%}.drawer-status.ok{background:#b1d38a}.drawer-status.error{background:var(--red)}.drawer-item b{font-size:12px;display:block;font-weight:700}.drawer-item span{font-size:10px;color:#a2b29e}.drawer-item .error-copy{color:#dc998c}.drawer-bottom{border-top:1px solid var(--line);padding-top:17px;font-size:11px;color:var(--mute);line-height:1.65}
@media(max-width:1100px){.site-shell{padding:0 32px}.toolbar{flex-wrap:wrap}.toolbar-actions{flex:1;justify-content:flex-end}.grid-cards{gap:18px}.hero-ornament{right:-14%}}@media(max-width:760px){.site-shell{padding:0 18px}.topbar{min-height:79px}.brand strong{font-size:17px}.brand-symbol{width:40px;height:40px}.top-marker{display:none}.hero{padding:47px 0 39px;min-height:0}.hero h1{font-size:clamp(35px,8.2vw,48px)}.hero p{max-width:470px}.hero-ornament{opacity:.23;right:-45%;pointer-events:none}.hero-notes{gap:13px;flex-wrap:wrap}.desktop-break{display:none}.status-strip{align-items:flex-start;flex-direction:column;padding:15px 0;gap:8px}.status-right{width:100%;justify-content:space-between}.section-head{align-items:flex-end}.section-head h2{font-size:30px}.collection-counter{padding-left:12px}.collection-counter b{font-size:30px}.collection-counter span{font-size:8px}.toolbar{display:block;padding:8px}.tabs{overflow-x:auto;gap:0}.tab{padding:11px 13px}.toolbar-actions{margin-top:9px;display:flex}.search-wrap{flex:1;min-width:0}.popover{width:min(335px,calc(100vw - 36px));right:0}.grid-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.card-body{padding:12px}.card-title{font-size:13px;line-height:1.5}.card-source{font-size:12px}.filter-note{gap:14px}footer{flex-direction:column;align-items:flex-start}}@media(max-width:500px){.hero h1{font-size:36px}.hero-notes{font-size:10px}.section-head{margin-bottom:24px}.grid-cards{grid-template-columns:1fr}.video-card{max-width:100%}.card-title{min-height:0;font-size:15px}.card-body{padding:17px}.section-head h2{font-size:27px}.collection-counter{gap:7px}.collection-counter b{font-size:27px}.search-wrap{padding:0 9px}.filter-button{padding:0 9px;gap:6px}.filter-note{font-size:10px}.sidepanel{padding:20px}}

/* v1.4: quatro miniaturas por linha no desktop e fontes RSS separadas por tipo. */
@media (min-width:1024px){.grid-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 17px}.card-body{padding:12px 13px 14px}.card-title{font-size:13px;line-height:1.45;min-height:38px;margin-bottom:12px}.card-source{font-size:12px;margin-bottom:8px}}
@media (min-width:761px) and (max-width:1023px){.grid-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:501px) and (max-width:760px){.grid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:500px){.grid-cards{grid-template-columns:1fr}}
.source-note{color:#b4c5a1;font-size:11px}
.feed-source-line{display:block!important;line-height:1.6;margin-top:4px;color:#a2b29e}
.feed-source-line b{display:inline;font-weight:700;color:#c5d8bc}
.feed-source-line.error-copy{color:#dc998c}

/* v1.5 — etiquetas de tipo ficam abaixo da thumbnail, junto ao horário. */
@media (min-width:1024px) and (max-width:1270px){.card-foot{flex-wrap:wrap;row-gap:5px}.card-foot .save-btn{margin-left:auto}}

/* v1.6 — nomes dos canais sem avatares e levemente maiores. */
@media(max-width:500px){.card-source{font-size:13px}}


/* v1.7 — etiqueta VÍDEO/LIVE ao lado do nome do canal, em pill arredondada. */
@media (max-width:760px){.card-source{row-gap:6px}.content-kind{padding:3px 7px;font-size:8px}}

/* v2.0 — gerenciamento MySQL de canais e PIN administrativo. */
.popover{width:min(420px,calc(100vw - 30px));max-height:min(85vh,680px);overflow-y:auto}
.channel-item .channel-trash{border:0;background:transparent;color:#a0b299;margin-left:auto;display:grid;place-items:center;width:28px;height:28px;border-radius:6px;flex-shrink:0}
.channel-item .channel-trash:hover{background:#3a2c29;color:#f7aaa0}
.channel-item .channel-trash svg{width:14px;height:14px}
.channel-admin{border-top:1px solid #435440;margin-top:12px;padding-top:14px}
.channel-admin-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:9px}
.channel-admin-head strong{font-size:12px;color:#d4ebae}.channel-admin-head span{font-size:10px;color:#9ba995}
.channel-admin-add{display:flex;gap:6px;align-items:stretch}
.channel-admin-add input{min-width:0;flex:1;padding:9px;border:1px solid #4b614b;border-radius:7px;background:#121a14;color:#fff;font-size:11px}
.channel-admin-add button,.resolved-channel button{border:0;background:#c7dc92;border-radius:7px;padding:8px 10px;color:#1e2b1e;font-weight:800;font-size:10px;white-space:nowrap}
.resolved-channel{border:1px solid #4c6648;padding:10px;border-radius:9px;margin-top:9px;background:#1b2c1c;display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.resolved-channel strong{font-size:11px}.resolved-channel small{display:block;font-size:10px;color:#9eae98}
.admin-notice{font-size:11px;color:#d9b5a4;margin:7px 0 0;min-height:1em}
.pin-dialog{width:min(92vw,380px);border:1px solid #4a6146;border-radius:14px;background:#1f2b20;color:#f0f2e9;padding:24px;box-shadow:0 20px 80px #000a}
.pin-dialog::backdrop{background:#000b}
.pin-dialog h3{font:600 22px/1.2 'Playfair Display',serif;margin:0 0 10px}
.pin-dialog p{font-size:12px;color:#b3c3ad;line-height:1.6}
.pin-dialog label{display:block;color:#cad8c3;margin:15px 0 6px;font-size:12px}
.pin-dialog input{width:100%;background:#141e15;border:1px solid #566b4b;color:white;border-radius:7px;padding:10px 12px;font-size:17px;letter-spacing:4px}
.pin-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:19px}
.pin-actions button{padding:10px 15px;border-radius:7px;border:1px solid #51664d;background:#273528;color:#f0f2e9;font-weight:700;font-size:12px}
.pin-actions button[type=submit]{background:#c7dc92;border-color:#c7dc92;color:#1b291c}
@media(max-width:500px){.popover{right:0}.channel-admin-add{flex-wrap:wrap}.channel-admin-add button{flex:1}.channel-admin-add input{flex-basis:100%}}
