/* Світло Дніпро — schedules / personalization / push */
.power-page{padding-bottom:112px}.power-loading{margin-top:12px;min-height:92px;padding:18px;border-radius:21px;display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);color:#b9cee2;font-size:13px}.power-spinner{width:20px;height:20px;border-radius:50%;border:2px solid rgba(255,255,255,.18);border-top-color:#7bbcff;animation:power-spin .8s linear infinite}@keyframes power-spin{to{transform:rotate(360deg)}}
.power-stack{display:grid;gap:12px;margin-top:12px}.power-card{padding:16px;border-radius:21px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.085);box-shadow:0 10px 30px rgba(0,0,0,.12)}.power-card h3{margin:0;color:#f2f8ff;font-size:17px}.power-card p{margin:6px 0 0;color:#a9c2db;font-size:12px;line-height:1.5}.power-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.power-eyebrow{display:block;margin-bottom:4px;color:#86add0;font-size:10px;font-weight:900;letter-spacing:.12em}.power-muted{color:#91abc4!important}.power-mini{font-size:11px!important}
.power-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:13px}.power-provider-summary{padding:12px;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07)}.power-provider-summary b{display:block;font-size:15px;color:#fff}.power-provider-summary span{display:block;margin-top:4px;font-size:11px;line-height:1.35;color:#9fb8cf}.power-provider-summary.is-ok{border-color:rgba(69,214,150,.24)}.power-provider-summary.is-alert{border-color:rgba(255,103,103,.35)}
.power-primary,.power-secondary,.power-ghost,.power-danger{border:0;font:inherit;font-weight:850;cursor:pointer}.power-primary{min-height:46px;padding:0 16px;border-radius:15px;background:linear-gradient(135deg,#2792ff,#3767ee);color:#fff}.power-secondary{min-height:42px;padding:0 14px;border-radius:14px;background:rgba(91,157,255,.15);border:1px solid rgba(100,177,255,.24);color:#dff1ff}.power-ghost{min-height:38px;padding:0 11px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);color:#cfe1f2}.power-danger{min-height:38px;padding:0 11px;border-radius:12px;background:rgba(255,80,95,.12);border:1px solid rgba(255,80,95,.2);color:#ffb8c0}.power-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.power-actions>*{flex:1 1 auto}
.power-profile-bar{display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 1px}.power-profile-bar::-webkit-scrollbar{display:none}.power-profile-tab{flex:0 0 auto;max-width:190px;min-height:43px;padding:0 13px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.055);color:#b9cde0;font:inherit;text-align:left}.power-profile-tab strong{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.power-profile-tab small{display:block;margin-top:2px;color:#7898b7;font-size:9px}.power-profile-tab.active{background:linear-gradient(135deg,rgba(38,141,255,.32),rgba(80,81,226,.24));border-color:rgba(100,177,255,.38);color:#fff}.power-add-tab{width:43px;min-width:43px;height:43px;border-radius:14px;border:1px dashed rgba(138,190,236,.35);background:rgba(255,255,255,.035);color:#bfe1ff;font-size:22px}
.power-address-line{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07)}.power-address-copy{min-width:0}.power-address-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.power-address-copy span{display:block;margin-top:3px;color:#85a3bf;font-size:10px}.power-group-badge{flex:0 0 auto;padding:6px 9px;border-radius:10px;background:rgba(115,149,255,.16);color:#bcd3ff;font-size:12px;font-weight:900}
.power-status-card{position:relative;overflow:hidden}.power-status-card::after{content:"";position:absolute;right:-46px;top:-55px;width:130px;height:130px;border-radius:50%;background:rgba(71,221,151,.08)}.power-status-main{position:relative;z-index:1;font-size:23px;font-weight:950;letter-spacing:-.035em;color:#fff}.power-status-sub{position:relative;z-index:1;margin-top:5px;color:#a9c2db;font-size:12px;line-height:1.45}.power-status-dot{display:inline-block;width:10px;height:10px;margin-right:7px;border-radius:50%;vertical-align:1px;background:#4ddc98;box-shadow:0 0 0 5px rgba(77,220,152,.1)}.power-status-card.off .power-status-dot{background:#ff626f;box-shadow:0 0 0 5px rgba(255,98,111,.1)}.power-status-card.possible .power-status-dot{background:#e9b94d;box-shadow:0 0 0 5px rgba(233,185,77,.1)}.power-status-card.inactive .power-status-dot{background:#7f94a8;box-shadow:0 0 0 5px rgba(127,148,168,.1)}
.power-alert{padding:14px 15px;border-radius:18px;border:1px solid rgba(255,93,106,.32);background:linear-gradient(135deg,rgba(164,47,62,.28),rgba(91,34,50,.2));color:#fff}.power-alert.warning{border-color:rgba(237,185,62,.32);background:linear-gradient(135deg,rgba(152,111,25,.25),rgba(80,62,28,.18))}.power-alert strong{display:block;font-size:14px}.power-alert span{display:block;margin-top:4px;color:#f2cbd0;font-size:11px;line-height:1.4}.power-alert.warning span{color:#e7d5a8}.power-alert button{width:100%;margin-top:10px;min-height:40px;border:0;border-radius:13px;background:rgba(255,255,255,.11);color:#fff;font:inherit;font-size:12px;font-weight:850}
.power-day-tabs{display:flex;gap:7px;margin:0 0 12px}.power-day-tab{flex:1;min-height:42px;border-radius:13px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);color:#95afc7;font:inherit;font-size:12px;font-weight:850}.power-day-tab.active{background:rgba(56,143,255,.2);border-color:rgba(79,164,255,.34);color:#fff}.power-legend{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 13px}.power-legend span{display:flex;align-items:center;gap:5px;color:#9eb7ce;font-size:10px}.power-legend i{width:9px;height:9px;border-radius:3px}.power-legend .on i{background:#42c987}.power-legend .off i{background:#f15765}.power-legend .possible i{background:#d9ab45}.power-legend .unknown i{background:#64798d}
.power-timeline-scroll{overflow-x:auto;padding-bottom:5px;scrollbar-width:thin;scrollbar-color:#34516c transparent}.power-timeline{display:grid;grid-template-columns:repeat(48,15px);gap:2px;min-width:814px;align-items:end}.power-slot{position:relative;height:34px;border:0;border-radius:4px;background:#42c987;cursor:pointer;padding:0}.power-slot.off{background:#f15765}.power-slot.possible{background:#d9ab45}.power-slot.unknown{background:#64798d}.power-slot.current{outline:2px solid #fff;outline-offset:2px;z-index:2}.power-slot:hover,.power-slot:focus-visible{filter:brightness(1.16)}.power-time-labels{display:grid;grid-template-columns:repeat(12,66px);gap:2px;min-width:814px;margin-top:7px;color:#7493af;font-size:9px}.power-time-labels span{text-align:left}.power-selected-slot{min-height:18px;margin-top:9px;color:#bcd0e2;font-size:11px}.power-no-schedule{padding:13px;border-radius:14px;background:rgba(112,135,156,.1);color:#c1cfdb;font-size:12px;line-height:1.45}.power-interval-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.power-interval-chip{padding:6px 8px;border-radius:9px;background:rgba(241,87,101,.12);color:#ffb7be;font-size:10px;font-weight:800}.power-interval-chip.possible{background:rgba(217,171,69,.12);color:#f0d08a}
.power-all-toolbar{display:flex;gap:7px;margin-top:12px}.power-provider-tab{flex:1;min-height:40px;border-radius:13px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#95adc5;font:inherit;font-size:12px;font-weight:850}.power-provider-tab.active{background:rgba(78,142,255,.19);border-color:rgba(90,158,255,.33);color:#fff}.power-all-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.power-group-card{padding:11px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07)}.power-group-card strong{font-size:13px}.power-group-card span{display:block;margin-top:4px;color:#8ea8c0;font-size:10px;line-height:1.35}.power-group-card.has-off{border-color:rgba(244,86,100,.23)}
.power-push-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.power-push-copy strong{display:block;font-size:13px}.power-push-copy span{display:block;margin-top:4px;color:#8faac2;font-size:10px;line-height:1.4}.power-push-button{flex:0 0 auto;min-width:102px;min-height:38px;padding:0 11px;border-radius:12px;border:1px solid rgba(85,174,255,.26);background:rgba(47,138,232,.14);color:#c8e6ff;font:inherit;font-size:11px;font-weight:900}.power-push-button.on{border-color:rgba(70,215,145,.29);background:rgba(49,180,122,.13);color:#bff2da}
.power-wizard-backdrop{position:fixed;inset:0;z-index:80;background:rgba(0,5,12,.68);backdrop-filter:blur(5px)}.power-wizard{position:fixed;z-index:81;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,560px);max-height:88vh;overflow:auto;padding:12px 14px calc(20px + env(safe-area-inset-bottom));border-radius:25px 25px 0 0;background:#07192d;border:1px solid rgba(129,196,255,.16);box-shadow:0 -22px 60px rgba(0,0,0,.45)}.power-wizard-handle{width:46px;height:4px;margin:1px auto 15px;border-radius:4px;background:#36516b}.power-wizard-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.power-wizard-head h3{margin:0;font-size:20px}.power-wizard-head p{margin:4px 0 0;color:#8ea9c2;font-size:11px}.power-wizard-close{width:36px;height:36px;border:0;border-radius:12px;background:rgba(255,255,255,.07);color:#ddecfa;font-size:20px}.power-step{margin-top:16px}.power-step-title{margin-bottom:9px;color:#bbd3e8;font-size:11px;font-weight:850}.power-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.power-choice{min-height:70px;padding:11px;border-radius:15px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);color:#fff;text-align:left;font:inherit}.power-choice strong{display:block;font-size:14px}.power-choice small{display:block;margin-top:4px;color:#829db7;font-size:10px;line-height:1.35}.power-choice.active{border-color:rgba(81,168,255,.45);background:rgba(54,130,235,.17)}.power-methods{display:flex;gap:7px}.power-method{flex:1;min-height:39px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#91abc3;font:inherit;font-size:11px;font-weight:850}.power-method.active{color:#fff;border-color:rgba(85,167,255,.36);background:rgba(54,130,235,.16)}.power-field{margin-top:10px}.power-field label{display:block;margin-bottom:6px;color:#8da9c2;font-size:10px;font-weight:800}.power-field input{width:100%;height:46px;padding:0 13px;border-radius:14px;border:1px solid rgba(255,255,255,.1);outline:0;background:#0b233b;color:#fff;font:inherit;font-size:13px}.power-field input:focus{border-color:#4c9df0;box-shadow:0 0 0 3px rgba(76,157,240,.1)}.power-suggest{display:grid;gap:5px;margin-top:6px;max-height:210px;overflow:auto}.power-suggest button{padding:10px 11px;border-radius:11px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.045);color:#dfeefb;text-align:left;font:inherit;font-size:11px}.power-suggest button small{display:block;margin-top:2px;color:#718da7;font-size:9px}.power-group-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.power-group-pick{height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);color:#bad0e4;font:inherit;font-weight:900}.power-group-pick.active{background:#2d74cf;border-color:#519df0;color:#fff}.power-wizard-error{margin-top:9px;padding:9px 11px;border-radius:11px;background:rgba(255,74,90,.12);color:#ffb9c0;font-size:10px}.power-wizard-save{width:100%;margin-top:16px;min-height:48px;border:0;border-radius:15px;background:linear-gradient(135deg,#238cef,#5369ef);color:#fff;font:inherit;font-weight:900}.power-wizard-save:disabled{opacity:.45}
.power-outage-focus{margin-top:12px!important;border-color:rgba(255,94,106,.25)!important;background:linear-gradient(135deg,rgba(126,43,58,.22),rgba(255,255,255,.045))!important}.power-outage-focus h3{margin:0 0 8px;font-size:16px}.power-outage-meta{display:grid;gap:6px;margin-top:10px}.power-outage-meta div{display:flex;justify-content:space-between;gap:12px;font-size:11px}.power-outage-meta span{color:#89a5be}.power-outage-meta b{text-align:right;color:#f1f7fc}
@media(max-width:360px){.power-overview-grid,.power-all-grid{grid-template-columns:1fr}.power-group-grid{grid-template-columns:repeat(3,1fr)}.power-status-main{font-size:20px}}

/* HOTFIX 2026-09-11.2 — lock app viewport; only explicit rails may scroll horizontally. */
html,body{max-width:100vw;overflow-x:hidden}
body,.app-shell,.app-view,.page-screen,.power-page{min-width:0;max-width:100vw;overflow-x:hidden}
.power-page,.power-page *,.power-wizard,.power-manage-modal{box-sizing:border-box}
.power-stack,.power-card,.power-card-head,.power-address-copy,.power-push-copy{min-width:0;max-width:100%}
.power-profile-bar,.power-timeline-scroll{width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;touch-action:pan-x pan-y}
.power-profile-bar{padding:3px 1px 7px;scroll-snap-type:x proximity}
.power-profile-tab,.power-add-tab{scroll-snap-align:start}
.power-timeline-scroll{padding:4px 1px 8px}
.power-timeline{grid-template-columns:repeat(48,13px);gap:2px;width:720px;min-width:720px;max-width:none}
.power-time-labels{grid-template-columns:repeat(12,58px);gap:2px;width:720px;min-width:720px;max-width:none;margin-top:8px}
.power-time-labels span{white-space:nowrap}
.power-slot{height:32px;min-width:13px}
.power-no-schedule.success{display:grid;gap:3px;background:rgba(66,201,135,.1);border:1px solid rgba(66,201,135,.18);color:#c9f4df}
.power-no-schedule.success strong{font-size:12px;color:#d9ffeb}.power-no-schedule.success span{font-size:11px;color:#a9d8c1}
.power-no-schedule.warning{background:rgba(217,171,69,.1);border:1px solid rgba(217,171,69,.18);color:#f0d89a}
.power-places-card{padding-bottom:12px}.power-compact-action{flex:0 0 auto;min-height:34px;padding:0 11px;border-radius:11px;border:1px solid rgba(100,177,255,.22);background:rgba(83,143,226,.1);color:#cfe8ff;font:inherit;font-size:10px;font-weight:900}
.power-places-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px;padding-top:9px;border-top:1px solid rgba(255,255,255,.06);color:#7898b5;font-size:10px}.power-places-footer button{flex:0 0 auto;min-height:32px;padding:0 10px;border-radius:10px;border:0;background:rgba(255,255,255,.055);color:#b9d3e8;font:inherit;font-size:10px;font-weight:850}
.power-manage-backdrop{position:fixed;inset:0;z-index:86;background:rgba(0,5,12,.68);backdrop-filter:blur(5px)}
.power-manage-modal{position:fixed;z-index:87;left:50%;bottom:0;transform:translateX(-50%);width:min(100vw,560px);max-height:82vh;overflow-y:auto;overflow-x:hidden;padding:12px 14px calc(18px + env(safe-area-inset-bottom));border-radius:25px 25px 0 0;background:#07192d;border:1px solid rgba(129,196,255,.16);box-shadow:0 -22px 60px rgba(0,0,0,.45)}
.power-manage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.power-manage-head h3{margin:0;color:#f2f8ff;font-size:19px}
.power-manage-address{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding:12px;border-radius:15px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.07)}.power-manage-address>div{min-width:0}.power-manage-address strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#edf7ff;font-size:12px}.power-manage-address span:not(.power-group-badge){display:block;margin-top:3px;color:#849fb8;font-size:10px}
.power-manage-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:12px;border-radius:15px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.065)}.power-manage-row>div{min-width:0}.power-manage-row strong{display:block;color:#e8f4ff;font-size:12px}.power-manage-row span{display:block;margin-top:3px;color:#829db6;font-size:10px;line-height:1.35}
.power-manage-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.power-manage-actions .power-danger{grid-column:1/-1}.power-manage-actions button{min-width:0}
@media(max-width:360px){.power-timeline{grid-template-columns:repeat(48,12px);width:672px;min-width:672px}.power-time-labels{grid-template-columns:repeat(12,54px);width:672px;min-width:672px}.power-slot{min-width:12px}.power-places-footer{align-items:flex-start;flex-direction:column}.power-places-footer button{width:100%}}

/* OUTAGES MULTICITY shared profile extensions — 2026-09-11 */
.power-city-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.power-city-grid .power-method{min-width:0;padding:0 8px}.power-search-note{margin-bottom:8px;padding:9px 10px;border-radius:12px;background:rgba(77,151,226,.08);border:1px solid rgba(77,151,226,.13);color:#9fc0dc;font-size:9px;line-height:1.45}.power-search-note.warning{background:rgba(217,171,69,.07);border-color:rgba(217,171,69,.14);color:#d7c38c}@media(max-width:360px){.power-city-grid{grid-template-columns:1fr 1fr}}

/* DTEK factual-priority hotfix 2026-09-11 — factual outage > GPV schedule > green. */
.power-status-card.off::after{background:rgba(241,87,101,.11)}
.power-status-card.possible::after{background:rgba(217,171,69,.11)}
.power-no-schedule.danger{background:rgba(241,87,101,.12);border:1px solid rgba(241,87,101,.24);color:#ffd1d5}
.power-no-schedule.warning{border:1px solid rgba(217,171,69,.2)}
.power-no-schedule strong,.power-no-schedule span{display:block}.power-no-schedule span{margin-top:4px}
.power-slot.live-factual{box-shadow:0 0 0 2px rgba(255,255,255,.82),0 0 0 5px rgba(241,87,101,.15);z-index:3}
.power-slot.live-factual.possible{box-shadow:0 0 0 2px rgba(255,255,255,.82),0 0 0 5px rgba(217,171,69,.16)}
.home-power-live{margin:12px 16px 14px;padding:14px 15px;border-radius:20px;border:1px solid rgba(77,220,152,.2);background:linear-gradient(145deg,rgba(15,55,78,.96),rgba(7,31,53,.96));box-shadow:0 16px 36px rgba(0,0,0,.16);overflow:hidden;max-width:calc(100vw - 32px);box-sizing:border-box}
.home-power-live.off{border-color:rgba(241,87,101,.38);background:linear-gradient(145deg,rgba(96,35,48,.92),rgba(48,25,39,.96))}
.home-power-live.possible{border-color:rgba(217,171,69,.36);background:linear-gradient(145deg,rgba(93,70,28,.88),rgba(47,40,27,.96))}
.home-power-live.inactive{border-color:rgba(127,148,168,.26)}
.home-power-live-head{display:flex;align-items:center;gap:10px;min-width:0}.home-power-live-head .power-status-dot{flex:0 0 auto;margin:0}.home-power-live-head div{min-width:0}.home-power-live-head small{display:block;color:#86a7c3;font-size:9px;font-weight:900;letter-spacing:.12em}.home-power-live-head strong{display:block;margin-top:2px;color:#fff;font-size:17px;line-height:1.15;letter-spacing:-.02em}.home-power-live.off .power-status-dot{background:#ff626f;box-shadow:0 0 0 5px rgba(255,98,111,.1)}.home-power-live.possible .power-status-dot{background:#e9b94d;box-shadow:0 0 0 5px rgba(233,185,77,.1)}
.home-power-live p{margin:9px 0 0;color:#c5d5e3;font-size:11px;line-height:1.45}.home-power-live-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px}.home-power-live-foot>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#91abc0;font-size:10px}.home-power-live-foot button{flex:0 0 auto;min-height:34px;padding:0 11px;border:0;border-radius:11px;background:rgba(255,255,255,.11);color:#fff;font:inherit;font-size:10px;font-weight:900}
@media(max-width:360px){.home-power-live{margin-left:12px;margin-right:12px;max-width:calc(100vw - 24px)}.home-power-live-foot{align-items:flex-start;flex-direction:column}.home-power-live-foot button{width:100%}}
