body{-webkit-font-smoothing:anliased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--text:#e8e8e8;--text-muted:#8e9499;--background-dark:#0f101a;--background-med:#1c1d2a;--background-light:#2a2b3a;--border-color:#3a3b4a;--accent-gradient:linear-gradient(90deg,#4e80ff 0%,#fa6e8a 100%);--accent-blue:#4e80ff;--accent-pink:#fa6e8a;--accent-red:#ff4646;--accent-yellow:#fbbc04;--accent-green:#34a853;--font-family:"Google Sans Display",sans-serif;--border-radius-sm:8px;--border-radius-md:16px;--border-radius-lg:24px;--border-radius-full:999px;--card-header:#2e96ff;--card-border:#217bfe;--card-background:#13151a;--card-border-radius:16px;--breakpoint-md:768px;--breakpoint-lg:1024px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--background-dark);color:var(--text);font-family:Google Sans Display,sans-serif}:root{background:var(--background-dark);color:var(--text);font-family:var(--font-family)}h1,h2,h3,h4,h5,h6{color:#fff;font-weight:500}li{list-style:none}input,textarea{font-family:var(--font-family);background:var(--background-med);color:#fff;border:1px solid var(--border-color);resize:none;-webkit-user-select:text;user-select:text;border-radius:var(--border-radius-sm);outline:none;padding:12px;font-size:16px}input::placeholder,textarea::placeholder{-webkit-user-select:none;user-select:none;color:var(--text-muted)}input:focus,textarea:focus{border-color:var(--accent-blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-blue)30%,transparent)}select{border:1px solid var(--border-color);background:var(--background-med);color:#fff;border-radius:var(--border-radius-sm);cursor:pointer;accent-color:var(--text);padding:10px;font-family:inherit;font-size:16px}select:focus-visible{outline:none}button{font-family:var(--font-family);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--border-radius-full);background:0 0;border:none;justify-content:center;align-items:center;gap:5px;padding:10px 20px;font-size:16px;transition:all .2s ease-in-out;display:flex}button.primary{background:var(--accent-blue)}.button{background:var(--background-light);border-radius:var(--border-radius-full);color:var(--text);justify-content:center;align-items:center;gap:8px;padding:10px 16px;display:inline-flex}.button:hover{filter:brightness(1.2)}.button .icon{font-size:1.2em}button:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}button[disabled]{opacity:.5;cursor:not-allowed}button .icon{display:block}.icon{font-variation-settings:"FILL" 1;font-family:Material Symbols Outlined;font-weight:300;line-height:1}.hidden{display:none}header{z-index:999;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;padding:20px;display:grid;position:fixed}header>*{pointer-events:auto}.header-left,.header-right{display:flex}.header-right{justify-content:flex-end;gap:12px;position:relative}.header-center{text-align:center}.header-center h1{color:#fff;font-size:20px;font-weight:500}.header-center p{color:var(--text-muted);font-size:14px}.header-button{background:var(--background-med);border-radius:50%;width:44px;height:44px;padding:0;font-size:24px}.user-avatar{background:var(--accent-pink);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-weight:500;display:flex}.user-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.streaming-console{background:var(--background-dark);color:var(--text-muted);width:100vw;height:100vh;display:flex;overflow:hidden}.streaming-console .disabled{pointer-events:none;opacity:.6}.streaming-console main{flex-direction:column;flex-grow:1;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.streaming-console .main-app-area{justify-content:center;align-items:center;width:100%;max-width:100%;height:100vh;display:flex;overflow-y:auto}.action-button{background:var(--background-light);color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:24px;transition:all .2s ease-in-out;display:flex}.action-button:hover{filter:brightness(1.2)}.control-tray{z-index:12;border-radius:var(--border-radius-full);background:var(--background-med);border:1px solid var(--border-color);justify-content:center;align-items:center;gap:16px;padding:8px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.control-tray .connection-container{justify-content:center;align-items:center;min-width:120px;height:64px;display:flex}.control-tray .text-indicator{color:var(--text-muted);align-items:center;gap:6px;font-size:14px;font-weight:500;transition:color .2s ease-in-out;display:flex}.control-tray .connection-container.connected .text-indicator{color:var(--accent-blue)}.control-tray .text-indicator .material-symbols-outlined{animation:1.5s ease-in-out infinite pulse}.control-tray .connection-container:not(.connected) .text-indicator .material-symbols-outlined{animation:1s linear infinite spin}@keyframes pulse{0%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}to{opacity:.7;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.floating-chat-button{z-index:11;background:var(--background-light);width:56px;height:56px;color:var(--text);border:1px solid var(--border-color);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:24px;transition:all .2s ease-in-out;display:flex;position:fixed;bottom:120px;right:24px;box-shadow:0 4px 12px #0003}.floating-chat-button:hover{filter:brightness(1.2);transform:translateY(-2px);box-shadow:0 6px 16px #00000040}.floating-store-button{z-index:11;color:#fff;border:1px solid var(--accent-blue);cursor:pointer;background:linear-gradient(135deg,#4e80ff 0%,#6b95ff 100%);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:24px;transition:all .2s ease-in-out;display:flex;position:fixed;bottom:190px;right:24px;box-shadow:0 4px 12px #4e80ff66}.floating-store-button:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 6px 16px #4e80ff80}.keynote-companion{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.modalShroud{z-index:9999;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modalShroud .modal{background:var(--background-med);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);width:100%;max-width:500px;max-height:90vh;margin:20px;padding:24px;position:relative;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.modalClose{color:#fff;background:var(--background-light);z-index:10;width:40px;height:40px;padding:0;font-size:24px;position:absolute;top:16px;left:16px}.userSettings{flex-direction:column;gap:20px;display:flex}.userSettings p{color:var(--text-muted);font-size:16px;line-height:1.5}form{flex-direction:column;gap:20px;display:flex}form .largeInput{border:none;border-bottom:1px solid var(--border-color);background:0 0;border-radius:0;padding:8px 0;font-size:24px}form .largeInput:focus{box-shadow:none}form>div,form label,form details div{-webkit-user-select:none;user-select:none;flex-direction:column;gap:10px;display:flex}.colorPicker{flex-wrap:wrap;gap:10px;display:flex}.colorPicker li{border-radius:50%;width:35px;height:35px;transition:all .2s}.colorPicker li.active{outline:3px solid var(--text);outline-offset:2px}.colorPicker li button{cursor:pointer;border:none;border-radius:50%;width:100%;height:100%;padding:0}.editAgent{flex-direction:column;gap:30px;display:flex}.voicePicker{align-items:center;gap:10px;display:flex}.error-screen{color:#fff;z-index:99991;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:48px;width:100%;height:100dvh;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.error-screen .close-button{color:#fff;font-size:24px}.modal.burger-menu-modal{border-radius:0;justify-content:flex-start;align-items:flex-start;width:100%;max-width:100%;height:100%;max-height:100dvh;margin:0;padding:0;animation:.3s ease-out slideInFromLeft}@keyframes slideInFromLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.burger-menu-modal .modalContent{width:100%;height:100%;padding:0}.burger-menu-container{height:100%;display:flex}.burger-menu-nav{background:var(--background-dark);border-right:1px solid var(--border-color);flex-shrink:0;width:320px;padding:80px 20px 20px}.burger-menu-nav ul{flex-direction:column;gap:12px;display:flex}.burger-menu-nav li{cursor:pointer;letter-spacing:.01em;color:var(--text-muted);background:var(--background-med);border:1px solid #0000;border-radius:12px;align-items:center;gap:16px;padding:16px 20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:15px;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000001a}.burger-menu-nav li:before{content:"";background:var(--accent-blue);width:3px;height:100%;transition:transform .25s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0;transform:scaleY(0)}.burger-menu-nav li:hover{background:var(--background-light);color:var(--text);border-color:var(--border-color);transform:translate(4px);box-shadow:0 4px 12px #00000026}.burger-menu-nav li.active{background:linear-gradient(135deg,var(--accent-blue)0%,#2563eb 100%);color:#fff;border-color:var(--accent-blue);transform:translate(4px);box-shadow:0 4px 16px #3b82f666}.burger-menu-nav li.active:before{transform:scaleY(1)}.burger-menu-nav li .material-symbols-outlined{font-size:26px;transition:transform .25s cubic-bezier(.4,0,.2,1)}.burger-menu-nav li:hover .material-symbols-outlined{transform:scale(1.1)}.burger-menu-nav li.active .material-symbols-outlined{transform:scale(1.05)}.burger-menu-content{flex-grow:1;height:100%;padding:80px 24px 24px;overflow-y:auto}.history-view,.settings-view{flex-direction:column;gap:16px;display:flex}.history-view p,.settings-view p{color:var(--text-muted)}.history-tabs{border-bottom:2px solid var(--border-color);gap:8px;margin-bottom:20px;padding-bottom:2px;display:flex}.history-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:6px;margin-bottom:-2px;padding:10px 16px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.history-tab:hover{color:var(--text);background:var(--background-light)}.history-tab.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.history-tab .material-symbols-outlined{font-size:20px}.history-empty{text-align:center;color:var(--text-muted);padding:40px 20px}.history-list{flex-direction:column;gap:8px;display:flex}.history-item{background:var(--background-light);border-radius:var(--border-radius-md);border:1px solid var(--border-color);align-items:center;gap:16px;padding:12px 16px;display:flex}.history-item.transaction{border-left:3px solid var(--accent-blue)}.history-item.transaction .history-item-icon{background:#3b82f61a}.history-item.transaction .history-item-icon .material-symbols-outlined{color:var(--accent-blue)}.history-item-icon{background:var(--background-med);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.history-item-icon .icon{color:var(--text-muted);font-size:22px}.history-item-content{flex-grow:1}.history-item-action{color:var(--text);font-size:15px}.history-item-action strong{color:#fff;font-weight:500}.history-item-time{color:var(--text-muted);font-size:13px}.history-item-cost{text-align:right;flex-shrink:0}.history-item-cost span{color:var(--text-muted);font-size:12px}.history-item-cost p{color:var(--accent-green);font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:14px;font-weight:500}.settings-list{flex-direction:column;gap:8px;margin-top:16px;display:flex}.settings-list li{background:var(--background-light);border-radius:var(--border-radius-md);cursor:pointer;transition:background-color .2s}.settings-list li:hover{background-color:var(--background-med)}.setting-item{align-items:center;gap:16px;padding:16px;display:flex}.setting-item .icon{color:var(--text-muted);font-size:28px}.setting-text{flex-grow:1}.setting-title{color:var(--text);font-weight:500;display:block}.setting-desc{color:var(--text-muted);font-size:14px}.setting-item .icon.chevron{color:var(--text-muted);font-variation-settings:"FILL" 0}.language-options{background:var(--background-dark);border-radius:var(--border-radius-md);margin:8px 16px;padding:8px}.language-option{border-radius:var(--border-radius-sm);cursor:pointer;justify-content:space-between;align-items:center;padding:12px 16px;transition:background-color .2s;display:flex}.language-option:hover{background-color:var(--background-light)}.language-option.active{background-color:color-mix(in srgb,var(--accent-blue)15%,var(--background-light));color:var(--accent-blue)}.language-option .language-name{font-size:14px;font-weight:500}.language-option .material-symbols-outlined{color:var(--accent-blue);font-size:20px}.smart-home-modal-container{width:90vw;max-width:1100px;height:90vh;max-height:900px}.tariff-modal-container{width:90vw;max-width:1400px;height:90vh;max-height:95vh}.smart-home-view{flex-direction:column;height:100%;display:flex}.smart-home-view .modal-header{text-align:center;margin-bottom:24px}.smart-home-modal-container .smart-home-view .modal-header{padding-top:24px}.smart-home-view h2{color:#fff;margin-bottom:8px;font-size:24px}.smart-home-view p{text-align:center;color:var(--text-muted);margin-bottom:24px}.category-tabs{border-bottom:1px solid var(--border-color);scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;flex-shrink:0;gap:8px;margin-bottom:16px;display:flex;overflow-x:auto}.category-tabs::-webkit-scrollbar{display:none}.tab-button{border-radius:var(--border-radius-sm)var(--border-radius-sm)0 0;color:var(--text-muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-bottom:none;padding:10px 16px}.tab-button.active{color:var(--accent-blue);background:var(--background-light);border-color:var(--border-color);font-weight:500}.device-grid{flex-grow:1;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding:4px;display:grid;overflow-y:auto}@media (min-width:1400px){.device-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1025px) and (max-width:1399px){.device-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:769px) and (max-width:1024px){.device-grid{grid-template-columns:repeat(2,1fr);gap:14px}}.device-card{background-color:var(--background-light);border-radius:var(--border-radius-md);border:1px solid var(--border-color);flex-direction:column;justify-content:space-between;gap:8px;min-height:150px;max-height:180px;padding:12px;transition:all .2s ease-in-out;display:flex;overflow:hidden}.device-card.is-on{background-color:color-mix(in srgb,var(--accent-blue)15%,var(--background-light));border-color:color-mix(in srgb,var(--accent-blue)40%,transparent)}.device-info{flex-shrink:0;align-items:flex-start;gap:12px;min-height:0;display:flex}.device-info .icon{color:var(--text-muted);flex-shrink:0;margin-top:2px;font-size:24px}.device-card.is-on .icon{color:var(--accent-blue)}.device-info>div{flex:1;min-width:0;overflow:hidden}.device-name{color:#fff;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-height:2.6em;font-size:14px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.device-status{color:var(--text-muted);white-space:nowrap;margin-top:2px;font-size:13px}.device-controls{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.device-schedule-info{background-color:color-mix(in srgb,var(--background-dark)50%,transparent);border-radius:var(--border-radius-sm);color:var(--text);flex-shrink:0;align-items:center;gap:8px;min-height:32px;margin-top:auto;padding:6px 10px;font-size:12px;display:flex}.device-schedule-info>span:not(.icon){text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.device-schedule-info .icon.small{font-variation-settings:"FILL" 0;color:var(--text-muted);flex-shrink:0;font-size:16px}.payment-stream-info{background-color:color-mix(in srgb,var(--background-dark)50%,transparent);border-radius:var(--border-radius-sm);color:var(--text);flex-shrink:0;align-items:center;gap:8px;min-height:32px;padding:6px 10px;font-size:12px;display:flex}.payment-stream-info .icon{color:var(--accent-green);flex-shrink:0;font-size:20px}.payment-stream-info .icon.streaming{animation:1.5s ease-in-out infinite pulse}.stream-text{flex:1;min-width:0;line-height:1.3;overflow:hidden}.stream-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.stream-amount{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:11px;overflow:hidden}.device-wallet-info{background-color:color-mix(in srgb,var(--background-dark)40%,transparent);border-radius:var(--border-radius-sm);color:var(--text-secondary);border:1px solid color-mix(in srgb,var(--accent-blue)30%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:center;gap:6px;margin-top:4px;padding:6px 8px;font-family:Courier New,monospace;font-size:11px;display:flex}.device-wallet-info .wallet-address-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);letter-spacing:.5px;flex:1;font-weight:600;overflow:hidden}.device-wallet-info .copy-icon-btn{cursor:pointer;color:var(--accent-blue);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:3px;transition:all .2s;display:flex}.device-wallet-info .copy-icon-btn:hover{color:var(--accent-cyan);background-color:color-mix(in srgb,var(--accent-blue)15%,transparent);transform:scale(1.1)}.device-wallet-info .copy-icon-btn .material-symbols-outlined{font-size:16px}.device-balance-info{background-color:color-mix(in srgb,var(--background-dark)50%,transparent);border-radius:var(--border-radius-sm);color:var(--text-muted);border-left:3px solid var(--accent-blue);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:center;gap:8px;margin-top:8px;margin-bottom:4px;padding:8px 12px;font-size:12px;display:flex}.device-balance-info .balance-icon{color:var(--accent-blue);font-size:16px;animation:2s infinite pulse}.device-balance-info .balance-text{color:var(--text);letter-spacing:.5px;font-family:Courier New,monospace;font-size:13px;font-weight:600}.cancel-schedule-button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-left:auto;padding:0;display:flex}.cancel-schedule-button:hover{background:color-mix(in srgb,var(--text-muted)20%,transparent);color:var(--text)}.cancel-schedule-button .icon.small{font-size:18px}.toggle-switch{cursor:pointer;width:50px;height:28px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:var(--background-dark);border-radius:var(--border-radius-full);transition:all .4s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:all .4s;position:absolute;bottom:4px;left:4px}input:checked+.slider{background:var(--accent-gradient)}input:checked+.slider:before{transform:translate(22px)}.tariff-view{flex-direction:column;gap:24px;height:100%;display:flex}.tariff-header h2{color:#fff;font-size:28px}.tariff-header p{color:var(--text-muted);margin-top:4px;font-size:16px}.tariff-container{flex-grow:1;grid-template-columns:1fr 1fr;gap:24px;display:grid}@media (min-width:769px) and (max-width:1024px){.modal.smart-home-modal-container{width:95vw;max-width:900px;height:90vh}.modal.tariff-modal-container{width:95vw;max-width:1000px;height:90vh}.tariff-container{grid-template-columns:1fr 1fr;gap:20px}.tariff-calculator-section,.tariff-insights-section{padding:20px}.insights-grid{grid-template-columns:repeat(3,1fr);gap:12px}.status-card{flex-direction:column;align-items:flex-start;gap:8px;padding:12px}.tariff-header h2{font-size:24px}}.tariff-calculator-section,.tariff-insights-section{background:var(--background-light);border-radius:var(--border-radius-lg);border:1px solid var(--border-color);flex-direction:column;gap:20px;padding:24px;display:flex}.tariff-calculator-section h3,.tariff-insights-section h3{border-bottom:1px solid var(--border-color);padding-bottom:12px;font-size:20px}.tariff-form{flex-direction:column;gap:16px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--text-muted);font-size:14px;font-weight:500}.form-group input{width:100%}.tariff-form .button{margin-top:8px;padding:12px;font-size:16px}.tariff-results{flex-direction:column;gap:12px;margin-top:16px;display:flex}.result-card{background:var(--background-med);border-radius:var(--border-radius-md);text-align:center;border:1px solid var(--border-color);padding:16px}.result-value{color:var(--accent-blue);font-size:28px;font-weight:500;display:block}.result-label{color:var(--text-muted);font-size:14px}.result-card-group{grid-template-columns:1fr 1fr;gap:12px;display:grid}.result-card.small .result-value{font-size:22px}.insights-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.status-card{background:var(--background-med);border-radius:var(--border-radius-md);border:1px solid var(--border-color);align-items:center;gap:12px;padding:16px;display:flex}.status-card .icon{color:var(--accent-blue);font-size:28px}.status-text{flex-direction:column;display:flex}.status-title{color:var(--text-muted);font-size:13px}.status-value{color:#fff;font-size:18px;font-weight:500}.recommendation-card{background:var(--background-med);border-radius:var(--border-radius-md);border-left:4px solid var(--accent-yellow);padding:16px}.warning-message{color:var(--accent-yellow);align-items:center;gap:10px;margin-bottom:8px;font-size:14px;display:flex}.recommendation-message{color:var(--text);align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;display:flex}.recommendation-card .icon{margin-top:2px;font-size:20px}.calendar-container{margin-top:auto;padding-top:16px}.calendar-container h4{text-align:center;margin-bottom:12px;font-weight:500}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-day,.calendar-header{border-radius:var(--border-radius-sm);justify-content:center;align-items:center;height:36px;font-size:14px;display:flex}.calendar-header{color:var(--text-muted);font-weight:500}.calendar-day{background:var(--background-med);color:var(--text)}.calendar-day.blank{background:0 0}.calendar-day.optimal-day{background:color-mix(in srgb,var(--accent-green)20%,var(--background-med));border:1px solid var(--accent-green)}.calendar-day.current-day{background:var(--accent-blue);color:#fff;font-weight:500}.calendar-legend{color:var(--text-muted);justify-content:center;gap:16px;margin-top:12px;font-size:12px;display:flex}.legend-item{align-items:center;gap:6px;display:flex}.legend-color{border-radius:3px;width:12px;height:12px}.legend-color.optimal{background:var(--accent-green)}@media (max-width:768px){.tariff-container{grid-template-columns:1fr}.insights-grid{grid-template-columns:1fr;gap:12px}.result-card-group{grid-template-columns:1fr}.tariff-header h2{font-size:22px}.tariff-header p{font-size:14px}.tariff-calculator-section,.tariff-insights-section{padding:16px}.device-grid{grid-template-columns:repeat(2,1fr);gap:12px}.device-card{min-height:140px;max-height:170px;padding:10px}.device-name{font-size:13px}.device-status{font-size:12px}.payment-stream-info,.device-schedule-info{padding:5px 8px;font-size:11px}.stream-title{font-size:11px}.stream-amount{font-size:10px}.modal.smart-home-modal-container,.modal.tariff-modal-container{border-radius:0;width:100%;height:100%;max-height:100dvh;margin:0;padding:60px 16px 16px}.burger-menu-modal{max-width:360px}.burger-menu-nav{width:100%;padding-top:70px;padding-left:16px;padding-right:16px}.burger-menu-nav li{padding:14px 18px;font-size:14px}.burger-menu-nav li .material-symbols-outlined{font-size:24px}.burger-menu-content,.burger-menu-container.subview-active .burger-menu-nav{display:none}.burger-menu-container.subview-active .burger-menu-content{width:100%;padding:70px 16px 16px;display:block}.smart-home-view .modal-header{margin-bottom:16px;padding-top:0}.smart-home-view h2{font-size:20px}.smart-home-view p{margin-bottom:16px;font-size:14px}.category-tabs{gap:4px;padding-bottom:8px}.tab-button{padding:10px 8px;font-size:13px}.insights-grid{grid-template-columns:1fr}.history-item{flex-direction:column;align-items:flex-start;gap:8px}.history-item-cost{text-align:left;margin-left:56px}}@media (max-width:480px){.device-grid{grid-template-columns:1fr;gap:10px}.device-card{min-height:130px;max-height:160px;padding:10px}.device-info .icon{font-size:22px}.device-name{font-size:13px}}.modal.chat-modal{width:90vw;max-width:1200px;height:90vh;max-height:850px;padding:0;display:flex;overflow:hidden}.modal.chat-modal .modalContent{width:100%;height:100%}.chat-container{width:100%;height:100%;display:flex}.chat-sidebar{background:var(--background-dark);border-right:1px solid var(--border-color);flex-direction:column;flex-shrink:0;width:320px;min-height:0;display:flex;overflow:hidden}.chat-sidebar-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px;display:flex}.chat-sidebar-header h3{font-size:20px}.new-chat-button{background:var(--background-light);width:36px;height:36px;padding:0;font-size:22px}.chat-list{flex-grow:1;min-height:0;padding:8px;overflow:hidden auto}.chat-list-item{border-radius:var(--border-radius-md);cursor:pointer;align-items:center;gap:12px;padding:12px;transition:background-color .2s;display:flex}.chat-list-item:hover{background:var(--background-light)}.chat-list-item.active{background:var(--accent-blue)}.chat-avatar{background:var(--accent-pink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:500;display:flex}.chat-list-item-content{overflow:hidden}.chat-name{white-space:nowrap;text-overflow:ellipsis;color:#fff;font-weight:500;overflow:hidden}.chat-list-item.active .chat-name{color:#fff}.chat-list-item.casa-chat{border:2px solid var(--accent-green);background:linear-gradient(135deg,#10b98126,#06b6d426)}.chat-list-item.casa-chat:hover{background:linear-gradient(135deg,#10b98140,#06b6d440)}.chat-list-item.casa-chat.active{background:linear-gradient(135deg,var(--accent-green),var(--accent-blue));border-color:var(--accent-green)}.chat-list-item.casa-chat .chat-avatar{background:linear-gradient(135deg,var(--accent-green),var(--accent-blue));font-size:24px;box-shadow:0 0 20px #10b98166}.casa-badge{color:var(--accent-green);vertical-align:middle;align-items:center;margin-left:6px;font-size:18px;display:inline-flex}.chat-list-item.active .casa-badge{color:#fff}.pin-icon{color:var(--accent-green);margin-left:auto;font-size:18px}.chat-list-item.active .pin-icon{color:#fff}.chat-view{background:var(--background-med);flex-direction:column;flex-grow:1;min-height:0;display:flex;position:relative;overflow:hidden}.chat-view.placeholder{text-align:center;color:var(--text-muted);justify-content:center;align-items:center}.chat-view.placeholder .icon.large{margin-bottom:16px;font-size:64px}.chat-view.placeholder h2{margin-bottom:8px;font-size:22px}.chat-header{border-bottom:1px solid var(--border-color);background:var(--background-dark);z-index:10;flex-shrink:0;padding:16px 24px;position:relative}.chat-header-info h3{color:#fff;align-items:center;gap:8px;font-size:18px;display:flex}.chat-header-info p{color:var(--text-muted);font-size:14px}.casa-header-badge{color:var(--accent-green);align-items:center;font-size:20px;animation:2s ease-in-out infinite pulse-green;display:inline-flex}.online-badge{color:var(--accent-green);margin-left:4px;font-size:10px}@keyframes pulse-green{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.message-list{flex-direction:column;flex:1;gap:4px;min-height:0;max-height:100%;padding:16px;display:flex;overflow:hidden auto}.message-wrapper{gap:12px;max-width:75%;display:flex}.message-wrapper.self{flex-direction:row-reverse;align-self:flex-end}.message-wrapper.other{align-self:flex-start}.message-avatar{background:var(--background-light);width:36px;height:36px;color:var(--text);border-radius:50%;flex-shrink:0;justify-content:center;align-self:flex-end;align-items:center;font-weight:500;display:flex}.message-content{flex-direction:column;gap:4px;display:flex}.message-wrapper.self .message-content{align-items:flex-end}.message-sender-name{color:var(--text-muted);padding:0 8px;font-size:13px}.message-bubble{border-radius:var(--border-radius-lg);padding:12px 16px;font-size:15px;line-height:1.5}.message-wrapper.self .message-bubble{background:var(--accent-blue);color:#fff;border-bottom-right-radius:var(--border-radius-sm)}.message-wrapper.other .message-bubble{background:var(--background-light);border-bottom-left-radius:var(--border-radius-sm)}.message-input-form{border-top:1px solid var(--border-color);background:var(--background-dark);flex-direction:column;flex-shrink:0;gap:12px;padding:16px 24px;display:flex}.casa-input-indicator{border:1px solid var(--accent-green);border-radius:var(--border-radius-md);color:var(--accent-green);background:linear-gradient(135deg,#10b98133,#06b6d433);align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;display:flex}.casa-input-indicator .material-symbols-outlined{font-size:18px}.connection-indicator{border-radius:var(--border-radius-md);align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:500;display:flex}.connection-indicator.offline{border:1px solid var(--accent-red,#ef4444);color:var(--accent-red,#ef4444);background:#ef444433}.connection-indicator.online{border:1px solid var(--accent-green);color:var(--accent-green);background:#10b98133}.connection-indicator .material-symbols-outlined{font-size:16px}.typing-indicator{color:var(--text-muted);align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-style:italic;display:flex}.typing-indicator .dots{gap:4px;display:flex}.typing-indicator .dot{background:var(--text-muted);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite typing-bounce}.typing-indicator .dot:first-child{animation-delay:0s}.typing-indicator .dot:nth-child(2){animation-delay:.2s}.typing-indicator .dot:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.message-input-form>div:last-child{gap:16px;display:flex}.message-input-form input{border-radius:var(--border-radius-full);flex-grow:1}.message-input-form button{background:var(--accent-blue);width:48px;height:48px;padding:0}.chat-list::-webkit-scrollbar{width:8px}.message-list::-webkit-scrollbar{width:8px}.chat-list::-webkit-scrollbar-track{background:var(--background-dark);border-radius:4px}.message-list::-webkit-scrollbar-track{background:var(--background-dark);border-radius:4px}.chat-list::-webkit-scrollbar-thumb{background:var(--background-light);border-radius:4px}.message-list::-webkit-scrollbar-thumb{background:var(--background-light);border-radius:4px}.chat-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.message-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.modal.new-chat-modal{max-width:500px}.new-chat-container{flex-direction:column;gap:16px;display:flex}.new-chat-container h3{text-align:center;font-size:22px}.invite-form{gap:8px;display:flex}.invite-form input{flex-grow:1}.invite-form button{padding:10px 16px}.contact-list-header{color:var(--text-muted);border-bottom:1px solid var(--border-color);padding-bottom:8px;font-size:14px;font-weight:500}.contact-list{flex-direction:column;gap:4px;max-height:250px;display:flex;overflow-y:auto}.contact-list li{border-radius:var(--border-radius-sm);cursor:pointer;align-items:center;gap:12px;padding:10px;display:flex}.contact-list li:hover{background:var(--background-light)}.contact-avatar{background:var(--background-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-weight:500;display:flex}.group-name-input{margin-top:8px}.create-chat-button{width:100%;margin-top:8px;padding:12px}.chat-header{z-index:10;align-items:center;gap:8px;display:flex;position:relative}.back-to-chats-button{background:var(--background-light);width:40px;height:40px;padding:0;display:none}.agent-chat-button{z-index:10;background:0 0;border:none;border-radius:50%;width:48px;height:48px;padding:0;position:absolute;bottom:100px;right:24px;box-shadow:0 2px 8px #0003}.agent-chat-button:hover{background:0 0;transform:scale(1.05)}.agent-chat-button .basic-face{width:100%;height:100%}.modal.agent-chat-modal{flex-direction:column;max-width:600px;height:70vh;padding:0;display:flex}.agent-chat-modal .modalContent{flex-direction:column;width:100%;height:100%;display:flex}.agent-chat-header{border-bottom:1px solid var(--border-color);text-align:center;padding:16px 24px}.agent-chat-header h3{justify-content:center;align-items:center;gap:8px;font-size:20px;display:flex}.agent-chat-messages{flex-direction:column;flex-grow:1;gap:16px;padding:24px;display:flex;overflow-y:auto}.agent-chat-messages .message-wrapper.agent .message-bubble{background:var(--background-light);border-bottom-left-radius:var(--border-radius-sm);white-space:pre-wrap}.agent-chat-messages .message-wrapper.agent .message-avatar{background:var(--accent-pink)}.loading-indicator{justify-content:center;align-items:center;padding:16px;display:flex}.spinner{border:3px solid var(--border-color);border-top-color:var(--accent-blue);border-radius:50%;width:24px;height:24px;animation:1s linear infinite spin}.agent-chat-input-form{border-top:1px solid var(--border-color);background:var(--background-dark);gap:16px;padding:16px 24px;display:flex}.agent-chat-input-form textarea{border-radius:var(--border-radius-md);flex-grow:1;height:50px}.agent-chat-input-form button{background:var(--accent-blue);align-self:flex-end;width:48px;height:48px;padding:0}.wallet-dropdown{background:var(--background-med);border:1px solid var(--border-color);border-radius:var(--border-radius-md);z-index:1000;width:300px;animation:.2s ease-out fadeIn;position:absolute;top:60px;right:0;overflow:hidden;box-shadow:0 8px 24px #0000004d}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.wallet-header{border-bottom:1px solid var(--border-color);padding:16px}.wallet-header h4{color:#fff;margin-bottom:8px;font-size:16px;font-weight:500}.wallet-address-container{align-items:center;gap:8px;margin-top:8px;display:flex}.wallet-address-button{background:var(--background-light);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);cursor:pointer;flex:1;align-items:center;gap:8px;padding:8px 12px;transition:all .2s;display:flex}.wallet-address-button:hover{background:var(--background-dark);border-color:var(--accent-blue)}.wallet-address-text{color:var(--text-muted);text-align:left;flex:1;font-family:Courier New,monospace;font-size:13px}.copy-address-button{background:var(--background-light);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);cursor:pointer;color:var(--text-muted);justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.copy-address-button:hover{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.wallet-balances-header{padding:12px 16px 8px}.wallet-balances-header h5{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:500}.wallet-balance-list{flex-direction:column;padding:8px;display:flex}.balance-item{border-radius:var(--border-radius-sm);justify-content:space-between;align-items:center;padding:12px 8px;display:flex}.balance-item:hover{background:var(--background-light)}.balance-info{align-items:center;gap:12px;display:flex}.balance-item .icon{color:var(--accent-yellow);font-size:24px}.balance-label{color:var(--text);font-size:15px}.balance-value{color:#fff;font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;font-size:15px;font-weight:500}.balance-item-divider{background:var(--border-color);height:1px;margin:8px 0}.balance-icon{border-radius:50%;width:24px;height:24px}.balance-icon.usdc{background-color:#2775ca}.balance-icon.eth{background-color:#627eea}.balance-icon.sol{background-color:#9945ff}.account-dropdown{background:var(--background-med);border:1px solid var(--border-color);border-radius:var(--border-radius-md);z-index:1000;width:340px;max-height:80vh;animation:.2s ease-out fadeIn;position:absolute;top:60px;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000004d}.account-dropdown::-webkit-scrollbar{width:6px}.account-dropdown::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.account-dropdown::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.account-dropdown::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.transaction-confirmation{text-align:center;flex-direction:column;gap:24px;padding-top:24px;display:flex}.transaction-confirmation h3{font-size:22px}.transaction-confirmation .transaction-details{color:var(--text);font-size:18px;line-height:1.5}.transaction-confirmation .transaction-buttons{justify-content:center;gap:16px;display:flex}.transaction-confirmation .transaction-buttons .button{padding:12px 24px;font-size:16px}@media (min-width:769px) and (max-width:1024px){.modal.chat-modal{width:95vw;max-width:900px;height:85vh}.chat-sidebar{width:280px}}@media (max-width:768px){.modal.chat-modal{border-radius:0;width:100%;max-width:100%;height:100%;max-height:100dvh;margin:0}}@media (max-width:600px){.back-to-chats-button{display:flex}.chat-container:not(.chat-active) .chat-view,.chat-container.chat-active .chat-sidebar{display:none}}.landing-page{min-height:100vh;color:var(--text);background:linear-gradient(135deg,#0f101a 0%,#1c1d2a 100%);overflow-x:hidden}.hero-section{background:radial-gradient(circle at 30%,#4e80ff1a 0%,#0000 50%),radial-gradient(circle at 70%,#fa6e8a1a 0%,#0000 50%);justify-content:center;align-items:center;min-height:90vh;padding:80px 20px;display:flex}.hero-content{grid-template-columns:1fr 1fr;align-items:center;gap:60px;width:100%;max-width:1200px;display:grid}.hero-text{max-width:600px}.hero-title{margin-bottom:24px;font-size:64px;font-weight:800;line-height:1.1}.gradient-text{background:linear-gradient(90deg,#4e80ff 0%,#fa6e8a 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-subtitle{color:var(--text);margin-bottom:16px;font-size:28px;font-weight:600}.hero-description{color:var(--text-muted);margin-bottom:40px;font-size:18px;line-height:1.6}.cta-button{color:#fff;border-radius:var(--border-radius-full);cursor:pointer;background:linear-gradient(90deg,#4e80ff 0%,#6b95ff 100%);border:none;padding:18px 40px;font-size:18px;font-weight:600;transition:all .3s;box-shadow:0 10px 30px #4e80ff4d}.cta-button:hover{transform:translateY(-2px);box-shadow:0 15px 40px #4e80ff66}.hero-badges{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.badge{border-radius:var(--border-radius-full);background:#4e80ff1a;border:1px solid #4e80ff4d;padding:8px 16px;font-size:14px;font-weight:500}.hero-illustration{justify-content:center;align-items:center;display:flex}.device-grid-preview{grid-template-columns:repeat(3,1fr);gap:16px;max-width:400px;display:grid}.device-card-preview{background:var(--background-light);border:1px solid var(--border-color);border-radius:var(--border-radius-md);text-align:center;padding:32px;font-size:48px;transition:all .3s}.device-card-preview:hover{border-color:var(--accent-blue);transform:translateY(-8px);box-shadow:0 10px 30px #4e80ff33}.features-section{max-width:1200px;margin:0 auto;padding:120px 20px}.section-title{text-align:center;margin-bottom:16px;font-size:48px;font-weight:800}.section-subtitle{color:var(--text-muted);text-align:center;margin-bottom:60px;font-size:20px}.features-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.feature-card{background:var(--background-light);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);text-align:center;padding:40px;transition:all .3s}.feature-card:hover{border-color:var(--accent-blue);transform:translateY(-8px);box-shadow:0 20px 50px #4e80ff26}.feature-icon{margin-bottom:24px;font-size:64px}.feature-title{margin-bottom:16px;font-size:24px;font-weight:700}.feature-description{color:var(--text-muted);font-size:16px;line-height:1.6}.how-it-works-section{background:var(--background-med);padding:120px 20px}.steps-container{justify-content:space-between;align-items:center;gap:40px;max-width:1000px;margin:0 auto;display:flex}.step{text-align:center;flex:1}.step-number{color:#fff;background:linear-gradient(135deg,#4e80ff,#6b95ff);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto 24px;font-size:28px;font-weight:800;display:flex}.step-title{margin-bottom:12px;font-size:24px;font-weight:700}.step-description{color:var(--text-muted);font-size:16px;line-height:1.6}.step-arrow{color:var(--accent-blue);flex-shrink:0;font-size:36px}.pricing-section{max-width:1200px;margin:0 auto;padding:120px 20px}.pricing-cards{grid-template-columns:repeat(3,1fr);gap:32px;margin-top:60px;display:grid}.pricing-card{background:var(--background-light);border:2px solid var(--border-color);border-radius:var(--border-radius-lg);text-align:center;padding:40px;transition:all .3s;position:relative}.pricing-card:hover{border-color:var(--accent-blue);transform:translateY(-8px)}.pricing-card.featured{border-color:var(--accent-blue);background:linear-gradient(135deg,#4e80ff1a,#6b95ff0d);transform:scale(1.05)}.badge-featured{color:#fff;border-radius:var(--border-radius-full);text-transform:uppercase;background:linear-gradient(90deg,#4e80ff,#6b95ff);padding:6px 20px;font-size:12px;font-weight:700;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.pricing-header h3{margin-bottom:16px;font-size:24px;font-weight:700}.price{color:var(--accent-blue);margin:20px 0;font-size:48px;font-weight:800}.price-small,.price-unit{color:var(--text-muted);font-size:20px;font-weight:600}.pricing-header p{color:var(--text-muted);margin-bottom:24px}.pricing-features{text-align:left;padding:0;list-style:none}.pricing-features li{border-bottom:1px solid var(--border-color);padding:12px 0;font-size:15px}.pricing-features li:last-child{border-bottom:none}.cta-section{text-align:center;background:linear-gradient(135deg,#4e80ff1a,#fa6e8a1a);padding:120px 20px}.cta-content{max-width:800px;margin:0 auto}.cta-title{margin-bottom:24px;font-size:48px;font-weight:800}.cta-description{color:var(--text-muted);margin-bottom:40px;font-size:20px}.cta-button-large{color:#fff;border-radius:var(--border-radius-full);cursor:pointer;background:linear-gradient(90deg,#4e80ff 0%,#fa6e8a 100%);border:none;padding:20px 50px;font-size:20px;font-weight:700;transition:all .3s;box-shadow:0 15px 40px #4e80ff4d}.cta-button-large:hover{transform:translateY(-3px);box-shadow:0 20px 50px #4e80ff66}.cta-note{color:var(--text-muted);margin-top:24px;font-size:14px}.landing-footer{background:var(--background-dark);padding:80px 20px 40px}.footer-content{grid-template-columns:repeat(4,1fr);gap:40px;max-width:1200px;margin:0 auto 40px;display:grid}.footer-section h3{margin-bottom:16px;font-size:20px;font-weight:700}.footer-section h4{margin-bottom:12px;font-size:16px;font-weight:600}.footer-section p{color:var(--text-muted);margin-bottom:12px}.footer-section a{color:var(--text-muted);margin-bottom:8px;text-decoration:none;transition:color .2s;display:block}.footer-section a:hover{color:var(--accent-blue)}.footer-bottom{text-align:center;border-top:1px solid var(--border-color);color:var(--text-muted);padding-top:40px}@media (max-width:1024px){.hero-content{grid-template-columns:1fr;gap:40px}.hero-title{font-size:48px}.hero-subtitle{font-size:24px}.features-grid,.pricing-cards{grid-template-columns:1fr}.footer-content{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.hero-title{font-size:36px}.hero-subtitle{font-size:20px}.section-title{font-size:32px}.steps-container{flex-direction:column}.step-arrow{transform:rotate(90deg)}.footer-content{grid-template-columns:1fr}.cta-title{font-size:32px}.device-grid-preview{grid-template-columns:repeat(2,1fr)}}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;background:#000000d9;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-overlay .modal{background:var(--background-light);border-radius:var(--border-radius-lg);width:100%;max-width:500px;max-height:90vh;animation:.3s ease-out modalSlideUp;overflow-y:auto;box-shadow:0 20px 60px #00000080}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-overlay .modal-header{border-bottom:1px solid var(--border-color);text-align:center;padding:2rem 2rem 1rem}.modal-overlay .modal-content{padding:2rem}.modal-overlay input{transition:all .2s}.modal-overlay input:focus{border-color:var(--accent-blue);outline:none;box-shadow:0 0 0 3px #4e80ff1a}.modal-overlay button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000004d}.modal-overlay button:active{transform:translateY(0)}@media (max-width:600px){.modal-overlay{padding:10px}.modal-overlay .modal{max-height:95vh}.modal-overlay .modal-header{padding:1.5rem 1.5rem 1rem}.modal-overlay .modal-content{padding:1.5rem}}.store-modal .modal{width:95vw;max-width:1400px;height:90vh;padding:0;overflow:hidden}.store-container{flex-direction:column;height:100%;display:flex;overflow:hidden}.store-header{border-bottom:1px solid var(--border-color);background:var(--background-dark);flex-direction:column;flex-shrink:0;gap:12px;padding:24px;display:flex;position:relative}.store-header h2{align-items:center;gap:12px;margin-bottom:8px;font-size:28px;display:flex}.store-header p{color:var(--text-muted);margin:0}.cart-button{background:var(--accent-blue);border-radius:var(--border-radius-full);align-items:center;gap:8px;padding:12px 20px;font-weight:500;transition:all .2s;display:flex;position:absolute;top:24px;right:24px}.cart-button:hover{filter:brightness(1.1);transform:translateY(-2px)}.cart-badge{color:var(--accent-blue);background:#fff;border-radius:50%;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 6px;font-size:12px;font-weight:700;display:flex}.store-filters{border-bottom:1px solid var(--border-color);flex-shrink:0;padding:20px 24px}.search-bar{background:var(--background-dark);border-radius:var(--border-radius-md);border:1px solid var(--border-color);align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;transition:border-color .2s;display:flex}.search-bar:focus-within{border-color:var(--accent-blue)}.search-bar .material-symbols-outlined{color:var(--text-muted);font-size:20px}.search-bar input{color:var(--text);background:0 0;border:none;flex:1;padding:0}.category-tabs{scrollbar-width:thin;scrollbar-color:var(--border-color)transparent;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.category-tabs::-webkit-scrollbar{height:4px}.category-tabs::-webkit-scrollbar-track{background:0 0}.category-tabs::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.category-tab{background:var(--background-dark);border:1px solid var(--border-color);border-radius:var(--border-radius-md);white-space:nowrap;cursor:pointer;align-items:center;gap:8px;padding:10px 16px;font-size:14px;transition:all .2s;display:flex}.category-tab:hover{border-color:var(--accent-blue);background:var(--background-light)}.category-tab.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.category-tab .material-symbols-outlined{font-size:18px}.products-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-content:start;gap:20px;padding:24px;display:grid;overflow-y:auto}.product-card{background:var(--background-dark);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);flex-direction:column;transition:all .3s;display:flex;overflow:hidden}.product-card:hover{border-color:var(--accent-blue);transform:translateY(-4px);box-shadow:0 8px 24px #0000004d}.product-image{background:#1a1b2a;width:100%;height:220px;position:relative;overflow:hidden}.product-image img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.product-card:hover .product-image img{transform:scale(1.05)}.out-of-stock-badge{background:var(--accent-red);color:#fff;border-radius:var(--border-radius-sm);padding:6px 12px;font-size:12px;font-weight:600;position:absolute;top:12px;right:12px}.product-details{flex-direction:column;flex:1;padding:16px;display:flex}.product-brand{color:var(--accent-blue);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:12px;font-weight:600}.product-name{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:44px;margin-bottom:8px;font-size:16px;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.product-description{color:var(--text-muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.product-features{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.product-feature{color:var(--text);align-items:flex-start;gap:8px;font-size:12px;line-height:1.4;display:flex}.product-feature .material-symbols-outlined{color:var(--accent-green);flex-shrink:0;margin-top:1px;font-size:16px}.product-compatibility{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.compatibility-badge{background:var(--background-med);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-muted);padding:4px 8px;font-size:11px}.product-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;display:flex}.product-price{color:var(--accent-blue);font-size:24px;font-weight:700}.add-to-cart-button{background:var(--accent-blue);border-radius:var(--border-radius-md);align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.add-to-cart-button:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px)}.add-to-cart-button:disabled{background:var(--background-med);cursor:not-allowed;opacity:.5}.cart-view{flex-direction:column;flex:1;display:flex;overflow:hidden}.cart-items{flex:1;padding:24px;overflow-y:auto}.cart-item{background:var(--background-dark);border:1px solid var(--border-color);border-radius:var(--border-radius-md);align-items:center;gap:16px;margin-bottom:12px;padding:16px;transition:all .2s;display:flex}.cart-item:hover{border-color:var(--accent-blue)}.cart-item img{object-fit:cover;border-radius:var(--border-radius-sm);flex-shrink:0;width:80px;height:80px}.cart-item-details{flex:1;min-width:0}.cart-item-details h4{white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:16px;overflow:hidden}.cart-item-price{color:var(--accent-blue);font-size:14px;font-weight:600}.cart-item-quantity{background:var(--background-med);border-radius:var(--border-radius-sm);align-items:center;gap:12px;padding:6px;display:flex}.cart-item-quantity button{background:var(--background-light);border-radius:var(--border-radius-sm);width:32px;height:32px;padding:0;transition:all .2s}.cart-item-quantity button:hover{background:var(--accent-blue)}.cart-item-quantity span{text-align:center;min-width:24px;font-weight:600}.cart-item-remove{background:var(--background-med);border-radius:var(--border-radius-sm);color:var(--accent-red);padding:8px;transition:all .2s}.cart-item-remove:hover{background:var(--accent-red);color:#fff}.cart-summary{background:var(--background-dark);border-top:1px solid var(--border-color);flex-shrink:0;padding:24px}.cart-summary-row{justify-content:space-between;padding:12px 0;font-size:15px;display:flex}.cart-summary-row.cart-total{border-top:2px solid var(--border-color);color:var(--accent-blue);margin-top:8px;padding-top:16px;font-size:20px;font-weight:700}.checkout-buttons{gap:12px;margin-top:16px;display:flex}.checkout-buttons .button{flex:1;justify-content:center}.spinner-small{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;margin-right:8px;animation:.6s linear infinite spin}.payment-info{background:color-mix(in srgb,var(--accent-blue)10%,transparent);border:1px solid color-mix(in srgb,var(--accent-blue)30%,transparent);border-radius:var(--border-radius-sm);color:var(--text-muted);align-items:center;gap:8px;margin-top:16px;padding:12px;font-size:13px;display:flex}.payment-info .material-symbols-outlined{color:var(--accent-blue);flex-shrink:0;font-size:20px}.empty-cart{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:60px 24px;display:flex}.empty-cart .material-symbols-outlined{color:var(--text-muted);opacity:.5;font-size:80px}.empty-cart h3{font-size:24px}.empty-cart p{color:var(--text-muted)}.checkout-success{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:60px 24px;display:flex}.success-icon{color:var(--accent-green);font-size:80px;animation:.5s ease-out scaleIn}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.checkout-success h3{font-size:28px}.success-amount{color:var(--accent-blue);font-family:Courier New,monospace;font-size:32px;font-weight:700}.no-products{text-align:center;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:16px;padding:60px 24px;display:flex}.no-products .material-symbols-outlined{color:var(--text-muted);opacity:.5;font-size:80px}@media (max-width:1024px){.store-modal .modal{border-radius:0;width:100vw;max-width:100vw;height:100vh;max-height:100vh}.products-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding:16px}.product-image{height:200px}.store-header{padding:16px}.store-header h2{font-size:24px}}@media (max-width:768px){.store-modal .modal{border-radius:0;width:100vw;max-width:100vw;height:100vh;max-height:100vh;margin:0}.store-header{padding:16px}.store-header h2{flex-wrap:wrap;font-size:22px}.cart-button{justify-content:center;width:100%;margin-top:12px;position:static}.store-filters{padding:16px}.search-bar{padding:10px 12px}.category-tabs{gap:6px}.category-tab{padding:8px 12px;font-size:13px}.category-tab .material-symbols-outlined{font-size:16px}.products-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding:12px}.product-card{border-radius:var(--border-radius-md)}.product-image{height:180px}.product-details{padding:12px}.product-name{min-height:auto;font-size:15px}.product-description{font-size:12px}.product-price{font-size:20px}.add-to-cart-button{padding:8px 12px;font-size:13px}.cart-items{padding:16px}.cart-item{flex-wrap:wrap;gap:12px}.cart-item img{width:60px;height:60px}.cart-item-details{flex:calc(100% - 76px)}.cart-item-quantity{flex:1}.cart-item-remove{margin-left:auto}.cart-summary{padding:16px}.cart-summary-row{font-size:14px}.cart-summary-row.cart-total{font-size:18px}.checkout-buttons{flex-direction:column}.checkout-buttons .button{width:100%}.payment-info{font-size:12px}.empty-cart,.checkout-success{padding:40px 20px}.empty-cart .material-symbols-outlined,.success-icon{font-size:64px}.empty-cart h3,.checkout-success h3{font-size:20px}.success-amount{font-size:24px}}@media (max-width:480px){.products-grid{grid-template-columns:1fr;gap:12px}.product-card{max-width:100%}.store-header h2{font-size:20px}.category-tab{padding:6px 10px;font-size:12px}.product-footer{flex-direction:column;align-items:stretch;gap:12px}.add-to-cart-button{justify-content:center;width:100%}.cart-item{padding:12px}.cart-item-details h4{font-size:14px}}@media (max-height:500px) and (orientation:landscape){.store-modal .modal{height:100vh}.store-header{padding:12px 16px}.store-header h2{margin-bottom:4px;font-size:18px}.cart-button{padding:8px 16px;font-size:14px}.products-grid{padding:12px}.product-image{height:140px}}.prepaid-electricity{flex-direction:column;gap:24px;height:100%;padding:24px;display:flex;overflow-y:auto}.progress-indicator{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px;display:flex}.progress-step{color:#fff9;flex-direction:column;flex:1;align-items:center;gap:8px;transition:all .3s;display:flex;position:relative}.progress-step.active{color:var(--accent-blue)}.progress-step.completed{color:var(--accent-green)}.progress-step .material-symbols-outlined{background:#ffffff1a;border:2px solid #fff3;border-radius:50%;padding:12px;font-size:24px;transition:all .3s}.progress-step.active .material-symbols-outlined{border-color:var(--accent-blue);color:var(--accent-blue);background:#67b7f533}.progress-step.completed .material-symbols-outlined{border-color:var(--accent-green);color:var(--accent-green);background:#10b98133}.progress-step span:last-child{font-size:12px;font-weight:500}.electricity-step{flex-direction:column;flex:1;gap:24px;display:flex}.electricity-step h3{color:#fff;align-items:center;gap:12px;margin:0;font-size:24px;display:flex}.electricity-step h3 .material-symbols-outlined{color:var(--accent-blue);font-size:28px}.electricity-step>p{color:#fffc;margin:0;font-size:16px}.country-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;display:grid}.country-card{cursor:pointer;color:#fff;text-align:center;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:20px;transition:all .3s;display:flex}.country-card:hover{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-2px)}.country-card.selected{border-color:var(--accent-blue);background:#67b7f533}.country-flag{font-size:32px;line-height:1}.country-name{font-size:16px;font-weight:600}.vendor-count{color:#ffffffb3;font-size:12px}.vendor-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.vendor-card{cursor:pointer;color:#fff;text-align:left;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:16px;padding:20px;transition:all .3s;display:flex}.vendor-card:hover{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-2px)}.vendor-card.selected{border-color:var(--accent-blue);background:#67b7f533}.vendor-header{align-items:center;gap:16px;display:flex}.vendor-logo{object-fit:cover;background:#ffffff1a;border-radius:8px;width:48px;height:48px}.vendor-info h4{margin:0 0 4px;font-size:16px;font-weight:600}.vendor-regions{color:#ffffffb3;margin:0;font-size:12px}.vendor-details{flex-direction:column;gap:8px;display:flex}.vendor-detail{color:#fffc;justify-content:space-between;align-items:center;font-size:12px;display:flex}.auto-detection{color:var(--accent-green);align-items:center;gap:4px;font-weight:500;display:flex}.auto-detection .material-symbols-outlined{font-size:14px}.meter-input-section{flex-direction:column;gap:12px;display:flex}.meter-input-section label{color:#fff;font-size:14px;font-weight:600}.meter-input-section input{color:#fff;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:8px;padding:16px;font-size:16px;transition:all .3s}.meter-input-section input:focus{border-color:var(--accent-blue);background:#67b7f51a;outline:none}.meter-input-section input.valid{border-color:var(--accent-green);background:#10b9811a}.meter-input-section input.invalid{border-color:var(--accent-red);background:#ef44441a}.input-error{color:var(--accent-red);margin-top:4px;font-size:12px}.divider{text-align:center;color:#fff9;align-items:center;margin:24px 0;display:flex}.divider:before,.divider:after{content:"";background:#fff3;flex:1;height:1px}.divider span{text-transform:uppercase;letter-spacing:1px;padding:0 16px;font-size:12px;font-weight:500}.auto-detect-section{background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:16px;padding:20px;display:flex}.auto-detect-section h4{color:#fff;align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.auto-detect-section p{color:#fffc;margin:0;font-size:14px}.auto-detect-section textarea{color:#fff;resize:vertical;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:8px;min-height:80px;padding:16px;font-size:14px;transition:all .3s}.auto-detect-section textarea:focus{border-color:var(--accent-blue);background:#67b7f51a;outline:none}.detected-meters{flex-direction:column;gap:12px;margin-top:16px;display:flex}.detected-meters h5{color:#fff;margin:0;font-size:14px;font-weight:600}.detected-meter{border:1px solid var(--accent-green);cursor:pointer;color:#fff;background:#10b9811a;border-radius:8px;justify-content:space-between;align-items:center;padding:16px;transition:all .3s;display:flex}.detected-meter:hover{background:#10b98133;transform:translate(4px)}.meter-info{flex-direction:column;gap:4px;display:flex}.meter-info strong{font-size:16px;font-weight:600}.meter-info span{color:#fffc;font-size:12px}.detected-meter .material-symbols-outlined{color:var(--accent-green)}.package-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.package-card{cursor:pointer;color:#fff;text-align:center;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:24px;transition:all .3s;display:flex;position:relative}.package-card:hover{background:#ffffff1a;border-color:#ffffff4d;transform:translateY(-2px)}.package-card.selected{border-color:var(--accent-blue);background:#67b7f533}.package-card.popular{border-color:var(--accent-green);background:#10b9811a}.popular-badge{background:var(--accent-green);color:#fff;text-transform:uppercase;letter-spacing:1px;border-radius:12px;padding:4px 12px;font-size:10px;font-weight:600;position:absolute;top:-8px;left:50%;transform:translate(-50%)}.package-card h4{margin:0;font-size:16px;font-weight:600}.package-amount{color:var(--accent-blue);font-size:20px;font-weight:700}.package-units{color:#ffffffb3;font-size:12px}.package-card p{color:#fffc;margin:0;font-size:12px}.custom-amount-input{background:#ffffff08;border-radius:12px;flex-direction:column;gap:12px;margin-top:16px;padding:20px;display:flex}.custom-amount-input label{color:#fff;font-size:14px;font-weight:600}.custom-amount-input input{color:#fff;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:8px;padding:16px;font-size:16px;transition:all .3s}.custom-amount-input input:focus{border-color:var(--accent-blue);background:#67b7f51a;outline:none}.recipient-section{background:#ffffff08;border-radius:12px;flex-direction:column;gap:16px;padding:20px;display:flex}.recipient-toggle{color:#fff;cursor:pointer;align-items:center;gap:12px;font-size:14px;display:flex}.recipient-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-blue)}.recipient-details{flex-direction:column;gap:12px;display:flex}.recipient-details input{color:#fff;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:8px;padding:16px;font-size:14px;transition:all .3s}.recipient-details input:focus{border-color:var(--accent-blue);background:#67b7f51a;outline:none}.continue-button{background:linear-gradient(135deg,var(--accent-blue),#3b82f6);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-self:flex-end;align-items:center;gap:8px;min-width:200px;padding:16px 24px;font-size:16px;font-weight:600;transition:all .3s;display:flex}.continue-button:hover{background:linear-gradient(135deg,#3b82f6,var(--accent-blue));transform:translateY(-1px)}.continue-button:disabled{color:#ffffff80;cursor:not-allowed;background:#ffffff1a;transform:none}.purchase-summary{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:24px;padding:24px;display:flex}.summary-section{flex-direction:column;gap:16px;display:flex}.summary-section h4{color:#fff;border-bottom:1px solid #ffffff1a;margin:0;padding-bottom:8px;font-size:16px;font-weight:600}.summary-item{align-items:center;gap:16px;display:flex}.summary-logo{object-fit:cover;background:#ffffff1a;border-radius:6px;width:40px;height:40px}.summary-item .material-symbols-outlined{color:var(--accent-blue);font-size:24px}.summary-item div{flex-direction:column;gap:4px;display:flex}.summary-item strong{color:#fff;font-size:14px;font-weight:600}.summary-item span{color:#ffffffb3;font-size:12px}.summary-breakdown{flex-direction:column;gap:12px;display:flex}.breakdown-row{color:#fffc;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px;display:flex}.breakdown-row.total{color:#fff;border-top:1px solid #fff3;padding-top:12px;font-size:16px;font-weight:600}.breakdown-row.usdc{color:var(--accent-blue);font-weight:600}.confirmation-buttons{justify-content:space-between;align-items:center;gap:16px;display:flex}.insufficient-balance{border:1px solid var(--accent-red);color:var(--accent-red);background:#ef44441a;border-radius:8px;align-items:center;gap:12px;margin-top:16px;padding:16px;display:flex}.electricity-step.processing{text-align:center;justify-content:center;align-items:center;min-height:300px}.processing-spinner{margin-bottom:24px}.spinner{border:4px solid #ffffff1a;border-left:4px solid var(--accent-blue);border-radius:50%;width:60px;height:60px;animation:1s linear infinite spin}.electricity-step.success{text-align:center;align-items:center;min-height:300px}.success-icon{margin-bottom:24px}.success-icon .material-symbols-outlined{color:var(--accent-green);font-size:80px}.purchase-receipt{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:16px;max-width:400px;margin:24px 0;padding:24px;display:flex}.receipt-row{color:#fffc;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px;display:flex}.receipt-row:last-child{border-bottom:none}.receipt-row.success{color:var(--accent-green);font-weight:600}.receipt-row strong{color:#fff;font-weight:600}.token-number{letter-spacing:1px;word-break:break-all;font-family:monospace;font-size:12px}.success-actions{justify-content:center;gap:16px;margin-top:24px;display:flex}.electricity-error{border:1px solid var(--accent-red);color:var(--accent-red);background:#ef44441a;border-radius:8px;align-items:center;gap:12px;margin-bottom:24px;padding:16px;display:flex}.electricity-error .material-symbols-outlined{font-size:24px}@media (max-width:768px){.prepaid-electricity{gap:20px;padding:16px}.progress-indicator{flex-direction:column;gap:16px;padding:12px}.progress-step{flex-direction:row;flex:none;justify-content:flex-start;gap:12px;width:100%}.progress-step .material-symbols-outlined{flex-shrink:0;padding:8px;font-size:20px}.country-grid,.vendor-grid,.package-grid{grid-template-columns:1fr}.confirmation-buttons{flex-direction:column;gap:12px}.confirmation-buttons .button{width:100%}.success-actions{flex-direction:column}.success-actions .button{width:100%}}
