main{box-sizing:border-box;width:calc(100% - 200px)}.content{margin-left:0;margin-top:50px;width:100%}.info-row{align-items:center;display:flex;padding:5px}.info-row:nth-last-of-type(2n){background:#ddd}.info-label{width:100px}.info-value{width:calc(100% - 100px);word-break:break-all}.table-container{overflow-x:auto;width:100%}.table-container table{table-layout:fixed;width:100%}.table-container td,.table-container th{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hoverable-cell{cursor:pointer;position:relative}.hoverable-cell:after{background-color:#333;border-radius:3px;color:#fff;content:attr(data-hover);font-size:12px;left:50%;opacity:0;padding:5px;pointer-events:none;position:absolute;top:100%;transform:translateX(-50%);transition:opacity .3s;white-space:nowrap;z-index:10}.hoverable-cell:hover:after{opacity:1}.masonry-grid{display:flex;margin-left:-10px;width:auto}.masonry-column{background-clip:padding-box;padding-left:10px}.markdown-container{font-size:16px;line-height:1.6;margin:auto;max-width:900px;padding:20px}.toc-container{background:#f8f9fa;border-radius:8px;font-size:14px;margin-bottom:20px;padding:15px}.markdown-container img{border-radius:8px;display:block;margin:10px auto;max-width:600px;width:100%}@media (min-width:768px){.image-row{display:flex;gap:10px;justify-content:center}.image-row img{width:45%}}@media (max-width:767px){.markdown-container{font-size:14px;padding:10px}.image-row img{width:100%}}:root{--app-bg-soft:#eef4fb;--app-card-border:#d8e3f2;--app-card-shadow:0 18px 34px #0f172a14;--app-text-main:#0f2943;--app-text-soft:#3b546c}.content{background:radial-gradient(circle at 0 0,#2563eb1f,#0000 40%),radial-gradient(circle at 100% 0,#0ea5e91a,#0000 36%),radial-gradient(circle at 50% 100%,#0ea5e914,#0000 45%),#eef4fb;background:radial-gradient(circle at 0 0,#2563eb1f,#0000 40%),radial-gradient(circle at 100% 0,#0ea5e91a,#0000 36%),radial-gradient(circle at 50% 100%,#0ea5e914,#0000 45%),var(--app-bg-soft);border-radius:14px;font-family:Manrope,Avenir Next,Segoe UI,sans-serif;min-height:calc(100vh - 92px);padding:14px 10px 24px}.content>*{animation:appFadeIn .28s ease;background:linear-gradient(180deg,#fff,#fcfdff);border:1px solid #d8e3f2;border:1px solid var(--app-card-border);border-radius:18px;box-shadow:0 18px 34px #0f172a14;box-shadow:var(--app-card-shadow);padding:14px;position:relative}.content>:before{background:linear-gradient(90deg,#1d4ed8,#0ea5e9 42%,#14b8a6);border-radius:18px 18px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.content>.pmi-devices-page{background:#0000;border:0;border-radius:0;box-shadow:none;padding:0}.content>.pmi-devices-page:before{display:none}.app--public{background:radial-gradient(circle at top left,#1d4ed82e,#0000 26%),radial-gradient(circle at top right,#14b8a629,#0000 28%),linear-gradient(180deg,#f4f8fc,#eaf1f8)}.app--public,.auth-page,.landing-page,.public-page{min-height:100vh}.landing-page{color:#0f2943;display:flex;flex-direction:column;gap:clamp(14px,2vh,22px);justify-content:center;padding:clamp(20px,3vh,36px) clamp(18px,3.2vw,48px)}.landing-page__hero{grid-gap:clamp(16px,2vw,24px);align-items:stretch;display:grid;gap:clamp(16px,2vw,24px);grid-template-columns:minmax(0,1.35fr) minmax(280px,.95fr)}.landing-page__brand,.landing-page__copy{border:1px solid #b9cae0e6;border-radius:28px;box-shadow:0 26px 48px #0f172a1a;overflow:hidden;position:relative}.landing-page__brand{background:radial-gradient(circle at top left,#60a5fa47,#0000 30%),linear-gradient(135deg,#0f3f78,#1454a3 46%,#0e79c8);display:flex;flex-direction:column;justify-content:space-between;min-height:clamp(240px,46vh,320px);padding:clamp(20px,2.5vw,28px)}.landing-page__brand:after{background:#ffffff14;border-radius:999px;content:"";filter:blur(2px);height:180px;inset:auto -40px -48px auto;position:absolute;width:180px}.landing-page__logo{filter:drop-shadow(0 8px 18px rgba(0,0,0,.22));height:auto;width:min(240px,54%)}.landing-page__eyebrow{align-self:flex-start;background:#ffffff24;border:1px solid #fff3;border-radius:999px;color:#eff8ff;display:inline-flex;font-size:.76rem;font-weight:800;letter-spacing:.08em;padding:10px 14px;text-transform:uppercase}.landing-page__copy{background:linear-gradient(180deg,#fffffff2,#fff);padding:clamp(20px,2.6vw,32px)}.landing-page__kicker{color:#0e79c8;font-size:.78rem;font-weight:800;letter-spacing:.12em;margin:0 0 10px;text-transform:uppercase}.landing-page__copy h1{font-size:clamp(2.3rem,4vw,4rem);letter-spacing:-.05em;line-height:.92;margin:0;max-width:8.8ch}.landing-page__lede{color:#45627c;font-size:clamp(.95rem,1.05vw,1.04rem);line-height:1.58;margin:14px 0 0;max-width:54ch}.landing-page__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.landing-page__action{align-items:center;border-radius:999px;display:inline-flex;font-weight:800;justify-content:center;min-height:46px;min-width:168px;padding:0 20px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.landing-page__action:hover{transform:translateY(-1px)}.landing-page__action--primary{background:linear-gradient(135deg,#1454a3,#0e79c8);box-shadow:0 16px 28px #0e79c838;color:#fff}.landing-page__action--secondary{background:#f3f8fd;border:1px solid #c8d9ee;color:#0f2943}.landing-page__grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.landing-page__card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc7;border:1px solid #c3d2e5eb;border-radius:24px;box-shadow:0 18px 34px #0f172a14;padding:18px 18px 20px}.landing-page__card span{color:#0e79c8;display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.landing-page__card h2{color:#0f2943;font-size:1.04rem;line-height:1.25;margin:0 0 10px}.landing-page__card p{color:#45627c;font-size:.92rem;line-height:1.5;margin:0}.auth-page{align-items:center;background:radial-gradient(circle at top left,#1d4ed829,#0000 28%),radial-gradient(circle at bottom right,#14b8a629,#0000 24%),linear-gradient(180deg,#f4f8fc,#e9f1f9);display:flex;justify-content:center;padding:32px 18px}@media (max-width:960px){.landing-page__grid,.landing-page__hero{grid-template-columns:1fr}.landing-page__copy h1{max-width:none}}@media (min-width:961px) and (max-height:980px){.landing-page{justify-content:flex-start;padding-bottom:18px;padding-top:18px}.landing-page__brand{min-height:clamp(220px,40vh,280px)}.landing-page__copy{padding:18px 22px}.landing-page__copy h1{font-size:clamp(2rem,3.4vw,3.25rem);max-width:9.6ch}.landing-page__lede{font-size:.92rem;margin-top:10px}.landing-page__actions{margin-top:16px}.landing-page__grid{gap:12px}.landing-page__card{padding:14px 16px 16px}.landing-page__card h2{font-size:.95rem}.landing-page__card p{font-size:.85rem}}@media (max-width:640px){.landing-page{padding:28px 16px 36px}.landing-page__brand,.landing-page__card,.landing-page__copy{border-radius:22px}.landing-page__brand{min-height:240px}.landing-page__action{width:100%}}.content h1,.content h2,.content h3{color:#0f2943;color:var(--app-text-main);letter-spacing:.01em}.content .MuiPaper-root{border:1px solid #dbe6f4;border-radius:12px;box-shadow:none}.content .MuiButton-root{border-radius:10px;font-weight:700;text-transform:none}.content .MuiButton-contained.MuiButton-colorPrimary,.content .MuiButton-containedPrimary{background:linear-gradient(90deg,#1d4ed8,#2563eb)}.content .MuiButton-contained.MuiButton-colorPrimary:hover,.content .MuiButton-containedPrimary:hover{background:linear-gradient(90deg,#1e40af,#1d4ed8)}.content .MuiOutlinedInput-root{background:#fff;border-radius:10px}.content .MuiTableContainer-root,.content table{border-radius:12px}.content .MuiTableHead-root .MuiTableCell-root{background:#f7fbff;color:#3b546c;color:var(--app-text-soft);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.content .MuiTableBody-root .MuiTableCell-root{font-size:.86rem}@keyframes appFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.platform-header-appbar{background:radial-gradient(circle at 0 0,#7dd3fc38,#0000 32%),radial-gradient(circle at 100% 0,#2dd4bf33,#0000 36%),linear-gradient(95deg,#0f3f78,#1454a3 44%,#0e79c8)!important;border-bottom:1px solid #ffffff1f;box-shadow:0 12px 26px #0206173d!important}.platform-header{align-items:center;display:flex;gap:12px;justify-content:space-between;min-height:64px!important;padding:8px 14px!important}.platform-header__left{align-items:center;display:flex;gap:10px;min-width:0}.platform-header__menu-trigger{background:#ffffff1f!important;border:1px solid #ffffff29;color:#ffffffeb!important}.platform-header__menu-trigger:hover{background:#fff3!important}.header-logo{filter:drop-shadow(0 3px 8px rgba(0,0,0,.18));flex-shrink:0;height:38px;width:auto}.platform-header__title-wrap{display:flex;flex-direction:column;min-width:0}.platform-header__partner{align-items:center;border-left:1px solid #ffffff47;display:inline-flex;gap:8px;margin-left:10px;min-width:0;padding-left:10px}.platform-header__partner-label{color:#e1f3ffeb;font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.platform-header__partner-logo{filter:brightness(0) invert(1) drop-shadow(0 2px 6px rgba(0,0,0,.2));height:26px;max-width:180px;object-fit:contain;opacity:.95;width:auto}.platform-header__platform-title{color:#ddf1fff2!important;font-size:.88rem!important;font-weight:700!important;letter-spacing:.04em!important;line-height:1.2!important;text-transform:uppercase}.platform-header__page-title{color:#fff!important;font-size:1rem!important;font-weight:800!important;line-height:1.2!important;max-width:min(44vw,340px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.platform-header__right{align-items:center;display:flex;gap:10px}.platform-header__help-trigger{background:#ffffff24!important;border:1px solid #ffffff42!important;color:#f8fdff!important}.platform-header__help-trigger:hover{background:#ffffff38!important}.platform-header__live-chip{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff29!important;border:1px solid #ffffff3d!important;color:#f8fdff!important}.platform-header__live-chip .MuiChip-label{font-size:.72rem;font-weight:700;letter-spacing:.03em}.platform-header__live-dot{color:#34d399!important;font-size:.56rem!important}.platform-profile-trigger{align-items:center;background:#ffffff29;border:1px solid #ffffff40;border-radius:999px;color:#f8fdff;cursor:pointer;display:inline-flex;gap:8px;min-height:38px;padding:5px 10px 5px 6px;transition:background .2s ease,border-color .2s ease,transform .15s ease}.platform-profile-trigger:hover{background:#ffffff3d;border-color:#ffffff5c}.platform-profile-trigger:active{transform:translateY(1px)}.platform-profile-trigger__avatar{background:linear-gradient(135deg,#0ea5e9,#14b8a6)!important;color:#052644!important;font-size:.76rem!important;font-weight:800!important;height:28px!important;width:28px!important}.platform-profile-trigger__info{align-items:flex-start;display:flex;flex-direction:column;line-height:1.1}.platform-profile-trigger__info strong{color:#f8fdff;font-size:.76rem;font-weight:800;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.platform-profile-trigger__info small{color:#e0f4ffe6;font-size:.64rem;letter-spacing:.05em;text-transform:uppercase}.platform-profile-menu{border:1px solid #d7e3f3!important;border-radius:14px!important;box-shadow:0 18px 32px #0f172a2e!important;margin-top:6px;min-width:260px;overflow:hidden}.platform-profile-menu__header{align-items:center;display:flex;gap:10px;padding:10px 12px 6px}.platform-profile-menu__avatar{background:linear-gradient(135deg,#0ea5e9,#14b8a6)!important;color:#052644!important;font-size:.84rem!important;font-weight:800!important;height:34px!important;width:34px!important}.platform-profile-menu__identity .MuiTypography-subtitle2{color:#0f2943;font-weight:800;line-height:1.2}.platform-profile-menu__identity .MuiTypography-caption{color:#536f88;font-size:.69rem}.platform-profile-menu__roles{display:flex;flex-wrap:wrap;gap:6px;padding:4px 12px 10px}.platform-profile-menu__roles .MuiChip-root{background:#edf4ff;border:1px solid #cfe0f7;color:#1f3f63;font-size:.67rem;letter-spacing:.04em;text-transform:uppercase}@media (max-width:900px){.platform-header__platform-title{display:none}.platform-header__page-title{font-size:.86rem!important;max-width:35vw}.platform-header__partner-label,.platform-profile-trigger__info{display:none}.platform-header__partner-logo{height:22px;max-width:130px}}@media (max-width:640px){.platform-header{min-height:58px!important;padding-inline:10px!important}.header-logo{height:32px}.platform-header__page-title{max-width:42vw}.platform-header__live-chip{display:none!important}.platform-header__partner{display:none}}.sidebar{height:100%;overflow-y:auto;padding:8px 10px 20px}.sidebar ul{list-style:none;margin:0;padding:0}.sidebar .sidebar-sections{display:flex;flex-direction:column;gap:10px}.sidebar .menu-section{margin:0}.sidebar .menu-section-toggle{align-items:center;background:#0000;border:0;border-radius:8px;color:#6e7584;cursor:pointer;display:flex;font-size:11px;font-weight:700;justify-content:space-between;letter-spacing:.08em;margin:0;padding:6px 8px;text-align:left;text-transform:uppercase;width:100%}.sidebar .menu-section-toggle:hover{background:#eef3fb}.sidebar .menu-section-toggle.active-link{color:#0d4ecc}.sidebar .menu-links li{margin:2px 0}.sidebar .menu-caret{align-items:center;display:inline-flex;font-size:18px;justify-content:center;line-height:1}.sidebar .menu-links{margin-top:4px}.sidebar a{border-radius:8px;color:#2f3645;display:block;font-size:14px;font-weight:500;line-height:1.2;padding:7px 8px;text-decoration:none}.sidebar a:hover{background:#eef3fb}.sidebar a.active-link{background:#dce9ff;color:#0d4ecc;font-weight:600}.sidebar .menu-group{border-top:1px solid #e2e8f4;margin-top:4px;padding-top:10px}.sidebar .menu-group-toggle{align-items:center;background:#0000;border:0;border-radius:8px;color:#2f3645;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:space-between;padding:7px 8px;text-align:left;width:100%}.sidebar .menu-group-toggle:hover{background:#eef3fb}.sidebar .menu-group-toggle.active-link{background:#dce9ff;color:#0d4ecc}.sidebar .submenu{margin-top:6px}.sidebar .submenu li{margin:2px 0}footer{background-color:#f8f9fa;border-top:1px solid #ddd;margin-top:20px;padding:10px 0;text-align:center}footer a{color:#007bff;text-decoration:none}footer a:hover{text-decoration:underline}.campaign-category{color:#000000b3;font-size:.75rem}.active-row{border-left:3px solid green}.inactive-row{border-left:3px solid red}.campaignsP-page{width:100%}.campaignsP-shell{border-radius:16px}.campaignsP-hero{background:linear-gradient(135deg,#f7fbff,#eaf2ff);border:1px solid #d6e2f7;border-radius:14px;margin-bottom:10px;padding:12px 14px}.campaignsP-heroMain{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:minmax(0,1.35fr) minmax(320px,.95fr)}.campaignsP-title{font-size:clamp(2rem,2.4vw,2.8rem);font-weight:700;letter-spacing:.01em;line-height:1;margin-bottom:4px}.campaignsP-subtitle{color:#5f6b7e;margin-bottom:0;max-width:640px}.campaignsP-heroAside{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.campaignsP-countPill{background:linear-gradient(135deg,#f3f7ff,#e8f6ff);border:1px solid #c9d8f6;border-radius:999px;color:#2455a7;font-size:.8rem;font-weight:700;padding:6px 11px;white-space:nowrap}.campaignsP-statsRow{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.campaignsP-statCard{align-items:flex-start;background:#fffc;border:1px solid #d3ddf4;border-radius:10px;display:flex;flex-direction:column;min-width:0;padding:7px 10px}.campaignsP-statLabel{color:#6a7b95;font-size:.72rem;text-transform:uppercase}.campaignsP-statValue{color:#173d8f;font-size:1.2rem;line-height:1.2}.campaignsP-tabs{border-bottom:1px solid #dbe4f2}.campaignsP-tabs .MuiTab-root{font-weight:700;letter-spacing:.02em;text-transform:none}.campaignsP-controlsCard{background:linear-gradient(180deg,#fbfdff,#f4f8ff);border:1px solid #d8e3f5;border-radius:14px;box-shadow:0 10px 26px #143c8214;margin-bottom:12px;padding:12px}.campaignsP-layout{display:block}.campaignsP-controlsTop{grid-gap:10px 14px;align-items:start;display:grid;gap:10px 14px;grid-template-columns:minmax(0,1fr) auto}.campaignsP-controlsHeader{margin-bottom:0}.campaignsP-controlsTitle{color:#1f365f;font-weight:700;line-height:1.2;margin-bottom:2px}.campaignsP-controlsHint{color:#657998;display:block;font-size:.82rem}.campaignsP-actionRow{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.campaignsP-filtersToggle.MuiButton-root{color:#1f5fdb;font-weight:700;min-height:40px;padding:0 10px;text-transform:none}.campaignsP-addButton.MuiButton-root{border-radius:12px;box-shadow:0 8px 18px #1f5fdb38;min-height:40px;padding:0 16px;text-transform:none}.campaignsP-toggleRow{display:flex;flex-wrap:wrap;gap:2px 10px}.campaignsP-toggleRow .MuiFormControlLabel-root{margin-right:0;min-height:40px}.campaignsP-toggleRow .MuiFormControlLabel-label{font-size:.92rem;font-weight:600}.campaignsP-toggleRow .MuiCheckbox-root{padding:6px}.campaignsP-filtersWrap{border-top:1px solid #dbe5f6;margin-top:16px;overflow:hidden;padding-top:16px;transition:max-height .22s ease}.campaignsP-filtersWrap.is-collapsed{max-height:108px}.campaignsP-filtersWrap.is-open{max-height:500px}.campaignsP-filters{grid-gap:8px;align-items:stretch;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.campaignsP-filters .campaignFilters-clearButton.MuiButton-root{border-color:#d7a4ea;border-radius:12px;color:#9a2bc0;font-weight:800;margin:0;min-height:40px;text-transform:none}.campaignsP-filters .campaignFilters-control{margin:0;min-width:0;padding-top:2px}.campaignsP-filters .campaignFilters-field--static{display:flex;flex-direction:column;gap:6px;min-width:0}.campaignsP-filters .campaignFilters-staticLabel{color:#6b7f9f;font-size:.68rem;font-weight:800;letter-spacing:.04em;line-height:1.2;padding:0 4px;text-transform:uppercase}.campaignsP-filters .campaignFilters-control .MuiInputLabel-root{background:linear-gradient(180deg,#fbfdff,#f4f8ff);color:#6b7f9f;font-size:.68rem;font-weight:800;letter-spacing:.04em;padding:0 6px;text-transform:uppercase;transform:translate(12px,-7px) scale(.82);transform-origin:top left}.campaignsP-filters .campaignFilters-control .MuiOutlinedInput-root{background:#fff;border-radius:12px;min-height:40px}.campaignsP-filters .campaignFilters-control .MuiOutlinedInput-notchedOutline{top:0}.campaignsP-filters .campaignFilters-control .MuiOutlinedInput-notchedOutline legend{display:none}.campaignsP-filters .campaignFilters-control .MuiSelect-select{align-items:center;display:flex;font-size:.98rem;min-height:40px;padding-bottom:9px;padding-top:9px}.campaignsP-filters .campaignFilters-control .MuiSelect-select>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaignsP-searchField{margin-top:10px;width:100%}.campaignsP-searchField .MuiOutlinedInput-root{background:#fff;border-radius:12px;min-height:40px}.campaignsP-body{display:flex;gap:14px;justify-content:space-between}.campaignsP-tableScroller{border:1px solid #d7e3f4;border-radius:14px;flex:1 1 auto;max-height:76vh;overflow:auto}.campaignsP-table{background:#fff}.campaignsP-table .MuiTableCell-head{background:#edf3fb;color:#314462;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.campaignsP-table .MuiTableCell-body{border-bottom:1px solid #e5edf9;padding-bottom:10px;padding-top:10px;vertical-align:middle}.campaignsP-table .MuiTableRow-root:hover{background:#f7faff}.campaignsP-table .selected-row{background:#eef4ff}.campaignsP-sortableHeader{cursor:pointer;-webkit-user-select:none;user-select:none}.campaignsP-sortableHeader:hover{color:#1f5fdb}.campaignsP-keyVisual{background:#e7edf9;border:1px solid #d6dff0;border-radius:10px;cursor:pointer;display:block;height:86px;object-fit:cover;width:160px}.campaignsP-keyVisualPlaceholder{align-items:center;background:#f4f7fd;border:1px dashed #c8d4e9;border-radius:10px;color:#7a8cab;display:inline-flex;font-size:.82rem;font-weight:600;height:86px;justify-content:center;width:160px}.campaignsP-namePrimary{color:#1f2d44;font-weight:700;line-height:1.25;max-width:320px;white-space:normal;word-break:break-word}.campaignsP-statusRow{display:flex;gap:6px;margin-top:6px}.campaignsP-statusChip{border-radius:999px;font-size:.66rem;font-weight:700;letter-spacing:.03em;padding:2px 8px;text-transform:uppercase}.campaignsP-statusChip.is-active{background:#e7f8ec;border:1px solid #bde3c8;color:#1f7a45}.campaignsP-statusChip.is-inactive{background:#fff1f1;border:1px solid #efc2c2;color:#9e3131}.campaignsP-statusChip.is-valid{background:#e9f3ff;border:1px solid #c9dcfb;color:#2d5faa}.campaignsP-statusChip.is-expired{background:#f8f2ff;border:1px solid #dbcaf3;color:#6e4ca0}.campaignsP-segmentText{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;overflow:hidden;word-break:break-word}.campaignsP-devicesCount{color:#3e4f68;font-weight:600}.campaignsP-actions{align-items:center;display:flex;flex-wrap:nowrap;gap:6px;white-space:nowrap}.campaignsP-actionButton.MuiIconButton-root{background:#f6f9ff;border:1px solid #d7e3f4;border-radius:10px;color:#315286;font-size:1rem;height:32px;width:32px}.campaignsP-actionButton.MuiIconButton-root:hover{background:#edf4ff;border-color:#bfd3f1}.campaignsP-actionButton.is-primary.MuiIconButton-root{background:#edf4ff;color:#1f5fdb}.campaignsP-actionButton.is-danger.MuiIconButton-root{background:#fff3f1;border-color:#f2d2cc;color:#bf4c38}.campaignsP-actionButton.is-danger.MuiIconButton-root:hover{background:#ffe8e4;border-color:#ebbbb2}.campaignsP-emptyState{align-items:center;color:#4c5f80;display:flex;flex-direction:column;gap:6px;padding:20px 12px;text-align:center}.campaignsP-editorPanel{background:#fff;border:1px solid #d8e4f6;border-radius:14px;box-shadow:0 12px 30px #183c781f;max-height:76vh;overflow:auto}@media (max-width:1200px){.campaignsP-heroMain{grid-template-columns:minmax(0,1fr)}.campaignsP-heroAside{align-items:flex-start}.campaignsP-tableScroller{max-height:66vh}.campaignsP-namePrimary{max-width:240px}}@media (max-width:900px){.campaignsP-hero{padding:12px}.campaignsP-countPill{align-self:flex-start}.campaignsP-controlsCard{padding:12px}.campaignsP-controlsTop{grid-template-columns:1fr}.campaignsP-actionRow{align-items:stretch;flex-direction:column;justify-content:flex-start}.campaignsP-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.campaignsP-statsRow{grid-template-columns:repeat(3,minmax(0,1fr))}.campaignsP-body{flex-direction:column}.campaignsP-tableScroller{max-height:58vh}.campaignsP-keyVisual,.campaignsP-keyVisualPlaceholder{height:72px;width:132px}.campaignsP-table .MuiTableCell-body{padding-bottom:8px;padding-top:8px}}@media (max-width:640px){.campaignsP-filters,.campaignsP-statsRow{grid-template-columns:1fr}}.selected-row{background-color:#f0f8ff}.sortable-header{cursor:pointer;font-weight:700;transition:color .2s ease}.sortable-header:hover{color:#007bff}.devices-list{margin-left:200px;margin-top:70px;padding:20px}.content-container{margin-top:50px;padding:20px;position:relative;z-index:1}.device-details-container,.device-list-container{border:1px solid #ddd;height:80vh;overflow-y:auto}.device-details-container{padding:10px}.auth-container{background:linear-gradient(180deg,#fffffff7,#fff);border:1px solid #d5e0ef;border-radius:24px;box-shadow:0 24px 48px #0f172a1f;margin:0 auto;overflow:hidden;padding:30px 28px 26px;position:relative;text-align:center;width:min(440px,100%)}.auth-container:before{background:linear-gradient(90deg,#1454a3,#0e79c8 42%,#14b8a6);content:"";height:5px;inset:0 0 auto;position:absolute}.auth-container h2{color:#0f2943;font-size:2rem;letter-spacing:-.04em;line-height:1.05;margin:0 0 10px}.auth-container p{color:#56728d;line-height:1.6;margin:0 0 18px}.auth-container form{display:flex;flex-direction:column;gap:14px}.auth-container input{background:#f6f9fc;border:1px solid #cfdced;border-radius:14px;color:#0f2943;font-size:16px;min-height:54px;padding:0 15px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.auth-container input:focus{background:#fff;border-color:#0e79c8;box-shadow:0 0 0 4px #0e79c81f;outline:none}.auth-container button{background:linear-gradient(135deg,#1454a3,#0e79c8);border:none;border-radius:14px;box-shadow:0 14px 26px #1454a32e;color:#fff;cursor:pointer;font-size:1rem;font-weight:800;margin-top:4px;min-height:54px;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.auth-container button:hover:not(:disabled){box-shadow:0 18px 32px #1454a338;filter:brightness(1.02);transform:translateY(-1px)}.auth-container button:disabled{cursor:default;opacity:.7}.auth-link-row{display:flex;gap:12px;justify-content:space-between;margin-top:16px}.auth-link-row a{color:#1454a3;font-size:.92rem;font-weight:700;text-decoration:none}.auth-link-row a:hover{text-decoration:underline}@media (max-width:640px){.auth-container{border-radius:20px;padding:26px 18px 20px}.auth-container h2{font-size:1.7rem}.auth-link-row{flex-direction:column}}.device-filters{--filters-bg:linear-gradient(135deg,#f8fbff,#fff 65%);--filters-border:#dbe6f4;--filters-shadow:0 12px 24px #0f172a0f;--filters-title:#0f2742;--filters-text:#334155;--filters-muted:#64748b;--filters-primary:#1d4ed8;--filters-primary-soft:#1d4ed81f;background:var(--filters-bg);border:1px solid var(--filters-border);border-radius:16px;box-shadow:var(--filters-shadow);margin-bottom:24px;overflow:hidden;padding:20px;position:relative}.device-filters:before{background:linear-gradient(90deg,#1d4ed8,#0ea5e9 45%,#14b8a6);content:"";height:3px;inset:0 0 auto 0;position:absolute}.device-filters__header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.device-filters__title{color:var(--filters-title);font-weight:800;letter-spacing:.01em;margin:0}.device-filters__summary{color:var(--filters-muted);font-size:.82rem;margin:2px 0 0}.device-filters__header-actions{align-items:center;display:inline-flex;flex-wrap:wrap;gap:8px}.device-filters__toggle-btn.MuiButton-root{border-radius:10px;color:var(--filters-primary);font-weight:700;text-transform:none}.device-filters__clear-btn.MuiButton-root{background-color:#fff;border-color:#c9d8ee;border-radius:10px;color:#334155;font-weight:600;text-transform:none}.device-filters__clear-btn.MuiButton-root:hover{background-color:#f6faff;border-color:#9fb6dc}.filters-holder{grid-gap:10px;align-items:end;display:grid;gap:10px;grid-template-columns:2fr 1.5fr repeat(2,minmax(170px,.8fr));margin-bottom:10px}.filters-holder__field{display:flex;flex-direction:column;gap:6px}.filters-holder__field label{color:var(--filters-text);font-size:.86rem;font-weight:700;letter-spacing:.02em}.device-filters__select{background-color:#fff;border:1px solid #cbd5e1;border-radius:10px;color:var(--filters-text);font-size:.92rem;min-height:40px;padding:0 12px;transition:border-color .2s ease,box-shadow .2s ease}.device-filters__select:focus{border-color:var(--filters-primary);box-shadow:0 0 0 4px var(--filters-primary-soft);outline:none}.device-filters__select:disabled{background-color:#f1f5f9;cursor:not-allowed}.device-filters__grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.device-filters__advanced.is-collapsed{display:none}.device-filter-field{margin:0}.device-filter-field .MuiFormLabel-root{color:var(--filters-muted);font-size:.85rem;font-weight:700}.device-filter-field .MuiInputBase-root{background:#fff;border-radius:10px}.device-filter-field .MuiOutlinedInput-notchedOutline{border-color:#ccd7e6}.device-filter-field .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:#96afd2}.device-filter-field .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--filters-primary);border-width:1px}.device-filter-field .MuiChip-root{background:#e9f2ff;border:1px solid #c0d6ff;color:#1f3f70;font-weight:700}@media (max-width:900px){.device-filters{border-radius:14px;padding:14px}.device-filters__header{align-items:stretch;flex-direction:column}.device-filters__grid,.filters-holder{grid-template-columns:1fr}.device-filters__header-actions{justify-content:space-between;width:100%}}.pmi-devices-page{--pmi-bg:#eef4fb;--pmi-card-border:#d8e3f2;--pmi-card-shadow:0 18px 34px #0f172a14;--pmi-text-main:#0f2943;--pmi-text-soft:#3b546c;--pmi-accent:#1d4ed8;--pmi-accent-soft:#1d4ed81f;background:radial-gradient(circle at 0 0,#2563eb1f,#0000 40%),radial-gradient(circle at 100% 0,#0ea5e91a,#0000 36%),radial-gradient(circle at 50% 100%,#0ea5e914,#0000 45%),var(--pmi-bg);font-family:Manrope,Avenir Next,Segoe UI,sans-serif;min-height:calc(100vh - 72px);padding:18px 12px 26px}.pmi-devices-page__content{animation:pmiFadeIn .35s ease;overflow:visible}.pmi-devices-filters-section{margin-bottom:16px}.pmi-devices-table-card{background:linear-gradient(180deg,#fff,#fcfdff);border:1px solid var(--pmi-card-border);border-radius:18px;box-shadow:var(--pmi-card-shadow);overflow:hidden;padding:14px 14px 10px;position:relative}.pmi-devices-table-card:before{background:linear-gradient(90deg,#1d4ed8,#0ea5e9 42%,#14b8a6);content:"";height:4px;left:0;position:absolute;right:0;top:0}.pmi-devices-toolbar{grid-gap:10px;display:grid;gap:10px;margin-bottom:10px}.pmi-devices-toolbar__main{justify-content:space-between}.pmi-devices-toolbar__main,.pmi-devices-toolbar__title-group{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.pmi-devices-toolbar__utility{background:#f8fbff;border:1px solid #dbe6f4;border-radius:12px;justify-content:space-between;padding:8px 10px}.pmi-devices-toolbar__utility,.pmi-devices-toolbar__utility-left{align-items:center;display:flex;flex-wrap:wrap;gap:10px 14px}.pmi-devices-title{color:var(--pmi-text-main);font-weight:800;letter-spacing:.01em;margin:0}.pmi-devices-only-my{align-items:center;background:#f7faff;border:1px solid #d9e5f5;border-radius:999px;color:var(--pmi-text-soft);cursor:pointer;display:inline-flex;font-size:.84rem;gap:6px;padding:2px 10px 2px 6px;transition:border-color .2s ease,background-color .2s ease}.pmi-devices-only-my:hover{background-color:#eef5ff;border-color:#b8cceb}.pmi-content-status-quick-filter{align-items:center;display:inline-flex;flex-wrap:wrap;gap:6px}.pmi-content-status-quick-filter__label{color:#3b546c;font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.pmi-content-status-quick-filter .MuiButton-root{border-radius:999px;font-weight:700;min-width:auto;padding:4px 12px;text-transform:none}.pmi-sse-indicator{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:.78rem;font-weight:700;gap:6px;letter-spacing:.01em;padding:4px 10px}.pmi-sse-indicator__dot{background:currentColor;border-radius:50%;height:7px;width:7px}.pmi-sse-indicator--on{background:#dcfce7;border-color:#86efac;color:#166534}.pmi-sse-indicator--warn{background:#ffedd5;border-color:#fdba74;color:#9a3412}.pmi-sse-indicator--off{background:#fee2e2;border-color:#fecaca;color:#991b1b}.pmi-devices-actions,.pmi-devices-edit-layout{align-items:center;display:flex;gap:8px}.pmi-devices-edit-layout{flex-wrap:wrap;margin:0}.pmi-devices-edit-layout__label{color:#475569;font-size:.76rem;font-weight:700;letter-spacing:.04em;margin:0;text-transform:uppercase}.pmi-devices-edit-layout__buttons{align-items:center;display:inline-flex;gap:8px}.pmi-devices-edit-layout__btn.MuiButton-root{border-radius:999px;font-weight:700;min-width:102px;padding:4px 12px;text-transform:none}.pmi-devices-btn.MuiButton-root{border-radius:10px;box-shadow:0 6px 16px #1e40af38;font-weight:700;min-height:42px;min-width:136px;text-transform:none}.pmi-devices-btn--primary.MuiButton-root{background:linear-gradient(90deg,#1d4ed8,#2563eb)}.pmi-devices-btn--primary.MuiButton-root:hover{background:linear-gradient(90deg,#1e40af,#1d4ed8)}.pmi-devices-btn--secondary.MuiButton-root{background:linear-gradient(90deg,#0f766e,#0d9488);box-shadow:0 6px 16px #0f766e3d}.pmi-devices-btn--secondary.MuiButton-root:hover{background:linear-gradient(90deg,#115e59,#0f766e)}.pmi-devices-summary-strip{margin-bottom:10px}.pmi-devices-kpis{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:8px}.pmi-kpi{background:#f9fbff;border:1px solid #dbe6f4;border-radius:12px;padding:9px 12px}.pmi-kpi__label{color:#64748b;display:block;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.pmi-kpi__value{color:#0f2943;display:block;font-size:1.05rem;font-weight:800;line-height:1.2;margin-top:4px}.pmi-kpi__meta{color:#64748b;display:block;font-size:.66rem;letter-spacing:.03em;margin-top:2px;text-transform:uppercase}.pmi-kpi--live{background:#f0fdf4;border-color:#bbf7d0}.pmi-kpi--live .pmi-kpi__value{color:#166534}.pmi-kpi--cec{background:#ecfeff;border-color:#a5f3fc}.pmi-kpi--cec .pmi-kpi__value{color:#155e75}.pmi-kpi--active{background:#eef2ff;border-color:#c7d2fe}.pmi-kpi--active .pmi-kpi__value{color:#3730a3}.pmi-kpi--warn{background:#fff7ed;border-color:#fed7aa}.pmi-kpi--warn .pmi-kpi__value{color:#9a3412}.pmi-devices-meta-row{gap:10px;justify-content:space-between}.pmi-devices-legend,.pmi-devices-meta-row{align-items:center;display:flex;flex-wrap:wrap}.pmi-devices-legend{background:#f8fbff;border:1px solid #dbe6f4;border-radius:12px;gap:8px 14px;margin:0;padding:8px 10px}.pmi-devices-legend__title{color:#314862;font-size:.8rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.pmi-devices-legend__item{align-items:center;color:#475569;display:inline-flex;font-size:.84rem;font-weight:700;gap:6px}.pmi-devices-legend__dot{background:currentColor;border-radius:50%;height:8px;width:8px}.pmi-devices-legend__item.is-live{color:#15803d}.pmi-devices-legend__item.is-recent{color:#c2410c}.pmi-devices-legend__item.is-stale{color:#64748b}.pmi-now-playing-debug__summary{background:#f8fbff;border:1px solid #dbe6f4;border-radius:12px;display:inline-flex;gap:10px;padding:8px 10px}.pmi-devices-selection-row,.pmi-now-playing-debug__summary{align-items:center;flex-wrap:wrap;justify-content:space-between}.pmi-devices-selection-row{display:flex;gap:12px;margin-bottom:12px}.pmi-devices-count{color:#1f3b5c;margin:0}.pmi-devices-refresh-note{color:#1e40af;font-size:.82rem;margin:0 0 10px}.pmi-devices-inline-error{color:#b91c1c;font-size:.82rem;margin:0 0 10px}.pmi-now-playing-debug{background:#f8fbff;border:1px solid #dbe6f4;border-radius:12px;margin:0 0 12px;overflow:hidden}.pmi-now-playing-debug__header{align-items:center;background:#eef5ff;border-bottom:1px solid #e6eef9;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start;padding:8px 10px}.pmi-now-playing-debug__title{color:#1f3b5c;font-weight:700;margin:0}.pmi-now-playing-debug__meta{color:#475569}.pmi-now-playing-debug__toggle{min-width:108px}.pmi-now-playing-debug__filters{background:#f8fbff;border-bottom:1px solid #e6eef9;display:flex;flex-wrap:wrap;gap:10px;padding:8px 10px}.pmi-now-playing-debug__field{color:#334155;display:inline-flex;flex-direction:column;font-size:.74rem;font-weight:700;gap:4px;min-width:220px}.pmi-now-playing-debug__select{background:#fff;border:1px solid #c7d5e8;border-radius:8px;color:#1e293b;font-size:.78rem;min-height:32px;padding:0 8px}.pmi-now-playing-debug__payload{background:#fff;color:#0f2943;font-family:monospace;font-size:.72rem;line-height:1.45;margin:0;max-height:180px;overflow:auto;padding:10px;white-space:pre-wrap;word-break:break-word}.pmi-devices-empty-state{color:#475569;font-size:.9rem;padding:14px 0}.pmi-selection-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.pmi-selection-actions__count{color:#334155;font-size:.95rem;margin:0}.pmi-selection-actions__buttons{align-items:center;display:flex;gap:8px}.pmi-selection-actions__button.MuiButton-root{border-radius:9px;box-shadow:none;font-weight:700;text-transform:none}.pmi-selection-actions__button--main.MuiButton-root{background-color:#1d4ed8}.pmi-selection-actions__button--main.MuiButton-root:hover{background-color:#1e40af}.pmi-selection-actions__button--clear.MuiButton-root{border-color:#cbd5e1;color:#475569}.pmi-selection-actions__button--clear.MuiButton-root:hover{background-color:#f8fafc;border-color:#94a3b8}.pmi-devices-table-wrap{background:#fff;border:1px solid #dbe6f4;border-radius:12px;max-height:66vh;overflow:auto}.pmi-devices-table-layout{display:block}.pmi-devices-table-layout--split{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) 420px}.pmi-devices-side-editor{max-height:66vh;overflow:auto;padding:2px;position:-webkit-sticky;position:sticky;top:10px}.pmi-devices-inline-editor-cell .device-details-container,.pmi-devices-side-editor .device-details-container{width:100%}.pmi-devices-inline-editor-cell .MuiCard-root,.pmi-devices-side-editor .MuiCard-root{border:1px solid #dbe6f4;border-radius:12px;box-shadow:0 10px 24px #0f172a14}.pmi-devices-inline-editor-row .MuiTableCell-root{background:#f7fbff;border-bottom:1px solid #dbe6f4;padding:8px 10px 10px}.pmi-devices-inline-editor-cell{left:0;position:-webkit-sticky;position:sticky;width:100%;z-index:2}.pmi-devices-inline-editor-cell .device-details-container{max-width:100%;width:min(1320px,calc(100vw - 340px))}.device-form-dialog-p--inline{left:10px;max-width:calc(100vw - 340px);position:-webkit-sticky;position:sticky;width:min(1320px,calc(100vw - 340px))}.device-form-dialog-p--inline .device-form-dialog-p__card-header{padding:10px 14px 6px}.device-form-dialog-p--inline .device-form-dialog-p__card-header .MuiCardHeader-title{color:#17314f;font-size:1rem;font-weight:800}.device-form-dialog-p--inline .device-form-dialog-p__card-content{padding:0 14px 14px}.device-form-dialog-p--inline .device-form-dialog-p__tabs-shell{margin-bottom:12px}.device-form-dialog-p--inline .device-form-dialog-p__tabs .MuiTab-root{font-size:.8rem;font-weight:700;min-height:40px;padding:8px 12px;text-transform:none}.device-form-dialog-p__group{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #dbe6f4;border-radius:12px;margin-bottom:10px;padding:12px}.device-form-dialog-p__group-title{color:#1f3b5c;font-weight:700;letter-spacing:.01em;margin-bottom:12px}.device-form-dialog-p__fields-grid{grid-gap:8px;display:grid;gap:8px}.device-form-dialog-p__fields-grid--inline{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.device-form-dialog-p__fields-grid--side{grid-template-columns:1fr}.device-form-dialog-p__field{min-width:0}.device-form-dialog-p__field .MuiFormControl-root,.device-form-dialog-p__field .MuiTextField-root,.device-form-dialog-p__field .addable-select{width:100%}.device-form-dialog-p__field .MuiInputLabel-root{max-width:calc(100% - 36px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-form-dialog-p__field .MuiInputLabel-shrink{background:linear-gradient(180deg,#fff,#f8fbff);border-radius:999px;box-sizing:border-box;max-width:calc(100% - 22px);padding:0 6px}.device-form-dialog-p--inline .device-form-dialog-p__field .MuiInputBase-root,.device-form-dialog-p--inline .device-form-dialog-p__field .MuiOutlinedInput-root{border-radius:10px;min-height:40px}.device-form-dialog-p--inline .device-form-dialog-p__field .MuiInputLabel-root{font-size:.84rem}.device-form-dialog-p--inline .device-form-dialog-p__field .MuiInputBase-input,.device-form-dialog-p--inline .device-form-dialog-p__field .MuiSelect-select{padding-bottom:10px;padding-top:10px}.device-form-dialog-p__location-grid{grid-gap:8px;display:grid;gap:8px}.device-form-dialog-p__location-grid--inline{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.device-form-dialog-p--inline .device-form-dialog-p__location-grid--inline{grid-template-columns:repeat(4,minmax(0,1fr))}.device-form-dialog-p__location-grid--side{grid-template-columns:1fr}.device-form-dialog-p__location-item{background:#f8fbff;border:1px solid #dbe6f4;border-radius:10px;padding:7px 9px}.device-form-dialog-p__location-label{color:#4d6280;display:block;font-size:.68rem;font-weight:700;letter-spacing:.04em;margin-bottom:2px;text-transform:uppercase}.device-form-dialog-p__location-value{color:#1f2d44;font-size:.88rem;line-height:1.35;word-break:break-word}.device-form-dialog-p__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:8px}.device-form-dialog-p__status-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.device-form-dialog-p__status-card{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #dbe6f4;border-radius:12px;padding:10px 12px}.device-form-dialog-p__status-title{color:#17314f;font-weight:800}.device-form-dialog-p__status-meta{color:#64748b;display:block;margin-bottom:8px;margin-top:2px}.device-form-dialog-p__status-list{grid-gap:6px;display:grid;gap:6px}.device-form-dialog-p__status-row{align-items:center;background:#f8fbff;border:1px solid #e4edf8;border-radius:10px;display:flex;gap:8px;justify-content:space-between;padding:6px 8px}.device-form-dialog-p__status-bucket{color:#314862;font-size:.82rem}.device-form-dialog-p__status-count{color:#1f5fdb;font-size:.88rem}.pmi-devices-table .MuiTableHead-root .MuiTableCell-root{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase}.pmi-devices-table .MuiCheckbox-root,.pmi-devices-table .MuiIconButton-root{padding:4px}.pmi-devices-table .selected-row{background:#e9f2ff}.pmi-devices-row{cursor:pointer}.device-status{font-size:.8rem;font-weight:700}.device-status--deleted{color:#dc2626}.device-status--visible{color:#059669}.status-pill{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:.7rem;font-weight:700;justify-content:center;min-width:62px;padding:2px 8px}.status-pill--on{background:#d1fae5;border-color:#a7f3d0;color:#065f46}.status-pill--off{background:#fee2e2;border-color:#fecaca;color:#991b1b}.cec-indicator{align-items:center;border:1px solid #0000;border-radius:6px;display:inline-flex;height:22px;justify-content:center;overflow:visible;position:relative;width:22px}.cec-indicator__thumb{border:1.5px solid #fff;border-radius:999px;bottom:-5px;box-shadow:0 0 0 1px #0f172a14;height:11px;position:absolute;right:-5px;transition:transform .18s ease,box-shadow .18s ease;width:11px}.cec-indicator__thumb--ok{background:#22c55e}.cec-indicator__thumb--warn{background:#f59e0b}.cec-indicator__thumb--off{background:#ef4444}.cec-indicator__thumb--unknown{background:#94a3b8}.cec-indicator__thumb--live{background:#2563eb;color:#fff;font-size:9px;height:15px;line-height:1;width:15px}.cec-indicator__thumb--live,.cec-indicator__thumb--media{align-items:center;border-color:#ffffffeb;border-radius:5px;display:inline-flex;justify-content:center}.cec-indicator__thumb--media{background:#0f172a;height:16px;overflow:hidden;transform-origin:bottom right;transition:width .18s ease,height .18s ease,transform .18s ease,box-shadow .18s ease,border-radius .18s ease;width:16px;z-index:4}.cec-indicator__thumb-image{display:block;height:100%;object-fit:cover;width:100%}.cec-indicator__thumb-play{align-items:center;color:#fff;display:none;font-size:9px;height:100%;justify-content:center;line-height:1;width:100%}.cec-indicator:focus-within .cec-indicator__thumb--media,.cec-indicator:hover .cec-indicator__thumb--media{box-shadow:0 6px 14px #0f172a47;transform:translate(-1px,-1px) scale(1.08);z-index:22}.cec-indicator--ok{background:#ecfdf5;border-color:#a7f3d0}.cec-indicator--warn{background:#fff7ed;border-color:#fdba74}.cec-indicator--off{background:#fef2f2;border-color:#fca5a5}.cec-indicator--unknown{background:#f8fafc;border-color:#cbd5e1}.cec-tooltip{background:#0f172af0!important;border:1px solid #94a3b859;border-radius:10px!important;max-width:320px;padding:8px 10px!important}.cec-tooltip-arrow{color:#0f172af0!important}.cec-tooltip-content{display:flex;flex-direction:column;gap:4px;min-width:220px}.cec-tooltip-preview{background:#020817;border:1px solid #94a3b847;border-radius:8px;box-shadow:0 8px 18px #0f172a47;height:48px;margin-bottom:4px;overflow:hidden;width:78px}.cec-tooltip-preview-image{background:#020817;display:block;height:100%;object-fit:contain;width:100%}.cec-tooltip-row{grid-gap:8px;align-items:start;display:grid;gap:8px;grid-template-columns:86px minmax(0,1fr)}.cec-tooltip-label{color:#93c5fd;font-size:.68rem;letter-spacing:.06em;line-height:1.35;text-transform:uppercase}.cec-tooltip-value{color:#f8fafc;font-size:.74rem;font-weight:700;line-height:1.35;word-break:break-word}.last-seen-pill{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:.72rem;font-weight:700;gap:5px;padding:2px 7px}.last-seen-pill__dot{background:currentColor;border-radius:50%;height:6px;width:6px}.last-seen-pill--live{background:#dcfce7;border-color:#86efac;color:#166534}.last-seen-pill--recent{background:#ffedd5;border-color:#fdba74;color:#9a3412}.last-seen-pill--stale{background:#f1f5f9;border-color:#cbd5e1;color:#475569}.last-seen-pill--unknown{background:#f8fafc;border-color:#dbe5f1;color:#64748b}.pmi-devices-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:14px;padding:10px 4px 2px}.pmi-devices-rows{align-items:center;display:flex;gap:10px}.pmi-devices-rows-label{color:#334155;font-size:.92rem;margin:0}.pmi-devices-rows-select{background:#fff;border:1px solid #c7d5e8;border-radius:8px;color:#1e293b;min-height:36px;padding:0 10px}.pmi-devices-state{color:#1f3b5c;padding:24px}.pmi-devices-state--error{color:#b91c1c}@keyframes pmiFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.pmi-devices-page{padding:10px 4px 22px}.pmi-devices-table-card{border-radius:14px;padding:10px}.pmi-devices-meta-row,.pmi-devices-pagination,.pmi-devices-selection-row,.pmi-devices-toolbar__main,.pmi-devices-toolbar__utility,.pmi-devices-toolbar__utility-left{align-items:stretch;flex-direction:column}.pmi-devices-actions{width:100%}.pmi-devices-edit-layout{align-items:flex-start;flex-direction:column}.pmi-devices-edit-layout__buttons{width:100%}.pmi-devices-edit-layout__btn.MuiButton-root{flex:1 1;min-width:0}.pmi-devices-table-layout--split{grid-template-columns:1fr}.pmi-devices-side-editor{max-height:none;overflow:visible;position:static}.device-form-dialog-p--inline,.pmi-devices-inline-editor-cell{left:auto;position:static}.device-form-dialog-p--inline,.pmi-devices-inline-editor-cell .device-details-container{max-width:100%;width:100%}.device-form-dialog-p__fields-grid--inline,.device-form-dialog-p__location-grid--inline,.device-form-dialog-p__status-grid{grid-template-columns:1fr}.pmi-sse-indicator{align-self:flex-start}.pmi-now-playing-debug__field{min-width:100%}.pmi-devices-kpis{grid-template-columns:1fr 1fr}.pmi-devices-legend,.pmi-now-playing-debug__summary{gap:8px 10px}.pmi-selection-actions{justify-content:space-between;width:100%}.pmi-selection-actions__buttons{width:100%}.pmi-devices-btn.MuiButton-root,.pmi-selection-actions__button.MuiButton-root{flex:1 1}.pmi-now-playing-debug__toggle{width:100%}}@media (max-width:1280px){.device-form-dialog-p--inline .device-form-dialog-p__location-grid--inline{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1080px){.device-form-dialog-p--inline .device-form-dialog-p__location-grid--inline{grid-template-columns:repeat(2,minmax(0,1fr))}}.campaign-previews-page{display:flex;flex-direction:column;gap:16px}.campaign-previews-hero{align-items:flex-start;background:radial-gradient(circle at 4% -20%,#0284c738,#0000 38%),radial-gradient(circle at 100% 0,#14b8a629,#0000 36%),linear-gradient(130deg,#f8fbff,#eef6ff 48%,#f8fcff);border:1px solid #cfdef4;border-radius:16px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:18px}.campaign-previews-title{font-weight:800;letter-spacing:.01em;line-height:1.2;margin:0}.campaign-previews-subtitle{color:#4b6581;margin-top:6px}.campaign-previews-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(96px,1fr));width:min(450px,100%)}.campaign-previews-stat{background:#ffffffdb;border:1px solid #cedef4;border-radius:12px;display:flex;flex-direction:column;gap:3px;padding:10px 12px}.campaign-previews-stat span{color:#59718b;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}.campaign-previews-stat strong{color:#102a48;font-size:1.25rem;line-height:1.2}.campaign-previews-toolbar{grid-gap:10px;align-items:center;background:#f8fbff;border:1px solid #dbe7f8;border-radius:14px;display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) 180px auto auto;padding:12px}.campaign-previews-search .MuiOutlinedInput-root,.campaign-previews-sort .MuiOutlinedInput-root{background:#fff}.campaign-previews-toggle{margin:0 6px 0 2px;white-space:nowrap}.campaign-previews-reset{justify-self:end}.campaign-previews-filters{background:#f7fbff;border:1px solid #dbe7f8;border-radius:14px;padding:10px 12px 12px}.campaign-previews-filters-head{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:6px}.campaign-previews-filters-head .MuiTypography-root{color:#23405f;font-weight:700}.campaign-previews-filters>div{align-items:flex-end;display:flex;flex-wrap:wrap;gap:8px}.campaign-previews-filters .MuiFormControl-root{flex:1 1 180px;margin:0!important;min-width:160px!important}.campaign-previews-filters .MuiOutlinedInput-root{background:#fff}.campaign-previews-results-caption{color:#526b84;font-weight:500;margin:2px 2px 0}.campaign-preview-loading{align-items:center;background:#f8fbff;border:1px solid #d9e6f8;border-radius:14px;color:#2f4f73;display:flex;gap:12px;justify-content:center;padding:20px}.campaign-preview-card{animation:campaignPreviewCardIn .32s ease both;animation-delay:0ms;animation-delay:calc(var(--card-index, 0)*25ms);background:linear-gradient(180deg,#fff,#fbfdff);border:1px solid #d6e4f6;border-radius:16px;display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden}.campaign-preview-media-shell{aspect-ratio:16/9;background:linear-gradient(180deg,#f4f8ff,#edf3fd);border-bottom:1px solid #e1ebf8;position:relative}.campaign-preview-media{display:block;height:100%;object-fit:cover;width:100%}.campaign-preview-media-empty{align-items:center;color:#58718b;display:flex;height:100%;justify-content:center;width:100%}.campaign-preview-media-badge{background:#fffffff0;border:1px solid #d6e4f6;border-radius:999px;bottom:10px;color:#244264;font-size:.73rem;font-weight:700;line-height:1;padding:4px 10px;position:absolute;right:10px}.campaign-preview-card-head{display:flex;flex-direction:column;gap:8px;min-width:0;padding:12px 14px 0}.campaign-preview-link{-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#123c70!important;display:-webkit-box;font-weight:800!important;line-height:1.3;overflow:hidden;text-overflow:ellipsis;transition:color .18s ease;word-break:break-word}.campaign-preview-link:hover{color:#1d4ed8!important}.campaign-preview-chips{display:flex;flex-wrap:wrap;gap:6px}.campaign-preview-chip{background:#eef4ff!important;border:1px solid #d9e7ff;max-width:100%}.campaign-preview-chip .MuiChip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaign-preview-meta-grid{grid-gap:9px 10px;display:grid;flex:1 1;gap:9px 10px;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;padding:12px 14px 14px}.campaign-preview-meta-item{min-width:0}.campaign-preview-meta-item span{color:#607992;display:block;font-size:.68rem;font-weight:700;letter-spacing:.04em;line-height:1.25;margin-bottom:3px;text-transform:uppercase}.campaign-preview-meta-item strong{-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#203850;display:-webkit-box;font-size:.84rem;font-weight:600;line-height:1.34;overflow:hidden;word-break:break-word}.campaign-preview-footer{align-items:center;border-top:1px solid #e2ecf8;display:flex;gap:10px;justify-content:space-between;padding:10px 14px 12px}.campaign-preview-updated{color:#5f7892}.campaign-preview-empty{background:#f7fbff;border:1px dashed #b6cae5;border-radius:14px;padding:24px;text-align:center}.campaign-preview-empty .MuiTypography-h6{color:#123c70;margin-bottom:4px}.campaign-preview-empty .MuiTypography-body2{color:#4d6b88}@keyframes campaignPreviewCardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1199px){.campaign-previews-toolbar{grid-template-columns:minmax(200px,1fr) minmax(160px,200px)}.campaign-previews-toggle{grid-column:1}.campaign-previews-reset{grid-column:2;justify-self:stretch}}@media (max-width:900px){.campaign-previews-stats{grid-template-columns:repeat(3,minmax(85px,1fr))}.campaign-preview-meta-grid{grid-template-columns:1fr}}@media (max-width:680px){.campaign-previews-hero{padding:14px}.campaign-previews-stats{grid-template-columns:repeat(2,minmax(95px,1fr))}.campaign-previews-toolbar{grid-template-columns:1fr}.campaign-previews-toggle{grid-column:auto;margin:0}.campaign-previews-reset{grid-column:auto;justify-self:stretch}.campaign-preview-footer{align-items:flex-start;flex-direction:column}.campaign-previews-filters .MuiFormControl-root{flex-basis:100%;min-width:100%!important}}.simulation-table-container{font-family:Arial,sans-serif;margin:20px;padding:10px}.campaigns-table,.simulation-table{border-collapse:collapse;width:100%}.campaigns-table th,.simulation-table th{background-color:#f1f1f1;font-size:12px;font-weight:700;padding:6px;text-align:center}.campaigns-table td,.simulation-table td{word-wrap:break-word;border:1px solid #ddd;font-size:12px;padding:8px;text-align:left;vertical-align:top;white-space:normal}.device-column{font-size:12px;text-align:center}.criteria-container{word-wrap:break-word;background-color:#f9f9f9;border:1px solid #ddd;border-radius:4px;font-size:12px;line-height:1.5;padding:5px;white-space:normal}.criteria-container p{font-size:11px;margin:0}.criteria-container strong{color:#333}.pagination-controls{margin-top:15px;text-align:center}.pagination-controls button{background-color:#007bff;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:12px;margin:5px;padding:5px 10px}.pagination-controls button:disabled{background-color:#ccc;cursor:not-allowed}.pagination-controls button:hover:not(:disabled){background-color:#0056b3}.campaign-list{background-color:#f9f9f9;border:1px solid #ddd;border-radius:5px;margin-left:20px;max-width:300px;padding:10px}.campaign-list h3{font-size:16px;margin-bottom:10px}.campaign-list ul{list-style:none;padding:0}.campaign-list li{border-bottom:1px solid #ddd;margin-bottom:15px;padding-bottom:10px}.campaign-list strong{color:#333;display:block;font-size:14px}.campaign-list p{color:#666;font-size:12px}.campaign-device-logs{font-family:Arial,sans-serif;padding:20px}.campaign-device-logs h2{color:#333;margin-bottom:20px;text-align:center}.assignments-table{border-collapse:collapse;margin:0 auto;width:100%}.assignments-table thead{background-color:#f4f4f4}.assignments-table td,.assignments-table th{border:1px solid #ddd;padding:8px;text-align:left}.assignments-table th{background-color:#007bff;color:#fff;font-weight:700}.assignments-table tr:nth-child(2n){background-color:#f9f9f9}.assignments-table tr:hover{background-color:#f1f1f1}.assignments-table td{color:#555}body{font-family:Arial,sans-serif;margin:0;padding:0}.chart-container{height:300px;width:300px}
/*# sourceMappingURL=main.eaaec0ed.css.map*/