:root{color-scheme:dark;--bg:#0a1019;--panel:#121e2a;--panel2:#162431;--line:#263845;--soft:#1b3039;--text:#edf6f7;--muted:#a3b7c0;--faint:#768d9a;--mint:#69e2cf;--blue:#83aefd;--amber:#f3c778;--red:#ed8f90;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);min-width:320px}
button,input{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
svg{flex:none}
h1,h2,h3,p{margin-top:0}
.hide{display:none!important}
.muted{color:var(--muted)}
.micro{font-size:.79rem;color:var(--faint)}
.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.08em;font-size:.83rem;white-space:nowrap}
.brand-mark{width:39px;height:39px;background:#153c3b;border:1px solid #398680;border-radius:12px;color:var(--mint);display:grid;place-items:center;box-shadow:0 0 28px #46c4ae1a}
.brand-mark .icon{width:22px;height:22px}
.brand em{font-style:normal;font-weight:500;color:#91abae;letter-spacing:.03em}
.eyebrow{color:var(--mint);font-size:.74rem;font-weight:760;letter-spacing:.17em;text-transform:uppercase}
.demo-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid #436b62;background:#17352f;color:#b2efdb;border-radius:99px;padding:7px 11px;font-size:.76rem;font-weight:650;white-space:nowrap}
.demo-badge:before,.live-dot{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#77dfbd;box-shadow:0 0 12px #77dfbd88}
.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #37515c;border-radius:11px;background:#1a2a34;color:var(--text);padding:11px 15px;font-size:.88rem;font-weight:650;min-height:42px;transition:.2s}
.ui-btn:hover{border-color:#73a8a0;background:#223b42}
.ui-btn.primary{background:var(--mint);color:#092525;border-color:var(--mint);font-weight:750}
.ui-btn.primary:hover{background:#96f1df}
.ui-btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}
.ui-btn.ghost:hover{background:#1a2c36;color:var(--text)}
.ui-btn.small{font-size:.79rem;padding:7px 10px;min-height:34px}
.ui-btn:disabled{opacity:.55;cursor:not-allowed}
.panel{background:linear-gradient(150deg,#162430,#111d28);border:1px solid var(--line);border-radius:18px}
.login{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,540px)}
.login-art{background:radial-gradient(circle at 28% 52%,#194f4b 0%,#112f39 32%,#0c1928 75%);border-right:1px solid var(--line);padding:clamp(30px,5vw,75px);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}
.login-art:after{content:"";position:absolute;inset:0;opacity:.22;background-image:linear-gradient(#82adaa33 1px,transparent 1px),linear-gradient(90deg,#82adaa33 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(125deg,transparent,#000)}
.login-art>*{z-index:1}
.login-art-center{max-width:550px}
.abstract-bars{height:200px;display:flex;align-items:center;gap:13px}
.abstract-bars span{width:70px;height:68px;border:1px solid #75d9c883;background:linear-gradient(120deg,#71d9c743,transparent);border-radius:15px;box-shadow:0 20px 60px #5bcfbd17}
.abstract-bars span:nth-child(2){height:130px;width:84px}
.abstract-bars span:nth-child(3){height:98px;width:73px}
.abstract-bars i{width:90px;height:1px;background:linear-gradient(90deg,#82dccc,transparent)}
.login-art h2{font-size:clamp(2.3rem,4vw,4.1rem);line-height:1.06;letter-spacing:-.055em;margin:8px 0 22px}
.login-art p{color:#b3cdd0;line-height:1.65;max-width:420px}
.login-side{display:flex;flex-direction:column;justify-content:center;padding:55px clamp(32px,5vw,75px);max-width:620px;width:100%;margin:auto}
.login-side .brand{display:none;margin-bottom:65px}
.login-side h1{font-size:clamp(2rem,3vw,2.8rem);line-height:1.15;letter-spacing:-.04em;margin:12px 0}
.login-side .intro{color:var(--muted);margin-bottom:32px;line-height:1.5}
.field{margin-bottom:18px}
.field label{display:block;font-size:.87rem;font-weight:650;margin-bottom:9px}
.input-wrap{display:flex;align-items:center;background:#172532;border:1px solid #334857;border-radius:11px}
.input-wrap:focus-within{border-color:var(--mint);box-shadow:0 0 0 3px #69e2cf19}
.input-wrap input{height:50px;width:100%;padding:0 14px;background:transparent;border:0;outline:0;color:var(--text);font-size:.93rem}
.input-wrap input::placeholder{color:#8199a6}
.input-wrap .ui-btn{border:0}
.form-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.84rem;color:var(--muted);margin:3px 0 24px}
.form-row label{display:flex;gap:8px;align-items:center}
.form-row input{accent-color:var(--mint)}
.login-submit{width:100%;height:51px}
.separator{display:flex;align-items:center;gap:12px;color:var(--faint);font-size:.8rem;margin:24px 0 17px}
.separator:before,.separator:after{content:"";height:1px;background:var(--line);flex:1}
.providers{display:flex;gap:10px}
.providers .ui-btn{flex:1}
.google-g{font-size:1.2rem;font-weight:850;background:conic-gradient(#4285f4 0 100deg,#34a853 100deg 190deg,#fbbc05 190deg 270deg,#ea4335 270deg);background-clip:text;color:transparent}
.facebook-f{font-size:1.25rem;font-weight:850;color:#78a5ff}
.login-foot{border-top:1px solid var(--line);padding-top:21px;margin-top:32px;color:var(--muted);font-size:.83rem;line-height:1.55}
.login-foot button{border:0;background:none;color:var(--mint);padding:0;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.app{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100dvh}
.sidebar{position:sticky;top:0;height:100dvh;background:#0e1924;border-right:1px solid #233541;padding:26px 13px;display:flex;flex-direction:column;z-index:20}
.sidebar .brand{padding-left:9px}
.nav-section{margin:37px 11px 10px;text-transform:uppercase;letter-spacing:.14em;color:#77929b;font-weight:750;font-size:.72rem}
.nav{display:grid;gap:3px}
.nav button{width:100%;border:0;background:transparent;color:#acc0c7;display:flex;align-items:center;gap:12px;text-align:left;padding:11px 13px;border-radius:10px;font-size:.89rem;font-weight:620}
.nav button:hover,.nav button.active{background:#1b373a;color:#e5fff9}
.nav button.active .icon{color:var(--mint)}
.nav button .count{margin-left:auto;color:#9bdfd1;font-size:.75rem}
.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:20px 7px 0}
.person{display:flex;align-items:center;gap:10px}
.avatar{width:36px;height:36px;background:var(--mint);color:#0b292a;font-weight:800;border-radius:10px;display:grid;place-items:center}
.person strong{font-size:.83rem}
.person small{display:block;color:var(--muted);font-size:.77rem;margin-top:2px}
.role-select{width:100%;margin:13px 0 4px;background:#172a33;color:#d8e8e9;border:1px solid #34505a;border-radius:9px;padding:7px;font-size:.79rem}
.stage{min-width:0;background:radial-gradient(ellipse 55% 28% at 95% -10%,#1b474338,transparent),var(--bg)}
.topbar{height:77px;padding:0 clamp(22px,3.5vw,55px);border-bottom:1px solid #223440;display:flex;align-items:center;justify-content:space-between;gap:14px}
.breadcrumbs{font-size:.86rem;color:#a8bbc5}
.breadcrumbs strong{color:var(--text)}
.top-actions{display:flex;align-items:center;gap:14px}
.round-btn{position:relative;border:0;background:transparent;color:#adbec7;padding:7px;display:grid;place-items:center;border-radius:9px}
.round-btn:hover{background:#1a3038;color:var(--mint)}
.round-btn i{position:absolute;right:6px;top:5px;width:7px;height:7px;border-radius:50%;background:var(--amber)}
.mobile-toggle{display:none}
.page{max-width:1580px;margin:auto;padding:clamp(26px,3.7vw,53px) clamp(22px,3.5vw,55px) 85px}
.page-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
.page-head h1{font-size:clamp(1.9rem,3vw,2.6rem);letter-spacing:-.045em;line-height:1.12;margin:0 0 9px}
.page-head p{color:var(--muted);margin:0;line-height:1.5}
.page-head .stamp{color:#8da4ae;font-size:.8rem;white-space:nowrap}
.welcome{margin:14px 0 31px}
.welcome h1{font-size:clamp(2.4rem,4vw,4rem);letter-spacing:-.055em;line-height:1.1;margin:12px 0}
.welcome p{font-size:1rem;color:#aebfc6;line-height:1.6;max-width:580px}
.home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.home-card{min-height:214px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:24px 26px;border-radius:20px;background:linear-gradient(145deg,#172733,#101d29);border:1px solid #2d414b;color:var(--text);position:relative;overflow:hidden;transition:transform .2s,border-color .2s,background .2s}
.home-card:after{content:"";position:absolute;right:-60px;top:-70px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,#66e0c71b,transparent 70%);pointer-events:none}
.home-card:hover{transform:translateY(-3px);border-color:#5baca1;background:linear-gradient(145deg,#1a343c,#11222e)}
.home-card .card-icon{width:47px;height:47px;border-radius:13px;display:grid;place-items:center;color:var(--mint);border:1px solid #366c69;background:#183b3d}
.home-card:nth-child(3) .card-icon{color:#a2b9ff;background:#273552;border-color:#526586}
.home-card:nth-child(4) .card-icon{color:#e9c990;background:#3d3530;border-color:#74624d}
.home-card .card-icon .icon{width:25px;height:25px}
.home-card h2{font-size:1.35rem;letter-spacing:-.025em;margin:0 0 5px}
.home-card p{color:var(--muted);font-size:.88rem;margin:0}
.home-card .arr{position:absolute;right:26px;bottom:29px;color:var(--mint)}
.fineprint{font-size:.8rem;color:var(--faint);margin-top:25px}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:27px}
.stat{padding:19px 20px;text-align:left;border:1px solid var(--line);color:var(--text);min-width:0;cursor:pointer}
.stat:hover{border-color:#549b96}
.stat-label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#acc1c7;font-size:.84rem;font-weight:650}
.stat-label .icon{color:var(--mint)}
.stat-value{font-size:clamp(1.75rem,2.4vw,2.15rem);letter-spacing:-.04em;font-weight:750;margin:17px 0 4px;white-space:nowrap}
.stat-value small{font-size:.75rem;color:#9eafb9;font-weight:500;letter-spacing:0}
.stat-sub{font-size:.79rem;color:var(--muted)}
.progress{height:5px;background:#2a3d48;border-radius:10px;overflow:hidden;margin-top:15px}
.progress b{display:block;height:100%;background:linear-gradient(90deg,#58b9b4,#83ead5);border-radius:10px}
.section-label{font-size:1.2rem;letter-spacing:-.025em;margin:0 0 16px}
.server-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.server-list .panel{padding:19px 20px}
.server-list strong{font-size:.98rem}
.server-list .micro{display:block;margin:9px 0}
.server-list button{margin-top:6px}
.detail-tabs,.time-switch,.filter-list{display:flex;gap:7px;flex-wrap:wrap}
.detail-tabs{margin-bottom:23px}
.detail-tabs button,.time-switch button,.filter-list button{border:1px solid #2d4652;background:#14242f;color:#a8bdc6;border-radius:9px;padding:9px 13px;font-size:.82rem;font-weight:650}
.detail-tabs button:hover,.detail-tabs button.active,.time-switch button:hover,.time-switch button.active,.filter-list button.active,.filter-list button:hover{background:#21403e;color:#e3fff6;border-color:#4f9d91}
.detail-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(230px,.9fr);gap:17px}
.chart-panel{padding:25px;min-width:0}
.chart-top{display:flex;align-items:start;justify-content:space-between;gap:15px}
.chart-panel h2{font-size:1.25rem;margin:0 0 5px}
.chart-number{font-size:2.4rem;font-weight:750;letter-spacing:-.05em;margin:13px 0 2px}
.chart-number small{font-size:.9rem;color:var(--muted);font-weight:500}
.chart-holder{height:232px;position:relative;display:flex;align-items:center;margin-top:20px}
.chart-holder svg{width:100%;height:100%;overflow:visible}
.gridline{stroke:#334750;stroke-width:1;stroke-dasharray:4 7}
.line{fill:none;stroke:var(--mint);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.area{fill:url(#areaGrad)}
.chart-scale{display:flex;justify-content:space-between;color:var(--faint);font-size:.75rem}
.insight-panel{padding:23px}
.insight-panel h3{font-size:1.04rem;margin-bottom:17px}
.data-row{display:flex;justify-content:space-between;align-items:start;gap:14px;padding:13px 0;border-bottom:1px solid #283b47;font-size:.85rem}
.data-row:last-child{border:0}
.data-row span{color:#a6bbc5}
.data-row strong{text-align:right;font-weight:680}
.disk-grid{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.disk-grid .panel{padding:18px}
.disk-grid .disk-top{display:flex;justify-content:space-between;gap:8px;font-size:.83rem}
.disk-grid small{display:block;color:var(--muted);font-size:.76rem;margin:8px 0}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.service-card{padding:19px 21px;text-align:left;color:var(--text);min-height:155px;cursor:pointer}
.service-card:hover{border-color:#58a297}
.service-card-head{display:flex;align-items:center;gap:12px}
.service-logo{display:grid;place-items:center;width:40px;height:40px;background:#1c3b40;border:1px solid #39696c;border-radius:11px;color:var(--mint)}
.service-logo .icon{width:21px;height:21px}
.service-card-head strong{display:block;font-size:.97rem}
.service-card-head small{font-size:.76rem;color:var(--muted)}
.status{margin-left:auto;color:#a1e6d4;border:1px solid #386a5d;background:#1a3a32;padding:5px 9px;border-radius:99px;font-size:.75rem;white-space:nowrap}
.status.warning{color:#f6d69e;background:#443724;border-color:#75603e}
.service-meta{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #2a3c47;margin-top:18px;padding-top:13px;color:#a6bac3;font-size:.79rem}
.service-meta strong{color:#e1eff0;font-weight:650}
.service-desc{color:var(--muted);font-size:.85rem;line-height:1.55}
.media-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:27px}
.search{display:flex;align-items:center;gap:10px;background:#14232f;border:1px solid #324a55;border-radius:11px;padding:0 14px;max-width:440px;width:100%;color:#8aa4ae}
.search:focus-within{border-color:var(--mint)}
.search input{height:44px;min-width:0;flex:1;background:transparent;border:0;outline:0;color:var(--text);font-size:.9rem}
.search input::placeholder{color:#8098a3}
.media-section{margin-bottom:34px}
.media-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px;gap:12px}
.media-title h2{font-size:1.22rem;letter-spacing:-.025em;margin:0}
.media-title span{font-size:.78rem;color:var(--faint)}
.poster-track{display:flex;gap:13px;overflow-x:auto;scroll-snap-type:x proximity;padding:0 0 13px;scrollbar-color:#486971 transparent;scrollbar-width:thin}
.poster-card{width:151px;min-width:151px;text-align:left;border:0;background:none;color:var(--text);padding:0;scroll-snap-align:start}
.poster-card:hover .poster-art{border-color:var(--mint);transform:translateY(-2px)}
.poster-art{height:219px;position:relative;border:1px solid #40505a;border-radius:12px;overflow:hidden;background:radial-gradient(circle at 50% 30%,var(--poster-light),transparent 58%),linear-gradient(155deg,var(--poster-a),var(--poster-b));display:flex;flex-direction:column;justify-content:flex-end;padding:14px;transition:.2s}
.poster-art:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 50%,#07101791 100%);pointer-events:none}
.poster-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.poster-art:has(img) .poster-word,.poster-art:has(img) .poster-year{display:none}
.poster-art .poster-word{position:relative;text-transform:uppercase;font-weight:850;letter-spacing:.04em;font-size:1.17rem;line-height:1.08;text-wrap:balance;text-shadow:0 2px 10px #000b}
.poster-art .poster-year{position:relative;color:#d9e7e6;font-size:.72rem;margin-top:7px}
.poster-badge{position:absolute;z-index:2;top:10px;left:10px;background:#0b171bdc;border:1px solid #ffffff36;border-radius:6px;color:#eaf7f2;padding:5px 7px;font-size:.67rem;font-weight:800}
.poster-caption{display:block;font-size:.83rem;font-weight:680;margin-top:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.poster-meta{display:block;font-size:.75rem;color:#a6bac3;margin-top:4px}
.poster-meta b{color:var(--mint);font-weight:660}
.empty{padding:25px;color:var(--muted);border:1px dashed #46606a;border-radius:13px;font-size:.88rem}
.smart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.smart-card{padding:23px}
.smart-card h2{font-size:1.15rem;margin:0 0 5px}
.smart-card .smart-top{display:flex;justify-content:space-between;align-items:start;gap:12px}
.smart-value{font-size:1.8rem;font-weight:730;letter-spacing:-.04em;margin:22px 0 5px}
.smart-note{color:var(--muted);font-size:.85rem}
.tag-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:17px}
.tag{padding:6px 9px;border:1px solid #3a545e;border-radius:7px;color:#c1d3d5;font-size:.75rem;background:#1a2d37}
.notification-list{display:grid;gap:11px}
.notification{display:flex;gap:13px;padding:18px 20px;align-items:start}
.notification .service-logo{width:35px;height:35px;flex:none}
.notification h3{font-size:.94rem;margin:0 0 5px}
.notification p{font-size:.84rem;color:var(--muted);margin:0}
.notification time{margin-left:auto;color:var(--faint);font-size:.76rem;white-space:nowrap}
.banner{border-radius:13px;background:#18312f;border:1px solid #41766d;padding:14px 18px;color:#c9f4e7;font-size:.85rem;line-height:1.5;margin-bottom:25px}
.view-overlay{position:fixed;inset:0;z-index:35;background:#02080caf;display:flex;justify-content:flex-end}
.drawer{width:min(540px,100%);height:100%;overflow-y:auto;background:#111f2b;border-left:1px solid #42636b;padding:30px}
.drawer .close,.modal .close{float:right}
.drawer h2{font-size:1.8rem;letter-spacing:-.04em;margin:38px 0 5px}
.drawer .big-status{color:var(--mint);font-size:.86rem}
.drawer .service-desc{margin:18px 0 22px}
.drawer .data-row{padding:17px 0}
.modal-shell{position:fixed;inset:0;z-index:40;background:#02080cbb;display:grid;place-items:center;padding:20px}
.modal{width:min(750px,100%);max-height:min(90dvh,850px);overflow:auto;background:#14232f;border:1px solid #48646e;border-radius:22px;padding:27px}
.modal-inner{display:grid;grid-template-columns:190px minmax(0,1fr);gap:28px;align-items:start;margin-top:25px}
.modal .poster-art{height:285px}
.modal h2{font-size:1.85rem;line-height:1.14;letter-spacing:-.035em;margin:4px 0 10px}
.modal p{font-size:.9rem;line-height:1.6;color:#b5c6cd}
.modal .tag-row{margin:14px 0 21px}
.modal .data-row{font-size:.83rem}
.modal-footer{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}
.quality-menu{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.quality-menu button{background:#213940;border:1px solid #4c7778;border-radius:8px;padding:8px 12px;color:#d5eee9;font-size:.8rem}
.toast{position:fixed;top:84px;right:22px;z-index:60;max-width:min(410px,calc(100vw - 44px));border:1px solid #588578;background:#193730;color:#e3fff4;box-shadow:0 20px 60px #0008;padding:15px 45px 15px 17px;border-radius:12px;font-size:.86rem;line-height:1.45}
.toast button{position:absolute;top:8px;right:8px;border:0;background:none;color:#d8f7ec;padding:5px}
.scrim{display:none}

@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.server-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.disk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){.app{display:block}
.sidebar{position:fixed;left:0;transform:translateX(-102%);width:min(280px,86vw);transition:transform .25s;box-shadow:20px 0 60px #0008}
.sidebar.open{transform:translateX(0)}
.scrim.show{display:block;position:fixed;inset:0;background:#0009;z-index:19}
.mobile-toggle{display:grid}
.topbar{height:70px}
.breadcrumbs{margin-right:auto}
.top-actions{gap:7px}
.top-actions .avatar{display:none}
.detail-layout{grid-template-columns:1fr}
.login{grid-template-columns:1fr}
.login-art{display:none}
.login-side .brand{display:flex}
.login-side{min-height:100dvh}
.service-grid{grid-template-columns:1fr}
}
@media(max-width:560px){.page{padding:27px 17px 70px}
.topbar{padding:0 16px}
.top-actions .demo-badge{display:none}
.home-grid,.smart-grid{grid-template-columns:1fr}
.home-card{min-height:177px}
.stat-grid{gap:9px}
.stat{padding:15px}
.stat-value{font-size:1.5rem}
.server-list,.disk-grid{grid-template-columns:1fr}
.page-head{display:block}
.page-head .stamp{display:block;margin-top:12px}
.chart-panel{padding:18px}
.chart-top{display:block}
.time-switch{margin-top:17px}
.media-toolbar{display:block}
.filter-list{margin-top:12px}
.poster-card{width:136px;min-width:136px}
.poster-art{height:195px}
.modal-inner{grid-template-columns:1fr}
.modal-inner .poster-art{height:250px;width:175px}
.modal{padding:18px}
.notification{flex-wrap:wrap}
.notification time{margin-left:48px}
.providers{flex-direction:column}
}


/* Színsémák:a menta az eredeti arculat, a többi azonos elrendezésű változat. */
:root{--theme-sidebar:#0e1924;--theme-card:#172733;--theme-card-end:#101d29;--theme-halo:#66e0c71b;--theme-active:#1b373a;--theme-brand:#153c3b;--theme-accent:#69e2cf;--theme-accent-ink:#092525;--theme-login:#194f4b;--theme-login-end:#0c1928}

html[data-theme="ocean"]{--bg:#0b1325;--panel:#131f35;--panel2:#192b43;--line:#2a425b;--soft:#1d334c;--mint:#7dbdff;--muted:#afc1d5;--faint:#8098b5;--theme-sidebar:#0c1930;--theme-card:#192b44;--theme-card-end:#101e36;--theme-halo:#64aafa30;--theme-active:#213d60;--theme-brand:#17385e;--theme-accent:#7dbdff;--theme-accent-ink:#0c2340;--theme-login:#1c4772;--theme-login-end:#0b1830}

html[data-theme="violet"]{--bg:#151122;--panel:#221b33;--panel2:#2b2240;--line:#463857;--soft:#342945;--mint:#c5a7ff;--muted:#c6b9d3;--faint:#a394b9;--theme-sidebar:#171329;--theme-card:#2b2140;--theme-card-end:#1c172c;--theme-halo:#bd8eff30;--theme-active:#40305c;--theme-brand:#3c2c5e;--theme-accent:#c5a7ff;--theme-accent-ink:#231637;--theme-login:#523977;--theme-login-end:#171329}

html[data-theme="amber"]{--bg:#171614;--panel:#26231e;--panel2:#302b24;--line:#51483a;--soft:#393226;--mint:#f4ca82;--muted:#c7bfb1;--faint:#a99b86;--theme-sidebar:#1d1b18;--theme-card:#302b24;--theme-card-end:#211f1b;--theme-halo:#ffc16c27;--theme-active:#4a3a26;--theme-brand:#54402a;--theme-accent:#f4ca82;--theme-accent-ink:#302211;--theme-login:#69502e;--theme-login-end:#1a1916}

html[data-theme] .sidebar{background:var(--theme-sidebar);border-color:var(--line)}
html[data-theme] .panel,html[data-theme] .modal,html[data-theme] .drawer{background:linear-gradient(150deg,var(--panel2),var(--panel));border-color:var(--line)}
html[data-theme] .stage{background:radial-gradient(ellipse 55% 28% at 95% -10%,var(--theme-halo),transparent),var(--bg)}
html[data-theme] .home-card{background:linear-gradient(145deg,var(--theme-card),var(--theme-card-end));border-color:var(--line)}
html[data-theme] .home-card:hover{border-color:var(--mint);filter:brightness(1.12)}
html[data-theme] .home-card:after{background:radial-gradient(circle,var(--theme-halo),transparent 70%)}
html[data-theme] .home-card .card-icon,html[data-theme] .brand-mark{background:var(--theme-brand);border-color:var(--mint);color:var(--mint)}
html[data-theme] .nav button:hover,html[data-theme] .nav button.active{background:var(--theme-active);color:var(--text)}
html[data-theme] .login-art{background:radial-gradient(circle at 28% 52%,var(--theme-login),var(--theme-login-end) 75%)}
html[data-theme] .ui-btn.primary{color:var(--theme-accent-ink)}
html[data-theme] .ui-btn.primary:hover{background:var(--mint);filter:brightness(1.12)}
html[data-theme] .input-wrap,html[data-theme] .search,html[data-theme] .tag{background:var(--panel2);border-color:var(--line)}
html[data-theme] .detail-tabs button.active,html[data-theme] .time-switch button.active,html[data-theme] .filter-list button.active{background:var(--theme-active);border-color:var(--mint);color:var(--text)}
html[data-theme] .data-row{border-color:var(--line)}
html[data-theme] .service-logo,html[data-theme] .status,html[data-theme] .banner{background:var(--theme-active);border-color:var(--line);color:var(--text)}
html[data-theme] .stat:hover,html[data-theme] .service-card:hover{border-color:var(--mint)}

.theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.theme-card{text-align:left;color:var(--text);border:1px solid var(--line);border-radius:17px;padding:14px;background:var(--panel);transition:transform .2s,border-color .2s}
.theme-card:hover{transform:translateY(-2px);border-color:var(--mint)}
.theme-card.selected{border-color:var(--mint);box-shadow:0 0 0 1px var(--mint)}
.theme-preview{display:flex;height:145px;border-radius:11px;overflow:hidden;background:var(--preview-bg);border:1px solid var(--preview-line)}
.theme-preview-nav{width:25%;background:var(--preview-sidebar);border-right:1px solid var(--preview-line)}
.theme-preview-content{display:flex;gap:8px;align-items:center;justify-content:center;flex:1;padding:15px}
.theme-preview-content i{width:29%;height:65%;background:var(--preview-card);border:1px solid var(--preview-line);border-radius:8px;position:relative}
.theme-preview-content i:after{content:"";display:block;width:55%;height:7px;background:var(--preview-accent);border-radius:6px;margin:12px}
.theme-preview-mint{--preview-bg:#0a1019;--preview-sidebar:#0e1924;--preview-card:#172733;--preview-line:#263845;--preview-accent:#69e2cf}
.theme-preview-ocean{--preview-bg:#0b1325;--preview-sidebar:#0c1930;--preview-card:#192b44;--preview-line:#2a425b;--preview-accent:#7dbdff}
.theme-preview-violet{--preview-bg:#151122;--preview-sidebar:#171329;--preview-card:#2b2140;--preview-line:#463857;--preview-accent:#c5a7ff}
.theme-preview-amber{--preview-bg:#171614;--preview-sidebar:#1d1b18;--preview-card:#302b24;--preview-line:#51483a;--preview-accent:#f4ca82}
.theme-card-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:16px 2px 5px;font-size:1.03rem;font-weight:730}
.theme-card-title span{font-size:.76rem;color:var(--mint)}
.theme-card-desc{display:block;font-size:.82rem;color:var(--muted);margin:0 2px 5px;line-height:1.45}
.modal-subhead{font-size:.96rem;margin:24px 0 7px;letter-spacing:-.01em}
.media-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.media-facts div{padding:12px;background:var(--panel2);border:1px solid var(--line);border-radius:10px}
.media-facts span{display:block;color:var(--muted);font-size:.73rem;margin-bottom:6px}
.media-facts strong{font-size:.83rem;line-height:1.35}
.modal .media-note{font-size:.75rem;color:var(--faint);margin:14px 0 0}

@media(max-width:650px){.theme-grid{grid-template-columns:1fr}
.theme-preview{height:120px}
.media-facts{grid-template-columns:1fr 1fr}
}


/* Két lágy, egyszínű változat: a négy modul továbbra is kép nélkül jelenik meg. */
html[data-theme="rose"]{--bg:#1a1520;--panel:#281f2b;--panel2:#332735;--line:#594354;--soft:#3c2b3c;--mint:#f1b1cd;--muted:#d1bac9;--faint:#ac93a4;--theme-sidebar:#201923;--theme-card:#342735;--theme-card-end:#241d29;--theme-halo:#f5a5cb2c;--theme-active:#54364c;--theme-brand:#55334d;--theme-accent:#f1b1cd;--theme-accent-ink:#392232;--theme-login:#70405b;--theme-login-end:#211823}
html[data-theme="peach"]{--bg:#1c1719;--panel:#2a2224;--panel2:#35292b;--line:#584343;--soft:#423134;--mint:#ffc3ad;--muted:#d5c0b9;--faint:#ad958d;--theme-sidebar:#211b1c;--theme-card:#392b2d;--theme-card-end:#251d20;--theme-halo:#ffa98126;--theme-active:#553b3d;--theme-brand:#66413e;--theme-accent:#ffc3ad;--theme-accent-ink:#3d2928;--theme-login:#784c46;--theme-login-end:#21191b}
.theme-preview-rose{--preview-bg:#1a1520;--preview-sidebar:#201923;--preview-card:#342735;--preview-line:#594354;--preview-accent:#f1b1cd}
.theme-preview-peach{--preview-bg:#1c1719;--preview-sidebar:#211b1c;--preview-card:#392b2d;--preview-line:#584343;--preview-accent:#ffc3ad}

/* Képes témák: ugyanazok a modulok, címenként saját háttérrel és visszafogott mozgással. */
html[data-theme="cinema"]{--bg:#140f17;--panel:#251c25;--panel2:#30232c;--line:#513c46;--soft:#392733;--mint:#f3ba9e;--muted:#d0babb;--faint:#a78d96;--theme-sidebar:#1c151d;--theme-card:#3a2630;--theme-card-end:#20191f;--theme-halo:#e8765433;--theme-active:#55333e;--theme-brand:#57323c;--theme-accent:#f3ba9e;--theme-accent-ink:#38221f;--theme-login:#66333e;--theme-login-end:#181118;--tile-tint:rgba(42,18,25,.78)}
html[data-theme="neon"]{--bg:#09111f;--panel:#142339;--panel2:#1d3047;--line:#324b65;--soft:#233c57;--mint:#7aebf0;--muted:#b5c9d7;--faint:#879db3;--theme-sidebar:#0c1b30;--theme-card:#1a314d;--theme-card-end:#101c30;--theme-halo:#29bdec33;--theme-active:#204862;--theme-brand:#205069;--theme-accent:#7aebf0;--theme-accent-ink:#123038;--theme-login:#1b5670;--theme-login-end:#0c192b;--tile-tint:rgba(6,22,48,.79)}
html[data-theme="lounge"]{--bg:#141815;--panel:#242b25;--panel2:#2c372e;--line:#465648;--soft:#344337;--mint:#d7e2a5;--muted:#c1cbbd;--faint:#97a69a;--theme-sidebar:#1b251e;--theme-card:#2b3b30;--theme-card-end:#1b261f;--theme-halo:#9ec0802b;--theme-active:#3c5842;--theme-brand:#3b5e48;--theme-accent:#d7e2a5;--theme-accent-ink:#253327;--theme-login:#4b6b4b;--theme-login-end:#152018;--tile-tint:rgba(17,34,24,.79)}
.theme-preview-cinema{--preview-bg:#140f17;--preview-sidebar:#1c151d;--preview-card:#3a2630;--preview-line:#513c46;--preview-accent:#f3ba9e}
.theme-preview-neon{--preview-bg:#09111f;--preview-sidebar:#0c1b30;--preview-card:#1a314d;--preview-line:#324b65;--preview-accent:#7aebf0}
.theme-preview-lounge{--preview-bg:#141815;--preview-sidebar:#1b251e;--preview-card:#2b3b30;--preview-line:#465648;--preview-accent:#d7e2a5}

:root{--tile-media:url("assets/media.0c052f3ba489.webp");--tile-server:url("assets/server.b3a0d07ce78f.webp");--tile-services:url("assets/services.05f718ce09fd.webp");--tile-smart:url("assets/smart.fae2fe414e9f.webp")}
html[data-theme="cinema"] .home-card,html[data-theme="neon"] .home-card,html[data-theme="lounge"] .home-card{isolation:isolate;color:#fff;background:var(--theme-card);border-color:color-mix(in srgb,var(--mint) 40%,var(--line));transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
html[data-theme="cinema"] .home-card::before,html[data-theme="neon"] .home-card::before,html[data-theme="lounge"] .home-card::before{content:"";position:absolute;inset:0;z-index:0;background-image:var(--tile-image);background-size:cover;background-position:center;transition:transform .45s ease,filter .45s ease;filter:saturate(.83)}
html[data-theme="cinema"] .home-card::after,html[data-theme="neon"] .home-card::after,html[data-theme="lounge"] .home-card::after{content:"";position:absolute;inset:0;z-index:0;border-radius:0;background:linear-gradient(92deg,var(--tile-tint) 0%,rgba(7,12,19,.4) 72%),linear-gradient(0deg,rgba(4,8,12,.75),transparent 67%);pointer-events:none}
html[data-theme="cinema"] .home-card > *,html[data-theme="neon"] .home-card > *,html[data-theme="lounge"] .home-card > *{z-index:1}
html[data-theme="cinema"] .home-card p,html[data-theme="neon"] .home-card p,html[data-theme="lounge"] .home-card p{color:#f1eef0;text-shadow:0 1px 7px #000a}
html[data-theme="cinema"] .home-card h2,html[data-theme="neon"] .home-card h2,html[data-theme="lounge"] .home-card h2{text-shadow:0 2px 12px #000b}
html[data-theme="cinema"] .home-card .card-icon,html[data-theme="neon"] .home-card .card-icon,html[data-theme="lounge"] .home-card .card-icon{background:rgba(15,20,25,.65);color:var(--mint);border-color:color-mix(in srgb,var(--mint) 70%,transparent);backdrop-filter:blur(8px)}
.home-card[data-tile="media"]{--tile-image:var(--tile-media)}
.home-card[data-tile="server"]{--tile-image:var(--tile-server)}
.home-card[data-tile="services"]{--tile-image:var(--tile-services)}
.home-card[data-tile="smart"]{--tile-image:var(--tile-smart)}
html[data-theme="cinema"] .home-card:hover,html[data-theme="neon"] .home-card:hover,html[data-theme="lounge"] .home-card:hover{transform:translateY(-5px);box-shadow:0 18px 34px #0006;border-color:var(--mint);filter:none}
html[data-theme="cinema"] .home-card:is(:hover,:focus-visible)::before,html[data-theme="neon"] .home-card:is(:hover,:focus-visible)::before,html[data-theme="lounge"] .home-card:is(:hover,:focus-visible)::before{transform:scale(1.09);filter:saturate(1.1)}
html[data-theme="cinema"] .home-card:is(:hover,:focus-visible) .arr,html[data-theme="neon"] .home-card:is(:hover,:focus-visible) .arr,html[data-theme="lounge"] .home-card:is(:hover,:focus-visible) .arr{transform:translateX(5px)}
html[data-theme="cinema"] .home-card .arr,html[data-theme="neon"] .home-card .arr,html[data-theme="lounge"] .home-card .arr{transition:transform .25s ease}
html[data-theme="cinema"] .service-card,html[data-theme="neon"] .service-card,html[data-theme="lounge"] .service-card,html[data-theme="cinema"] .smart-card,html[data-theme="neon"] .smart-card,html[data-theme="lounge"] .smart-card,html[data-theme="cinema"] .stat,html[data-theme="neon"] .stat,html[data-theme="lounge"] .stat{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
html[data-theme="cinema"] .service-card:hover,html[data-theme="neon"] .service-card:hover,html[data-theme="lounge"] .service-card:hover,html[data-theme="cinema"] .stat:hover,html[data-theme="neon"] .stat:hover,html[data-theme="lounge"] .stat:hover{transform:translateY(-3px);box-shadow:0 12px 24px #0003;border-color:var(--mint)}
html[data-theme="cinema"] .poster-card:hover .poster-art,html[data-theme="neon"] .poster-card:hover .poster-art,html[data-theme="lounge"] .poster-card:hover .poster-art{transform:translateY(-5px) scale(1.015);box-shadow:0 12px 26px #0007}
html[data-theme="cinema"] .nav button.active,html[data-theme="neon"] .nav button.active,html[data-theme="lounge"] .nav button.active{box-shadow:inset 3px 0 var(--mint)}
.theme-section{margin:25px 0 37px}.theme-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.theme-section-heading h2{font-size:1.2rem;letter-spacing:-.02em;margin:0}.theme-section-heading span{font-size:.82rem;color:var(--muted)}.theme-preview-image .theme-preview-content i{background-size:cover;background-position:center}.theme-preview-image .theme-preview-content i:nth-child(1){background-image:linear-gradient(#09111f35,#09111f55),var(--tile-media)}.theme-preview-image .theme-preview-content i:nth-child(2){background-image:linear-gradient(#09111f35,#09111f55),var(--tile-server)}.theme-preview-image .theme-preview-content i:nth-child(3){background-image:linear-gradient(#09111f35,#09111f55),var(--tile-smart)}
@media(max-width:650px){.theme-section-heading{display:block}.theme-section-heading span{display:block;margin-top:4px}}
@media(prefers-reduced-motion:reduce){html[data-theme="cinema"] .home-card::before,html[data-theme="neon"] .home-card::before,html[data-theme="lounge"] .home-card::before{transition:none}html[data-theme="cinema"] .home-card:hover,html[data-theme="neon"] .home-card:hover,html[data-theme="lounge"] .home-card:hover,html[data-theme="cinema"] .service-card:hover,html[data-theme="neon"] .service-card:hover,html[data-theme="lounge"] .service-card:hover{transform:none}html[data-theme="cinema"] .home-card:is(:hover,:focus-visible)::before,html[data-theme="neon"] .home-card:is(:hover,:focus-visible)::before,html[data-theme="lounge"] .home-card:is(:hover,:focus-visible)::before{transform:none}}

.app .sidebar-bottom form{margin-top:10px}.app .sidebar-bottom form button{width:100%}.data-list{display:grid;gap:10px}.media-details{max-width:740px}.media-card-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:18px}.media-card-list .poster-card{width:100%;min-width:0}.media-card-list .poster-art{height:220px}.info-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.smart-control{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.error-note{color:var(--red);font-size:.88rem;margin:15px 0}.service-card{display:block}.service-card .status{display:inline-flex}.modal .modal-inner{margin-top:8px}.page .banner a{text-decoration:underline;color:var(--mint)}@media(max-width:560px){.media-card-list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Okosotthon – áttekinthető hőmérsékletkártyák */
.smart-status{
 display:inline-block;
 margin-top:7px;
 color:var(--muted);
 font-size:.9rem;
}
.smart-temperatures{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:18px;
 margin-top:25px;
}
.smart-temperatures>div{
 display:flex;
 flex-direction:column;
 gap:8px;
}
.smart-temperatures span,
.smart-action span{
 color:var(--muted);
 font-size:.85rem;
}
.smart-temperatures strong{
 font-size:1.85rem;
 letter-spacing:-.04em;
}
.smart-action{
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:12px;
 margin-top:24px;
 padding-top:15px;
 border-top:1px solid var(--border);
}
.smart-action strong{
 font-size:.9rem;
}
@media(max-width:480px){
 .smart-temperatures{gap:10px}
 .smart-temperatures strong{font-size:1.5rem}
}

/* Prowlarr találati csempék */
.discovery-cards {
  margin-top: 17px;
}

.discovery-card {
  position: relative;
}

.discovery-art {
  justify-content: flex-end;
}

.discovery-art .poster-word {
  font-size: .89rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 7;
  line-clamp: 7;
  overflow: hidden;
}

.discovery-seed {
  position: absolute;
  z-index: 2;
  top: 9px;
  right: 9px;
  padding: 6px 8px;
  border-radius: 7px;
  background: #102e2be8;
  color: #a9ffe0;
  font-size: .72rem;
  font-weight: 800;
}

.discovery-card .poster-meta {
  display: block;
  margin-top: 5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}


/* Magyar TMDB-katalógus */
.catalog-heading {
  margin: 36px 0 22px;
  padding-top: 23px;
  border-top: 1px solid #ffffff18;
}

.catalog-heading h2 {
  font-size: 1.45rem;
  margin: 0 0 7px;
}

.catalog-heading p {
  color: var(--muted);
  font-size: .84rem;
  margin: 0;
}

.catalog-track {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  gap: 15px;
}

.catalog-card {
  flex: 0 0 151px;
  width: 151px;
}

.catalog-art {
  height: 219px;
}

.catalog-art .poster-badge {
  background: #102e2be8;
  color: #a9ffe0;
}

.catalog-detail-art {
  min-width: 175px;
  height: 255px;
}

.catalog-releases {
  margin-top: 15px;
  max-height: 300px;
  overflow-y: auto;
}

.catalog-release {
  gap: 15px;
  align-items: flex-start;
}

.catalog-release span {
  overflow-wrap: anywhere;
  min-width: 0;
}

.catalog-release strong {
  white-space: nowrap;
  font-size: .8rem;
}

@media (max-width:560px) {
  .catalog-card {
    flex-basis: 136px;
    width: 136px;
  }

  .catalog-art {
    height: 195px;
  }

  .catalog-release {
    flex-direction: column;
    gap: 5px;
  }
}

/* Marnyur Server 2.0 – felső navigáció */
.app {
 display:block;
 min-height:100dvh;
}

.stage {
 width:100%;
 min-height:100dvh;
}

.topbar {
 position:sticky;
 top:0;
 z-index:45;
 height:auto;
 min-height:76px;
 padding:0 24px;
 background:var(--theme-sidebar,#0e1924);
 border-bottom:1px solid var(--line);
 backdrop-filter:blur(16px);
}

.topbar-inner {
 display:flex;
 align-items:center;
 gap:18px;
 min-height:76px;
 width:100%;
}

.top-brand {
 display:flex;
 align-items:center;
 gap:9px;
 flex-shrink:0;
 padding:0;
 border:0;
 background:transparent;
 color:var(--text);
 font-weight:850;
 letter-spacing:.03em;
 white-space:nowrap;
 cursor:pointer;
}

.top-brand em {
 color:var(--muted);
 font-size:.72rem;
 font-weight:550;
 font-style:normal;
}

.top-navigation {
 display:flex;
 flex-direction:row;
 align-items:center;
 gap:5px;
 min-width:0;
}

.top-navigation button,
.top-menu-button,
.profile-toggle {
 display:flex;
 align-items:center;
 justify-content:center;
 gap:8px;
 padding:11px 12px;
 border:0;
 border-radius:10px;
 background:transparent;
 color:var(--muted);
 font-size:.84rem;
 font-weight:700;
 white-space:nowrap;
 cursor:pointer;
}

.top-navigation button {
 width:auto;
}

.top-navigation button:hover,
.top-navigation button.active,
.top-menu-button:hover,
.profile-toggle:hover {
 background:var(--theme-active,#1b373a);
 color:var(--text);
}

.top-navigation button.active .icon {
 color:var(--mint);
}

.top-actions {
 margin-left:auto;
 gap:9px;
 flex-shrink:0;
}

.menu-holder {
 position:relative;
}

.top-dropdown {
 position:absolute;
 right:0;
 top:calc(100% + 10px);
 z-index:55;
 width:230px;
 padding:8px;
 border:1px solid var(--line);
 border-radius:13px;
 background:var(--theme-sidebar,#0e1924);
 box-shadow:0 18px 55px #0009;
}

.top-dropdown[hidden] {
 display:none !important;
}

.top-dropdown nav {
 display:grid;
 gap:3px;
}

.top-dropdown nav button,
.dropdown-logout {
 display:flex;
 align-items:center;
 gap:10px;
 width:100%;
 padding:11px;
 border:0;
 border-radius:8px;
 background:transparent;
 color:var(--text);
 text-align:left;
 font-size:.85rem;
 cursor:pointer;
}

.top-dropdown nav button:hover,
.top-dropdown nav button.active,
.dropdown-logout:hover {
 background:var(--theme-active,#1b373a);
}

.profile-toggle {
 padding:5px 8px;
}

.profile-info {
 padding:10px;
 border-bottom:1px solid var(--line);
 margin-bottom:5px;
 overflow-wrap:anywhere;
}

.profile-info strong,
.profile-info small {
 display:block;
}

.profile-info strong {
 font-size:.78rem;
}

.profile-info small {
 color:var(--muted);
 margin-top:5px;
}

.dropdown-logout {
 color:#ffb9b9;
}

.visually-hidden {
 position:absolute;
 width:1px;
 height:1px;
 padding:0;
 margin:-1px;
 overflow:hidden;
 clip:rect(0,0,0,0);
 white-space:nowrap;
 border:0;
}

/* Tablet és telefon */
@media(max-width:1100px) {
 .topbar {
  padding:0 12px;
 }

 .topbar-inner {
  flex-wrap:wrap;
  gap:0 12px;
  padding:9px 0;
 }

 .top-brand {
  min-height:42px;
 }

 .top-navigation {
  order:3;
  width:100%;
  overflow-x:auto;
  scrollbar-width:none;
  gap:3px;
  padding-top:5px;
 }

 .top-navigation::-webkit-scrollbar {
  display:none;
 }

 .top-navigation button {
  flex-shrink:0;
  min-height:43px;
 }

 .top-actions {
  margin-left:auto;
 }

 .top-actions .demo-badge {
  display:none;
 }
}

@media(max-width:560px) {
 .topbar {
  padding:0 10px;
 }

 .top-brand {
  font-size:.83rem;
 }

 .top-brand em {
  font-size:.65rem;
 }

 .top-navigation button {
  padding:10px 12px;
  font-size:.78rem;
 }

 .top-navigation button .icon {
  width:16px;
  height:16px;
 }

 .top-menu-button {
  padding:9px;
  font-size:.78rem;
 }

 .profile-toggle {
  padding:4px;
 }

 .profile-toggle .avatar {
  display:grid;
  width:32px;
  height:32px;
 }

 .top-dropdown {
  width:min(230px,calc(100vw - 20px));
 }

 .page {
  padding-top:23px;
 }
}


/* Marnyur mobile readability v2 */
.top-brand.active {
 color:var(--mint);
}

@media(max-width:780px) {
 .app .home-grid {
  grid-template-columns:minmax(0,1fr);
  gap:16px;
 }

 .app .home-card {
  min-height:225px;
  padding:23px;
 }

 .app .home-card h2 {
  font-size:1.5rem;
 }

 .app .home-card p {
  font-size:1rem;
  line-height:1.45;
 }

 .app .home-card .card-icon {
  width:52px;
  height:52px;
 }

 .app .home-card .card-icon .icon {
  width:27px;
  height:27px;
 }

 .app .page {
  font-size:16px;
 }

 .app .page-head h1 {
  font-size:2rem;
 }

 .app .page-head p,
 .app .welcome p {
  font-size:1rem;
 }

 .app .section-label,
 .app .media-title h2 {
  font-size:1.25rem;
 }

 .app .media-title {
  align-items:flex-start;
  flex-wrap:wrap;
 }

 .app .media-title span,
 .app .page-head .stamp {
  font-size:.88rem;
  line-height:1.4;
 }

 .app .poster-track {
  gap:14px;
 }

 .app .poster-track .poster-card {
  width:clamp(160px,43vw,205px);
  min-width:clamp(160px,43vw,205px);
 }

 .app .poster-track .poster-art {
  height:auto;
  aspect-ratio:2/3;
 }

 .app .poster-track .poster-caption {
  font-size:1rem;
  line-height:1.35;
  white-space:normal;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
 }

 .app .poster-track .poster-meta {
  font-size:.88rem;
  line-height:1.4;
 }

 .app .poster-track .poster-badge {
  font-size:.8rem;
  padding:6px 8px;
 }

 .app .top-navigation button {
  min-height:46px;
  font-size:.9rem;
 }

 .app .top-menu-button {
  min-height:44px;
  font-size:.9rem;
 }

 .app .top-dropdown nav button,
 .app .dropdown-logout {
  min-height:46px;
  font-size:1rem;
 }

 .app .stat-label,
 .app .stat-sub,
 .app .disk-grid small,
 .app .service-desc,
 .app .fineprint {
  font-size:.95rem;
  line-height:1.5;
 }

 .app .stat-value {
  font-size:1.8rem;
 }

 .app .detail-tabs button,
 .app .time-switch button {
  min-height:44px;
  font-size:.95rem;
 }
}

@media(max-width:560px) {
 .app .page {
  padding:25px 15px 75px;
 }

 .app .top-brand {
  font-size:.94rem;
 }

 .app .top-brand em {
  font-size:.8rem;
 }

 .app .topbar {
  padding:0 10px;
 }
}


/* Marnyur mobile navigation and modal v4 */

/* Az adatlap minden esetben a fejléc FÖLÉ kerüljön. */
#overlay-root .modal-shell,
#overlay-root .view-overlay {
 z-index:100;
}

/* A bezárógomb maradjon látható az adatlap görgetésekor. */
#overlay-root .modal .close {
 position:sticky;
 top:0;
 z-index:5;
 float:right;
 min-width:48px;
 min-height:48px;
 display:grid;
 place-items:center;
 background:#254451;
 color:#fff;
 border:1px solid #729da7;
 border-radius:12px;
 box-shadow:0 5px 18px #0009;
 cursor:pointer;
}

/* A seed szerinti sorrend marad, de a toplista poszterén
   nem szükséges a seedjelvény. */
#page .poster-card[data-catalog] .poster-badge {
 display:none;
}

@media screen and (max-width:780px) {

 /* Pontosan két soros mobilfejléc. */
 .app .topbar {
  padding:0 12px;
 }

 .app .topbar-inner {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto;
  align-items:center;
  gap:6px 8px;
  padding:9px 0 7px;
  min-height:0;
 }

 .app .top-brand {
  grid-column:1;
  grid-row:1;
  min-width:0;
  min-height:42px;
  gap:8px;
  justify-self:start;
  font-size:.91rem;
 }

 .app .top-brand .brand-mark {
  width:36px;
  height:36px;
  min-width:36px;
 }

 .app .top-brand > span:last-child {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:1px;
  min-width:0;
  white-space:nowrap;
 }

 .app .top-brand em {
  font-size:.69rem;
  letter-spacing:0;
 }

 .app .top-actions {
  grid-column:2;
  grid-row:1;
  display:flex;
  align-items:center;
  justify-self:end;
  margin:0;
  gap:4px;
 }

 .app .top-menu-button {
  min-height:42px;
  padding:8px;
  font-size:.88rem;
 }

 .app .profile-toggle {
  min-height:42px;
  padding:4px;
 }

 .app .profile-toggle .avatar {
  display:grid;
  width:34px;
  height:34px;
 }

 .app .top-navigation {
  grid-column:1 / -1;
  grid-row:2;
  order:initial;
  display:flex;
  flex-wrap:nowrap;
  width:100%;
  min-width:0;
  gap:3px;
  padding:0 0 2px;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
 }

 .app .top-navigation button {
  flex:0 0 auto;
  min-height:43px;
  padding:9px 11px;
  font-size:.87rem;
 }

 /* Mobilon az adatlap teljes képernyős saját nézet. */
 #overlay-root .modal-shell {
  position:fixed;
  inset:0;
  display:block;
  padding:0;
  overflow:hidden;
  background:#14232f;
 }

 #overlay-root .modal {
  box-sizing:border-box;
  display:block;
  width:100%;
  max-width:none;
  height:100dvh;
  max-height:none;
  margin:0;
  padding:16px 17px max(28px,env(safe-area-inset-bottom));
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  border:0;
  border-radius:0;
  -webkit-overflow-scrolling:touch;
 }

 #overlay-root .modal .close {
  top:0;
  min-width:52px;
  min-height:52px;
  margin:0 0 10px 12px;
  font-size:1rem;
 }

 #overlay-root .modal-inner {
  grid-template-columns:1fr;
  gap:18px;
  margin-top:8px;
 }

 #overlay-root .modal-inner .poster-art {
  width:160px;
  height:240px;
  max-width:100%;
 }

 #overlay-root .modal h2 {
  font-size:1.65rem;
  overflow-wrap:anywhere;
 }

 #overlay-root .modal p {
  font-size:1rem;
  line-height:1.6;
  overflow-wrap:anywhere;
 }

 #overlay-root .modal .data-row {
  font-size:.94rem;
 }

 #overlay-root .modal .tag {
  font-size:.85rem;
 }
}

/* Szerver hardvercsempék */
.hardware-spec {
 margin-top:12px;
 color:var(--muted);
 font-size:.82rem;
 line-height:1.45;
 min-height:2.4em;
}

.hardware-disk-grid {
 grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}

.hardware-disk {
 display:flex;
 flex-direction:column;
 align-items:stretch;
 gap:10px;
 min-width:0;
 text-align:left;
 color:var(--text);
 cursor:pointer;
}

.hardware-disk:hover,
.hardware-disk:focus-visible {
 border-color:var(--mint);
}

.hardware-disk-heading {
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:10px;
}

.hardware-disk-heading .icon {
 color:var(--mint);
 flex-shrink:0;
}

.hardware-model {
 font-size:.84rem;
 color:var(--muted);
 overflow-wrap:anywhere;
}

.hardware-disk-capacity {
 font-size:1.5rem;
 font-weight:750;
}

.hardware-disk-info,
.hardware-health {
 font-size:.82rem;
 color:var(--muted);
}

.hardware-health {
 margin-top:auto;
 color:var(--mint);
}

.hardware-drawer {
 overflow-y:auto;
 overscroll-behavior:contain;
}

.hardware-drawer .data-row strong {
 overflow-wrap:anywhere;
}

@media(max-width:780px) {
 .hardware-disk-grid {
  grid-template-columns:1fr;
 }
 .hardware-spec,
 .hardware-model,
 .hardware-disk-info,
 .hardware-health {
  font-size:.96rem;
 }
 .hardware-disk {
  min-height:190px;
 }
}

/* Szerver grafikon v2 */
.server-chart {
 margin-top:22px;
 min-width:0;
}

.chart-plot-layout {
 display:grid;
 grid-template-columns:48px minmax(0,1fr);
 column-gap:10px;
 align-items:stretch;
}

.chart-y-title {
 font-size:.76rem;
 color:var(--muted);
 font-weight:650;
 margin:0 0 11px 58px;
}

.chart-y-axis {
 height:230px;
 display:flex;
 flex-direction:column;
 justify-content:space-between;
 align-items:flex-end;
 color:var(--muted);
 font-size:.73rem;
 font-variant-numeric:tabular-nums;
}

.chart-y-label {
 line-height:1;
 transform:translateY(-50%);
}

.chart-y-label:last-child {
 transform:translateY(50%);
}

.chart-main {
 min-width:0;
}

.chart-holder.chart-holder-v2 {
 height:230px;
 margin:0;
 width:100%;
 position:relative;
 display:block;
}

.chart-holder-v2 svg {
 display:block;
 width:100%;
 height:100%;
 overflow:hidden;
}

.chart-holder-v2 .gridline {
 stroke:var(--muted);
 stroke-opacity:.19;
 stroke-width:1;
 stroke-dasharray:3 6;
 vector-effect:non-scaling-stroke;
}

.chart-holder-v2 .chart-grid-vertical {
 stroke-opacity:.10;
}

.chart-holder-v2 .chart-line-v2 {
 fill:none;
 stroke:var(--mint);
 stroke-width:1.5;
 stroke-linejoin:round;
 stroke-linecap:round;
 vector-effect:non-scaling-stroke;
}

.chart-x-axis {
 display:flex;
 justify-content:space-between;
 gap:2px;
 margin-top:12px;
 color:var(--muted);
 font-size:.7rem;
 font-variant-numeric:tabular-nums;
}

.chart-x-axis span {
 white-space:nowrap;
}

.chart-x-title {
 margin:13px 0 0 58px;
 text-align:center;
 font-size:.76rem;
 font-weight:650;
 color:var(--muted);
}

.chart-empty {
 position:absolute;
 inset:0;
 display:grid;
 place-items:center;
 padding:20px;
 color:var(--muted);
 font-size:.85rem;
 text-align:center;
}

.chart-top {
 flex-wrap:wrap;
}

.chart-top .time-switch {
 margin-top:0;
}

@media(max-width:780px) {
 .chart-panel {
  padding:16px;
 }
 .chart-plot-layout {
  grid-template-columns:38px minmax(0,1fr);
  column-gap:7px;
 }
 .chart-y-title,
 .chart-x-title {
  margin-left:45px;
 }
 .chart-x-axis {
  font-size:.56rem;
 }
 .chart-y-axis {
  font-size:.65rem;
 }
 .time-switch button {
  flex:1 1 auto;
 }
}

/* Marnyur Server – hardverillusztrációs csempék */

.hardware-stat,
.hardware-disk {
 position:relative;
 isolation:isolate;
 overflow:hidden;
}

.hardware-stat::before,
.hardware-disk::before {
 content:"";
 position:absolute;
 inset:0;
 z-index:-2;
 background-image:var(--hardware-art);
 background-repeat:no-repeat;
 background-position:right -24px center;
 background-size:auto 115%;
 opacity:.43;
 pointer-events:none;
 transition:transform .3s ease,opacity .3s ease;
}

.hardware-stat::after,
.hardware-disk::after {
 content:"";
 position:absolute;
 inset:0;
 z-index:-1;
 background:linear-gradient(
  95deg,
  var(--panel) 0%,
  var(--panel) 35%,
  color-mix(in srgb,var(--panel) 80%,transparent) 65%,
  transparent 100%
 );
 pointer-events:none;
}

.hardware-stat:hover::before,
.hardware-disk:hover::before,
.hardware-stat:focus-visible::before,
.hardware-disk:focus-visible::before {
 transform:scale(1.06);
 opacity:.65;
}

.hardware-stat > *,
.hardware-disk > * {
 position:relative;
 z-index:1;
}

.hardware-stat[data-art="cpu"] {
 --hardware-art:url("assets/hardware/cpu.08667e50334e.svg");
}

.hardware-stat[data-art="memory"] {
 --hardware-art:url("assets/hardware/ram.cf482219621e.svg");
}

.hardware-stat[data-art="storage"],
.hardware-disk[data-art="pool"],
.hardware-disk[data-art="hdd"] {
 --hardware-art:url("assets/hardware/hdd.dc02208d7bca.svg");
}

.hardware-stat[data-art="network_down"],
.hardware-stat[data-art="network_up"] {
 --hardware-art:url("assets/hardware/network.4ca0e23a27b5.svg");
}

.hardware-disk[data-art="ssd"] {
 --hardware-art:url("assets/hardware/ssd.bdc0321bdb11.svg");
}

.hardware-stat .stat-value,
.hardware-disk-capacity {
 text-shadow:0 2px 12px #0008;
}

.hardware-stat .hardware-spec,
.hardware-disk .hardware-model,
.hardware-disk .hardware-disk-info {
 max-width:75%;
 text-shadow:0 1px 8px #0009;
}

.hardware-disk .hardware-health {
 align-self:flex-start;
 background:color-mix(in srgb,var(--panel) 84%,transparent);
 padding:5px 9px;
 border-radius:7px;
}

.hardware-stat .progress,
.hardware-disk .progress {
 background:color-mix(in srgb,var(--panel) 78%,transparent);
}

@media(max-width:780px) {
 .hardware-stat::before,
 .hardware-disk::before {
  background-position:right -34px center;
  background-size:auto 100%;
  opacity:.35;
 }

 .hardware-stat .hardware-spec,
 .hardware-disk .hardware-model,
 .hardware-disk .hardware-disk-info {
  max-width:82%;
 }
}

@media(prefers-reduced-motion:reduce) {
 .hardware-stat::before,
 .hardware-disk::before {
  transition:none;
 }
}
