:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--color-bg: #f0f2f5;--color-bg-card: #ffffff;--color-primary: #1976d2;--color-secondary: #d32f2f;--color-accent: #607d8b;--color-accent2: #bfc7d1;--color-border: #bfc7d1;--color-text: #222;--color-text-light: #666;--color-shadow: 0 4px 24px #bfc7d1;--radius: 18px;--max-width: 1600px;--font-family: "Inter", "Roboto", "Open Sans", Arial, sans-serif;--nav-height: 112px;--color-accent-red: #e3001d;--color-warning: #e65100;--btn-primary-bg: var(--color-primary);--btn-secondary-bg: var(--color-secondary);--btn-success-bg: #43a047;--btn-danger-bg: #e74c3c;--list-with-recipe-bg: rgba(67,160,71,.08);--list-no-recipe-bg: var(--color-bg-card);--list-dessert-bg: rgba(229,57,53,.06);--color-weather: #06b6d4;--color-weather-contrast: #fff;--stat-days-width: 120px;--meal-input-width: 360px;--recipe-details-min-width: 420px;--gauge-track: #d5dbe3;--gauge-text: #222;--gauge-text-secondary: #666;--gauge-tick-inactive: #999;--solar-bar-bg: #d5dbe3;--solar-lifetime-bg: #e8ecf0;--solar-history-title: #555}@media (max-width: 900px){:root{--max-width: 98vw}}[data-theme=dark]{--color-bg: #0d1117;--color-bg-card: #161b22;--color-primary: #7fb6ff;--color-secondary: #d32f2f;--color-accent: #4F8EF7;--color-accent2: #1f2933;--color-border: rgba(255,255,255,.12);--color-text: #e6eef8;--color-text-light: #9fb1c8;--color-shadow: 0 8px 32px rgba(2,6,12,.75);--color-accent-red: #ff4d6a;--color-warning: #ff9800;--btn-primary-bg: #4f8ef7;--btn-secondary-bg: #c0392b;--btn-success-bg: #2e7d32;--btn-danger-bg: #c62828;--list-with-recipe-bg: rgba(67,160,71,.12);--list-no-recipe-bg: rgba(255,255,255,.02);--list-dessert-bg: rgba(229,57,53,.12);--gauge-track: #333;--gauge-text: #e6eef8;--gauge-text-secondary: #aaa;--gauge-tick-inactive: #555;--solar-bar-bg: #333;--solar-lifetime-bg: #1a1a2e;--solar-history-title: #ccc}::placeholder{color:#888;opacity:1}html{font-size:16px;min-height:100vh;background:var(--color-bg)}body{min-height:100vh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-family);margin:0;padding:0;transition:background .4s,color .4s}#root{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;box-sizing:border-box;width:100%}#root>.page-root{width:100%;max-width:var(--max-width);margin:0 auto;padding-left:24px;padding-right:24px}nav{position:fixed;top:0;left:0;right:0;z-index:999}.main-nav{background:#fff;box-shadow:0 1px 3px #00000014;border-bottom:1px solid var(--color-border)}[data-theme=dark] .main-nav{background:#161b22;box-shadow:0 1px 3px #0000004d;border-bottom-color:#ffffff0f}nav>div{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:16px 32px;box-sizing:border-box}nav,nav>div,nav button{color:var(--color-text)!important}nav button span,nav a{color:var(--color-text)!important}nav .button-primary,nav .button-secondary,nav .button-success,nav .button-danger,nav button.button-primary,nav button.button-success{color:#fff!important}.page-root{display:flex;flex-direction:column;align-items:stretch;width:100%;min-height:100vh;justify-content:flex-start;padding:var(--nav-height) 0 48px;background:transparent;box-sizing:border-box;max-width:var(--max-width);margin:0 auto}@media (max-width: 600px){nav>div{padding:12px 16px}.page-root{padding-top:76px}}#root>.page-root{max-width:var(--max-width)!important;margin:0 auto!important;padding-top:var(--nav-height)!important;padding-left:24px!important;padding-right:24px!important;box-sizing:border-box!important}#root>.page-root>.page-header,#root>.page-root>.card{max-width:var(--max-width)!important;margin-left:auto!important;margin-right:auto!important}.page-root .calendar,.page-root .calendar-inner{margin:0 auto!important}.card{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--color-shadow);max-width:var(--max-width);margin:0 auto;padding:32px 24px;transition:box-shadow .3s,background .3s}.page-root .card{max-width:var(--max-width);width:100%;margin:12px auto;border-radius:calc(var(--radius) / 1.2);padding:24px}input,select,textarea{font-family:var(--font-family);font-size:1em;border:1px solid var(--color-border);border-radius:var(--radius);padding:10px;background:var(--color-bg-card);color:var(--color-text);transition:border .2s,background .3s,color .3s}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);outline:none}button{font-size:.98em;font-weight:500;font-family:inherit;border:none;border-radius:8px;padding:6px 1em;background:transparent;color:inherit;cursor:pointer;transition:background .3s,box-shadow .3s,transform .2s;outline:none}button:hover{opacity:.9}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.button-primary{background-image:none!important;background-color:var(--btn-primary-bg)!important;color:#fff;border:none;border-radius:8px!important;padding:10px 22px;font-size:1.08rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #bfc7d1;transition:background .3s,box-shadow .3s}.button-primary:hover{filter:brightness(.95);box-shadow:0 4px 16px #1976d22e}.button-secondary{background-image:none!important;background-color:var(--btn-secondary-bg)!important;color:#fff;border:none;border-radius:8px!important;padding:10px 22px;font-size:1.08rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #d32f2f;transition:background .3s,box-shadow .3s}.button-secondary:hover{filter:brightness(.95);box-shadow:0 4px 16px #d32f2f2e}.button-success{background-image:none!important;background-color:var(--btn-success-bg)!important;color:#fff;border:none;border-radius:8px!important;padding:10px 22px;font-size:1.08rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #43a0472e;transition:background .3s,box-shadow .3s}.button-success:hover{filter:brightness(.95);box-shadow:0 4px 16px #43a0473d}.button-danger{background-image:none!important;background-color:var(--btn-danger-bg)!important;color:#fff;border:none;border-radius:8px!important;padding:10px 22px;font-size:1.08rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #e74c3c2e;transition:background .3s,box-shadow .3s}.button-danger:hover{filter:brightness(.95);box-shadow:0 4px 16px #e74c3c3d}.button-weather{background:var(--color-weather);color:var(--color-weather-contrast);border:none;padding:10px 22px;border-radius:8px;cursor:pointer;font-size:1.08rem;font-weight:600;display:inline-flex;align-items:center;gap:8px;box-shadow:0 6px 18px #06b6d41f}.button-weather:active{transform:translateY(1px)}.button-weather[disabled]{opacity:.6;cursor:not-allowed;box-shadow:none}.button-solar{background:#e67e22;color:#fff;border:none;padding:10px 22px;border-radius:8px;cursor:pointer;font-size:1.08rem;font-weight:600;display:inline-flex;align-items:center;gap:8px;box-shadow:0 6px 18px #e67e221f}.button-solar:active{transform:translateY(1px)}.button-solar[disabled]{opacity:.6;cursor:not-allowed;box-shadow:none}h1,h2,h3{font-family:var(--font-family);color:var(--color-primary);margin-top:0}a{color:var(--color-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--color-accent)}.read-the-docs{color:var(--color-text-light)}.page-header{display:flex;align-items:center;justify-content:center;gap:12px;min-height:64px;margin-bottom:32px;transition:opacity .16s ease}.page-title{text-align:center;margin:0;color:var(--color-primary)}.icon-button{background:none;border:none;font-size:32px;cursor:pointer;color:var(--color-primary);padding:4px}.icon-button.left{margin-right:16px}.icon-button.right{margin-left:16px}.section-title{width:100%;text-align:center;margin-bottom:24px;color:var(--color-text)}.calendar-card{margin-bottom:40px}.calendar{width:100%;border-collapse:collapse;margin:0 auto}.calendar-th,.calendar-td{border:1px solid var(--color-border);padding:8px;text-align:center;cursor:pointer;transition:background .2s}.calendar-th{background:#ffffff05}.calendar-td{vertical-align:middle}.calendar-th.selected,.calendar-td.selected{background:linear-gradient(90deg,#4f8ef70f,#4f8ef705)}.calendar-inner{width:100%}.meal-label{font-weight:700;font-size:.92em;color:var(--color-text-light);opacity:.7;text-align:center;cursor:pointer;min-width:100px;display:inline-flex;align-items:center;justify-content:center}.calendar .calendar-inner{height:100%;border-collapse:collapse}.calendar .calendar-inner td{padding:0;border:none}.calendar .meal-name-cell{display:flex;align-items:center;justify-content:center;padding:8px;cursor:pointer;font-weight:700}.calendar .meal-name-cell.kiosk{font-weight:700;font-size:2.4rem;padding-bottom:14px}.meal-input{padding:6px 1em;font-size:.98em;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text);outline:none}.meal-input:focus{border-color:var(--color-primary);box-shadow:0 6px 20px #4f8ef714}.meal-form{display:flex;flex-direction:column;gap:16px;align-items:stretch;width:100%}.meal-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;min-height:56px;justify-content:flex-start}.meal-row .meal-label{min-width:100px;text-align:left}.form-actions{display:flex;gap:16px;margin-top:16px;justify-content:space-between;width:100%;min-height:56px;align-items:center;padding-top:12px;border-top:2px solid var(--color-border)}.action-left{min-width:100px;margin-right:auto}.action-right{margin-left:auto}.input-with-icon{display:flex;align-items:center;gap:10px;box-sizing:border-box;width:100%;max-width:300px;position:relative}.input-with-icon .input-icon{color:var(--color-primary);flex:0 0 22px;margin-left:6px}.input-with-icon .meal-input{flex:0 0 var(--meal-input-width);width:var(--meal-input-width);box-sizing:border-box;padding-left:8px;padding-right:110px}.input-with-icon .recipe-link{margin-left:8px}@media (max-width: 700px){:root{--meal-input-width: 100%}.input-with-icon{width:100%;max-width:none}.input-with-icon .meal-input{flex:1 1 auto;width:100%}}.inline-completion{position:absolute;left:36px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-text-light);font-size:.98em;padding-left:8px;white-space:nowrap;opacity:.85;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 140px)}.inline-completion .inline-rest{color:#00000059}.suggestions{position:absolute;left:36px;right:0;top:calc(100% + 6px);bottom:auto;z-index:1200;margin:0;padding:6px 0;list-style:none;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;max-height:240px;overflow:auto;box-shadow:0 8px 24px #0000000f}.suggestions button{display:block;width:100%;padding:8px 12px;text-align:left;background:transparent;border:none;cursor:pointer}.suggestions button:hover{background:#4f8ef70a}.suggestions [role=option] button{padding:8px 12px}.suggestions [aria-selected=true] button{background:#4f8ef714}.badge,.stat-badge{background-color:var(--btn-primary-bg);color:#fff;padding:6px 10px;border-radius:8px;font-weight:600;font-size:.9em;box-shadow:0 2px 8px #00000014;display:inline-flex;align-items:center;gap:8px;transition:background .2s,transform .08s}.badge:active{transform:translateY(1px)}.badge--secondary,.stat-days{background-color:var(--btn-secondary-bg);color:#fff;padding:6px 10px;border-radius:8px;font-size:.9em;font-weight:600;opacity:.95;display:inline-flex;align-items:center;gap:6px}.stat-badge .counter-icon{margin:0;vertical-align:middle;color:#fff;width:1em;height:1em;display:inline-block;flex:0 0 1em}.stat-badge{padding:6px 10px}button.stat-badge,.stat-badge.recipe-link{background-color:var(--btn-primary-bg);color:#fff;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;font-size:.9em;font-weight:600;border-radius:8px;box-shadow:0 2px 8px #00000014;text-decoration:none}button.stat-badge:focus,button.stat-badge:focus-visible,.stat-badge.recipe-link:focus,.stat-badge.recipe-link:focus-visible{outline:3px solid rgba(79,142,247,.18)}.stat-badge.recipe-link .counter-icon,button.stat-badge .counter-icon{width:16px;height:16px}.stat-days{display:inline-flex;align-items:center;justify-content:flex-end;min-width:var(--stat-days-width);max-width:var(--stat-days-width);text-align:right;padding:4px 8px;box-sizing:border-box;color:#fff}.nav-lang{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:36px;padding:6px 10px;background:transparent;color:var(--color-text)!important;border-radius:8px}.nav-action{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:4px;border-radius:8px;color:var(--color-text-light)!important}.nav-action svg,.icon-button svg{width:20px!important;height:20px!important}.lang-dropdown{position:absolute;left:0;top:40px;background:#fffffff5;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 6px 20px #02060c14;padding:4px;z-index:1000;min-width:64px}.lang-item{display:block;width:100%;background:transparent;border:none;padding:6px 8px;text-align:left;cursor:pointer;font-size:.9em;color:var(--color-text);border-radius:6px}.lang-item:hover{background:linear-gradient(90deg,#4f8ef70f,#4f8ef705)}.recipes-layout{display:flex;gap:24px;align-items:flex-start;width:100%;box-sizing:border-box}.recipes-sidebar{flex:0 0 25%;max-width:30%;min-width:220px;border-right:2px solid var(--color-border);padding:16px 16px 10px;margin-top:80px;box-sizing:border-box;position:sticky;top:var(--nav-height);align-self:flex-start}.recipe-meta{display:flex;gap:10px;align-items:center;color:var(--color-text-light);font-size:.95em;margin-top:6px;flex-wrap:wrap}.recipe-meta .meta-item{display:inline-flex;align-items:center;gap:6px}.recipe-meta .meta-item svg{opacity:.9}.list-button{width:100%;padding:12px;font-size:1em;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;text-align:left;display:block;box-sizing:border-box;white-space:normal;transition:background .18s,transform .06s,box-shadow .18s}.list-button:hover{transform:translateY(-2px);box-shadow:0 6px 18px #4f8ef714}.list-button.selected{background:linear-gradient(90deg,#4f8ef714,#4f8ef705);border:2px solid var(--color-primary);box-shadow:0 2px 8px #4f8ef714}.recipes-sidebar .list-button:hover,.recipes-sidebar .list-button.selected{color:var(--color-text)!important}.recipes-sidebar .list-button.with-recipe{background:var(--list-with-recipe-bg)}.recipes-sidebar .list-button.no-recipe{background:var(--list-no-recipe-bg)}.recipes-sidebar .list-button.dessert{background:var(--list-dessert-bg)}.recipes-sidebar .list-button{padding:10px 12px}.list-search{max-width:300px;width:100%;box-sizing:border-box}.recipes-content{flex:0 0 75%;max-width:70%;padding:32px;margin-top:80px;box-sizing:border-box}.recipe-card{width:100%;min-width:var(--recipe-details-min-width);max-width:700px;border-radius:12px;margin:12px auto 0;padding:16px;background:var(--color-bg-card);border:2px solid var(--color-border);box-shadow:var(--color-shadow);transition:box-shadow .3s,background .3s}.input-small{width:100px}.addIng{padding:6px 16px;background:#4f8ef70f;color:var(--color-primary);border:1px solid var(--color-primary);border-radius:8px;font-size:1em;margin-top:4px}@media (max-width: 900px){.recipes-layout{flex-direction:column}.recipes-sidebar,.recipes-content{max-width:100%;flex:1 1 100%;margin-top:12px}.recipes-sidebar{border-right:none}}.stats-card{padding:8px 12px;margin-top:12px;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--color-shadow);min-height:120px}.stats-grid{display:flex;gap:24px;align-items:flex-start;width:100%;box-sizing:border-box}.stats-column{flex:1 1 50%;min-width:220px}.stats-column ol{padding-left:.6em;margin:6px 0}.stats-item{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.stats-name{text-align:left;font-weight:600;color:var(--color-text)}.stat-right{display:inline-flex;align-items:center;gap:8px}@media (max-width: 920px){.stats-card{padding:8px}.stats-card>div{flex-direction:column;gap:12px}.stats-card>div>div{width:100%}}@media (max-width: 700px){.stats-grid{flex-direction:column}.stats-column{width:100%;max-width:100%}}@media (max-width: 480px){.stats-card{padding:8px;max-width:98vw}.stats-card h3{font-size:1.1rem}.stats-card ol{font-size:1rem}}@media (max-width: 460px){:root{--stat-days-width: 84px}.stat-days{min-width:var(--stat-days-width);max-width:var(--stat-days-width);font-size:.95em}}.kiosk-meal-name{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}@media (max-width: 600px){.card{padding:12px 4px}h1,h2,h3{font-size:1.1em}.button-primary,.button-secondary,.button-success,.button-danger,.button-weather,.button-solar{font-size:.95rem;padding:8px 12px}}[data-theme=dark] html,[data-theme=dark] body,[data-theme=dark] #root{background:var(--color-bg)!important;color:var(--color-text)!important}[data-theme=dark] .card,[data-theme=dark] .fleet-card{background:var(--color-bg-card)!important;border-color:#ffffff2e!important;box-shadow:var(--color-shadow)!important}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:#ffffff05!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important;box-shadow:none!important}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{background:#ffffff08!important;border-color:var(--color-primary)!important;box-shadow:0 8px 24px #4f8ef71f!important;color:var(--color-text)!important}[data-theme=dark] ::placeholder{color:#e6eef86b!important;opacity:1}[data-theme=dark] .button-primary{color:#fff!important;background-image:none!important;background-color:var(--btn-primary-bg)!important;box-shadow:0 4px 12px #4f8ef726!important}[data-theme=dark] .button-secondary{background-image:none!important;background-color:var(--color-secondary)!important}[data-theme=dark] .button-success{background-image:none!important;background-color:#43a047!important}[data-theme=dark] .button-danger{background-image:none!important;background-color:#e74c3c!important}[data-theme=dark] a,[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3{color:var(--color-primary)!important}[data-theme=dark] .lang-dropdown{background:#14181ceb;border:1px solid rgba(255,255,255,.06)}[data-theme=dark] .lang-item{color:var(--color-text)}[data-theme=dark] .lang-item:hover{background:linear-gradient(90deg,#7fb6ff0f,#7fb6ff05)}[data-theme=dark] *{transition:background .25s,color .25s,border-color .25s!important}body[data-kiosk=true],.kiosk-mode{cursor:none!important;touch-action:manipulation;-webkit-user-select:none;user-select:none;overscroll-behavior:none;overflow:hidden!important;height:100vh!important;font-size:14px}body[data-kiosk=true] nav,.kiosk-mode nav,body[data-kiosk=true] .page-header,.kiosk-mode .page-header,body[data-kiosk=true] .form-card,.kiosk-mode .form-card,body[data-kiosk=true] .meal-form,.kiosk-mode .meal-form,body[data-kiosk=true] .lang-dropdown,.kiosk-mode .lang-dropdown{display:none!important}body[data-kiosk=true] header,.kiosk-mode header,body[data-kiosk=true] .nav,.kiosk-mode .nav,body[data-kiosk=true] .nav-bar,.kiosk-mode .nav-bar,body[data-kiosk=true] .topbar,.kiosk-mode .topbar,body[data-kiosk=true] .site-header,.kiosk-mode .site-header{display:none!important;height:0!important;max-height:0!important;padding:0!important;margin:0!important;overflow:hidden!important;visibility:hidden!important;pointer-events:none!important}body[data-kiosk=true] #root,.kiosk-mode #root,body[data-kiosk=true] .page-root,.kiosk-mode .page-root{width:100vw!important;height:100vh!important;--max-width: 800px;margin:0!important;padding:0!important;overflow:hidden!important}.kiosk-mode .calendar-td,body[data-kiosk=true] .calendar-td{padding:10px!important;vertical-align:middle!important}.kiosk-mode .calendar .meal-label,body[data-kiosk=true] .calendar .meal-label{font-size:1.1em!important;opacity:.85!important}.kiosk-mode .calendar td td,body[data-kiosk=true] .calendar td td{font-size:1.4rem!important;font-weight:700!important;padding-bottom:12px!important;text-align:center!important;white-space:normal!important;word-break:break-word!important}.kiosk-mode .calendar,.kiosk-mode .calendar-inner,body[data-kiosk=true] .calendar,body[data-kiosk=true] .calendar-inner{width:100%;table-layout:fixed}.kiosk-mode .card,body[data-kiosk=true] .card{overflow:hidden}.kiosk-mode input,.kiosk-mode button,body[data-kiosk=true] input,body[data-kiosk=true] button{display:none!important}.kiosk-mode img,body[data-kiosk=true] img{max-width:100%!important;height:auto!important}.kiosk-status{position:fixed;top:8px;right:12px;background:#00000073;color:#fff;padding:6px 10px;border-radius:6px;font-size:14px;z-index:9999;pointer-events:none}.kiosk-mode .badge,.kiosk-mode .stat-badge{padding:5px 8px;border-radius:6px;font-size:.675em;gap:6px}.kiosk-mode .stat-badge .counter-icon{width:.9em;height:.9em;flex:0 0 .9em}.kiosk-mode button.stat-badge,.kiosk-mode .stat-badge.recipe-link{padding:5px 8px;font-size:.675em}.kiosk-mode .stat-badge.recipe-link .counter-icon,.kiosk-mode button.stat-badge .counter-icon{width:12px;height:12px}.kiosk-mode .stat-days{min-width:90px;max-width:90px;padding:3px 6px;font-size:.72em}@media (max-width: 800px){.kiosk-mode,body[data-kiosk=true]{font-size:13px}.kiosk-mode .calendar td td,body[data-kiosk=true] .calendar td td{font-size:1.1rem!important}.kiosk-mode .calendar-td,body[data-kiosk=true] .calendar-td{padding:8px!important}}@media (max-width: 460px){.kiosk-mode .stat-days{min-width:63px;max-width:63px;font-size:.72em}}.data-table{width:100%;border-collapse:collapse;background:var(--color-bg-card);border-radius:10px;box-shadow:var(--color-shadow);overflow:hidden}.data-table th{padding:10px 12px;border-bottom:2px solid var(--color-border);text-align:left;white-space:nowrap;font-weight:700;font-size:13px;color:var(--color-text)}.data-table th.data-th-calc{color:var(--color-text-light);font-style:italic}.data-table td{padding:10px 12px;border-bottom:1px solid var(--color-border);font-size:14px;color:var(--color-text)}.data-table td.data-td-calc{color:var(--color-text-light)}.data-table tfoot td,.data-table thead tr+tr td{padding:10px 12px;border-top:2px solid var(--color-border);font-weight:700;font-size:13px;background:var(--color-bg)}.data-table tfoot td.data-td-calc,.data-table thead tr+tr td.data-td-calc{color:var(--color-text-light);font-style:italic}.data-table tbody tr{cursor:pointer;transition:background .1s}.data-table tbody tr:hover{background:#00000008}[data-theme=dark] .data-table tbody tr:hover{background:#ffffff0a}.data-table tbody tr.row-selected{background:#ffc80014}[data-theme=dark] .data-table tbody tr.row-selected{background:#fff8e114}.data-table tbody tr.row-inactive{opacity:.6}.tab-bar{border-bottom:2px solid var(--color-border);margin-bottom:24px;display:flex;gap:4px;align-items:center}.tab-btn{padding:10px 28px;border:none;border-bottom:3px solid transparent;background:none;font-weight:400;font-size:16px;color:var(--color-text-light);cursor:pointer;transition:all .15s}.tab-btn.active{border-bottom-color:var(--color-accent-red);font-weight:700;color:var(--color-accent-red)}.form-section{background:var(--color-bg);border-radius:12px;padding:14px 20px;margin-bottom:32px;box-shadow:var(--color-shadow)}.form-section h2{margin:0 0 12px;font-size:15px;font-weight:700;color:var(--color-text)}.form-label{font-weight:600;margin-bottom:2px;font-size:11px;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.03em}.form-input{padding:5px 8px;border:1.5px solid var(--color-border);border-radius:5px;font-size:13px;width:100%;box-sizing:border-box;background:var(--color-bg-card);color:var(--color-text)}.form-input:focus{border-color:var(--color-primary);outline:none}.sort-indicator{color:var(--color-accent-red);margin-left:4px;font-size:10px}.btn-save{padding:6px 20px;background:var(--btn-success-bg);color:#fff;border:none;border-radius:5px;font-weight:700;font-size:13px;cursor:pointer}.btn-copy{padding:6px 16px;background:transparent;border:1px solid var(--color-primary);color:var(--color-primary);border-radius:5px;font-size:13px;font-weight:700;cursor:pointer}.btn-cancel{padding:6px 16px;background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text);border-radius:5px;font-size:13px;cursor:pointer}.btn-delete{padding:6px 16px;background:transparent;border:1px solid var(--color-accent-red);color:var(--color-accent-red);border-radius:5px;font-size:13px;font-weight:700;cursor:pointer;margin-left:4px}.btn-add{padding:6px 20px;background:var(--btn-success-bg);color:#fff;border:none;border-radius:5px;font-weight:700;font-size:13px;cursor:pointer}.btn-search{padding:5px 12px;background:var(--color-primary);color:#fff;border:none;border-radius:5px;font-weight:600;font-size:12px;cursor:pointer;white-space:nowrap;flex-shrink:0}.btn-search:disabled{opacity:.5}.toggle-pill{padding:8px 22px;border-radius:20px;border:2px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text);font-weight:700;font-size:15px;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-pill.active{border-color:var(--color-accent-red);background:var(--color-accent-red);color:#fff}.toggle-pill:disabled{opacity:.5;cursor:default}.fleet-cards{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:20px}.fleet-card{flex:1 1 200px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;padding:14px 18px;min-width:180px}.fleet-card .fleet-label{font-size:12px;color:var(--color-text-light);margin-bottom:4px}.fleet-card .fleet-value{font-size:22px;font-weight:700;color:var(--color-text)}.fleet-card .fleet-sub{font-size:12px;color:var(--color-text-light);margin-top:4px}.img-placeholder{background:var(--color-bg);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--color-text-light)}.img-thumbnail{object-fit:cover;border-radius:4px;display:block;border:1px solid var(--color-border);cursor:zoom-in}.img-preview-border{border:2px solid var(--color-accent-red)}.img-placeholder-dashed{border:2px dashed var(--color-border);background:var(--color-bg)}.text-success{color:var(--btn-success-bg);font-weight:600}.text-warning{color:var(--color-warning);font-weight:600}.search-input{padding:6px 12px;border-radius:8px;border:1px solid var(--color-border);font-size:14px;width:200px;background:var(--color-bg-card);color:var(--color-text)}.search-input:focus{border-color:var(--color-primary);outline:none}.img-search-results{display:flex;flex-wrap:wrap;gap:5px;max-height:260px;overflow-y:auto;border:1px solid var(--color-border);border-radius:6px;padding:6px;background:var(--color-bg)}.img-search-thumb{position:relative;cursor:pointer;border-radius:5px;overflow:hidden;border:2px solid var(--color-border);flex-shrink:0}.img-search-loading{position:absolute;inset:0;background:#ffffffbf;display:flex;align-items:center;justify-content:center;font-size:10px}[data-theme=dark] .img-search-loading{background:#000000a6}.btn-remove-img{margin-top:4px;font-size:11px;color:var(--color-accent-red);background:none;border:1px solid var(--color-accent-red);border-radius:4px;cursor:pointer;padding:2px 8px;width:100%}.text-muted{color:var(--color-text-light)}.img-section-divider{border-left:1px solid var(--color-border);padding-left:16px}.lightbox-overlay{position:fixed;inset:0;background:#000000d1;display:flex;align-items:center;justify-content:center;z-index:9999;cursor:zoom-out}.lightbox-img{max-width:92vw;max-height:92vh;min-width:min(600px,92vw);min-height:min(400px,60vh);object-fit:contain;border-radius:8px;box-shadow:0 8px 40px #0006;image-rendering:auto}.text-secondary-small{color:var(--color-text-light);font-size:12px;margin-left:4px}.ef-devices{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;align-items:start}.ef-device-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:20px 24px;box-shadow:var(--color-shadow)}[data-theme=dark] .ef-device-card{border-color:#ffffff2e}.ef-device-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.ef-device-name{font-size:16px;font-weight:700;color:var(--color-text)}.ef-device-sn{font-size:12px;color:var(--color-text-light);font-family:monospace}.ef-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ef-badge.online{background:#2e7d3226;color:#2e7d32}.ef-badge.offline{background:#d32f2f1f;color:#c62828}[data-theme=dark] .ef-badge.online{background:#4caf502e;color:#81c784}[data-theme=dark] .ef-badge.offline{background:#ef53502e;color:#ef9a9a}.ef-type-tag{font-size:11px;color:var(--color-text-light);background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:2px 8px;margin-left:auto}.ef-metrics{display:flex;flex-wrap:wrap;column-gap:12px;row-gap:20px}.ef-metric{flex:1 1 130px;min-width:110px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}[data-theme=dark] .ef-metric{border-color:#ffffff1a}.ef-metric-label{font-size:11px;color:var(--color-text-light);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.ef-metric-value{font-size:22px;font-weight:700;color:var(--color-text);line-height:1.1}.ef-metric-unit{font-size:12px;font-weight:400;color:var(--color-text-light);margin-left:3px}.ef-metric.highlight-green .ef-metric-value{color:#2e7d32}.ef-metric.highlight-red .ef-metric-value{color:var(--color-accent-red)}.ef-metric.highlight-amber .ef-metric-value{color:#e65100}[data-theme=dark] .ef-metric.highlight-green .ef-metric-value{color:#81c784}[data-theme=dark] .ef-metric.highlight-red .ef-metric-value{color:#ff4d6a}[data-theme=dark] .ef-metric.highlight-amber .ef-metric-value{color:#ff9800}.ef-card-compact{padding:14px 18px}.ef-card-compact .ef-device-header{margin-bottom:10px}.ef-soc-compact{display:flex;align-items:center;gap:10px;margin-bottom:10px}.ef-soc-compact-bar{flex:1;height:8px;border-radius:4px;background:var(--color-border);overflow:hidden}.ef-soc-compact-fill{height:100%;border-radius:4px;transition:width .6s ease,background .4s ease}.ef-soc-compact-text{font-size:16px;font-weight:700;min-width:42px;text-align:right}.ef-soc-compact-cap{font-size:11px;color:var(--color-text-light);white-space:nowrap}.ef-metric-rows{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px}.ef-metric-rows-plain{display:grid;grid-template-columns:1fr;gap:0}.ef-metric-rows-plain .ef-metric-row{border-bottom:none;padding:2px 0}.ef-metric-row{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;border-bottom:1px solid var(--color-border)}.ef-metric-row:last-child,.ef-metric-rows>.ef-metric-row:nth-last-child(2):nth-child(odd)~.ef-metric-row{border-bottom:none}.ef-metric-row-label{font-size:12px;color:var(--color-text-light)}.ef-metric-row-value{font-size:14px;font-weight:700;color:var(--color-text)}.ef-metric-row-unit{font-size:11px;font-weight:400;color:var(--color-text-light);margin-left:2px}.ef-soc-bar{margin-top:6px;height:6px;border-radius:3px;background:var(--color-border);overflow:hidden}.ef-soc-fill{height:100%;border-radius:3px;transition:width .4s ease}.ef-soc-fill.high{background:#2e7d32}.ef-soc-fill.medium{background:#e65100}.ef-soc-fill.low{background:#c62828}.ef-flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px}[data-theme=dark] .ef-flow{border-color:#ffffff1a}.ef-flow-node{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:60px}.ef-flow-node-label{font-size:11px;color:var(--color-text-light);font-weight:600}.ef-flow-node-val{font-size:14px;font-weight:700;color:var(--color-text)}.ef-flow-arrow{font-size:18px;color:var(--color-text-light);padding:0 4px}.ef-empty{padding:40px;text-align:center;color:var(--color-text-light);font-size:14px}.ef-error{padding:16px;background:#d32f2f14;border:1px solid rgba(211,47,47,.2);border-radius:8px;color:var(--color-accent-red);font-size:13px}.ef-config-hint{padding:20px 24px;background:#1976d20f;border:1px solid rgba(25,118,210,.18);border-radius:10px;color:var(--color-text);font-size:14px;line-height:1.6}.ef-config-hint code{font-family:monospace;background:var(--color-bg);border:1px solid var(--color-border);border-radius:4px;padding:1px 6px;font-size:12px}.ef-chart-wrap{margin-top:16px;padding:12px 0 0;border-top:1px solid var(--color-border)}[data-theme=dark] .ef-chart-wrap{border-top-color:#ffffff14}.ef-chart-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-light);margin-bottom:8px}.ef-metrics+.ef-chart-wrap{margin-top:14px}.calendar-th.holiday,.calendar-td.holiday{background:#fff8e1;border:1px solid #ffd54f;color:#6b4a00}.date-block{display:flex;flex-direction:column;align-items:center;gap:4px}.date-main{font-weight:700}.weekday-block{margin-top:4px;font-size:.9rem;color:var(--color-text-light, #666)}.holiday-name.small,.holiday-name-inline{font-size:.85rem;color:#7a4a00;font-weight:600;margin-top:4px}[data-theme=dark] .calendar-th.holiday,[data-theme=dark] .calendar-td.holiday{background:#ffd54f1a;border-color:#ffd54f4d;color:#ffd54f}[data-theme=dark] .holiday-name.small,[data-theme=dark] .holiday-name-inline{color:#ffd54f}.holiday-row{padding:6px 8px}.page-header{min-height:64px;display:flex;align-items:center;gap:12px;transition:opacity .16s ease}.page-header.hidden{visibility:hidden;opacity:0;pointer-events:none}.random-lunch-btn{margin-left:8px;color:var(--color-accent, #4F8EF7);transition:transform .2s,color .2s}.random-lunch-btn:hover{color:var(--btn-primary-bg, #1976d2);transform:scale(1.15)}.stat-button-group{display:inline-flex;align-items:center;gap:8px;margin-left:8px;min-width:96px;justify-content:flex-end}.recipe-open-icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;padding:6px;cursor:pointer}.input-with-icon{position:relative}.stat-button-group{min-width:96px}.meal-input{box-sizing:border-box;padding-right:110px}.inline-completion{position:absolute;left:40px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-text-light, #666);opacity:.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 140px)}.suggestions{position:absolute;top:calc(100% + 6px);left:0;width:100%;z-index:1200;background:var(--color-bg-card, #f5f7fa);color:var(--color-text, #222);border-radius:6px;box-shadow:0 8px 20px #00000014;border:1px solid var(--color-border, #bfc7d1);max-height:240px;overflow:auto}.suggestions li button{width:100%;text-align:left;color:var(--color-text, #222);font-size:inherit}.suggestions li button:hover{background:var(--color-accent2, rgba(79,142,247,.08))}[data-theme=dark] .suggestions{background:var(--color-bg-card, #181c20);color:var(--color-text, #e6eef8);box-shadow:0 8px 20px #0006;border-color:var(--color-border, #2a3040)}[data-theme=dark] .suggestions li button{color:var(--color-text, #e6eef8)}[data-theme=dark] .suggestions li button:hover{background:#4f8ef71f}.form-actions{min-height:56px;display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:2px solid var(--color-border, #bfc7d1)}.meal-form{display:flex;flex-direction:column}.meal-row{min-height:56px}.card.stats-card{min-height:120px}.form-card-body{display:flex;gap:0;align-items:stretch}.form-card-left{flex:1 1 0;min-width:0}.form-card-right{flex:0 0 240px;margin-left:20px;padding-left:20px;border-left:2px solid var(--color-border, #bfc7d1);display:flex;flex-direction:column}.history-title{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px;color:var(--color-text-light, #666)}.history-meal-name{color:var(--btn-primary-bg, #1976d2);font-weight:700}.history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;overflow-y:auto;max-height:260px}.history-item{display:flex;justify-content:space-between;align-items:center;padding:5px 8px;font-size:.85rem;border-radius:8px;background:#4f8ef70a;transition:background .15s}.history-item:hover{background:#4f8ef71a}.history-date{font-weight:600;color:var(--color-text, #222)}.history-days{font-size:.78rem;font-weight:600;color:#fff;background:var(--btn-primary-bg, #1976d2);padding:2px 8px;border-radius:10px;white-space:nowrap;opacity:.85}.history-days.future{background:var(--color-danger, #c0392b)}[data-theme=dark] .history-title{color:var(--color-text-light, #bbb)}[data-theme=dark] .form-card-right{border-left-color:var(--color-border, #333)}[data-theme=dark] .history-item{background:#ffffff08}[data-theme=dark] .history-item:hover{background:#ffffff12}[data-theme=dark] .history-date{color:var(--color-text, #eaeaea)}[data-theme=dark] .history-days{background:var(--btn-primary-bg, #4f8ef7)}[data-theme=dark] .history-days.future{background:var(--color-danger, #e74c3c)}@media (max-width: 640px){.form-card-body{flex-direction:column}.form-card-right{flex:none;width:100%;margin-left:0;padding-left:0;margin-top:12px;padding-top:12px;border-left:none;border-top:2px solid var(--color-border, #bfc7d1)}.history-list{max-height:180px}}.recipe-open-icon.hidden{visibility:hidden;opacity:0;pointer-events:none}.recipe-modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;z-index:99999;background:#00000073;-webkit-font-smoothing:antialiased}.recipe-modal-content{background:#eaf5ec;border-radius:10px;width:min(100%,920px);max-height:88vh;overflow:auto;box-shadow:0 12px 40px #00000059;display:flex;flex-direction:column;color:#0f2f18}.recipe-modal-content h2,.recipe-modal-content h4{color:#0f2f18}[data-theme=dark] .recipe-modal-overlay{background:#000000b3}[data-theme=dark] .recipe-modal-content{background:#1c2433;box-shadow:0 12px 40px #0009;color:#e6eef8;border:1px solid rgba(255,255,255,.08)}[data-theme=dark] .recipe-modal-content header,[data-theme=dark] .recipe-modal-content main,[data-theme=dark] .recipe-modal-content aside{color:#e6eef8}[data-theme=dark] .recipe-modal-content pre,[data-theme=dark] .recipe-modal-content table,[data-theme=dark] .recipe-modal-content a{color:#e6eef8}[data-theme=dark] .recipe-modal-content pre{background:#ffffff0f}[data-theme=dark] .recipe-modal-content a{color:#7aa7ff}[data-theme=dark] .recipe-modal-content h2,[data-theme=dark] .recipe-modal-content h4{color:#fff!important}@media (max-width: 640px){.recipe-modal-content{width:calc(100% - 32px);max-height:94vh}}.recipe-modal-close{border:none;background:transparent;font-size:22px;cursor:pointer;flex:0 0 auto;color:inherit}.recipe-notes-box{background:#fffbea;padding:10px;border-radius:6px;color:#444}[data-theme=dark] .recipe-notes-box{background:#ffffff14;color:#e6eef8}.recipe-raw-data{max-height:320px;overflow:auto;background:#f7f7f7;padding:12px;border-radius:6px}[data-theme=dark] .recipe-raw-data{background:#ffffff0f;color:#e6eef8}.recipe-modal-content svg,.recipe-modal-content .icon{color:#4a5568;width:auto;height:auto;vertical-align:middle}.recipe-modal-content span.inline-badge,.recipe-modal-content .badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:#f3f6fb;border-radius:6px;font-size:13px;color:#1f2937}.recipe-modal-content span.inline-badge svg,.recipe-modal-content .badge svg{color:#1f2937}[data-theme=dark] .recipe-modal-content svg,[data-theme=dark] .recipe-modal-content .icon{color:#c8d6e5}[data-theme=dark] .recipe-modal-content span.inline-badge,[data-theme=dark] .recipe-modal-content .badge{background:#ffffff1a;color:#e6eef8}[data-theme=dark] .recipe-modal-content span.inline-badge svg,[data-theme=dark] .recipe-modal-content .badge svg{color:#c8d6e5}[data-theme=dark] .recipe-modal-content .badge.energy{background:#7aa7ff26;color:#7aa7ff}[data-theme=dark] .recipe-modal-content .badge.energy svg{color:#7aa7ff}} :root{--bg: #f7fafc;--card-bg: #ffffff;--text: #0f1720;--muted: #6b7280;--border: #e6e9ee;--accent: #2563eb;--accent-100: rgba(23,102,209,.08);--success: #16a34a;--danger: #ef4444;--shadow: 0 10px 30px rgba(18,24,40,.06);--radius: 14px;--label-width: 140px;--input-bg: #f9fafb}[data-theme=dark]{--bg: transparent;--card-bg: #151b23;--text: #e6eef8;--muted: #8899aa;--border: rgba(255,255,255,.18);--accent: #5a9cf5;--accent-100: rgba(90,156,245,.1);--shadow: 0 10px 30px rgba(0,0,0,.3);--input-bg: rgba(255,255,255,.04)}.recipes-page{padding:20px;display:flex;flex-direction:column;gap:16px;width:100%;box-sizing:border-box}.tag-filter-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.tag-filter-chip{background:var(--card-bg, #fff);color:var(--text, #333);border:1.5px solid var(--border, #ddd);border-radius:20px;padding:5px 14px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;line-height:1.4}.tag-filter-chip:hover{border-color:var(--accent);color:var(--accent)}.tag-filter-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.tag-filter-reset{background:transparent;color:var(--muted, #999);border-style:dashed;font-size:14px}.tag-filter-reset:hover{color:var(--danger, #ef4444);border-color:var(--danger, #ef4444)}.recipe-search-bar{max-width:400px}.recipe-search-bar .list-search{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--border);font-size:14px}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.recipe-tile{background:var(--card-bg, #fff);border:1px solid var(--border);border-radius:var(--radius, 14px);padding:16px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:8px;transition:transform .12s,box-shadow .18s,border-color .15s;box-shadow:0 2px 8px #0000000a}.recipe-tile:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0000001a;border-color:var(--accent)}.tile-name{font-weight:600;font-size:1em;color:var(--text, #0f1720)}.tile-meta{display:flex;flex-direction:column;gap:6px}.tile-tags{display:flex;flex-wrap:wrap;gap:4px}.tile-tag{background:var(--accent);color:#fff;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500}.tag-filter-chip.chip-cat-breakfast{border-color:#f59e0b;color:#f59e0b}.tag-filter-chip.chip-cat-breakfast.active{background:#f59e0b;color:#fff;border-color:#f59e0b}.tag-filter-chip.chip-cat-lunch{border-color:#22c55e;color:#22c55e}.tag-filter-chip.chip-cat-lunch.active{background:#22c55e;color:#fff;border-color:#22c55e}.tag-filter-chip.chip-cat-dinner{border-color:#8b5cf6;color:#8b5cf6}.tag-filter-chip.chip-cat-dinner.active{background:#8b5cf6;color:#fff;border-color:#8b5cf6}.tag-filter-chip.chip-cat-dessert{border-color:#ec4899;color:#ec4899}.tag-filter-chip.chip-cat-dessert.active{background:#ec4899;color:#fff;border-color:#ec4899}.recipe-tile.cat-breakfast{background:#fefce8;border-left:3px solid #eab308}.recipe-tile.cat-lunch{background:#f0fdf4;border-left:3px solid #22c55e}.recipe-tile.cat-dinner{background:#faf5ff;border-left:3px solid #a855f7}.recipe-tile.cat-dessert{background:#fff1f2;border-left:3px solid #f43f5e}[data-theme=dark] .recipe-tile{background:transparent;border:1px solid var(--border);box-shadow:none}[data-theme=dark] .recipe-tile:hover{box-shadow:0 4px 16px #0000004d}[data-theme=dark] .recipe-tile.cat-breakfast{background:transparent;border-color:#eab30866;border-left:3px solid #eab308}[data-theme=dark] .recipe-tile.cat-breakfast:hover{border-color:#eab308}[data-theme=dark] .recipe-tile.cat-lunch{background:transparent;border-color:#22c55e66;border-left:3px solid #22c55e}[data-theme=dark] .recipe-tile.cat-lunch:hover{border-color:#22c55e}[data-theme=dark] .recipe-tile.cat-dinner{background:transparent;border-color:#a855f766;border-left:3px solid #a855f7}[data-theme=dark] .recipe-tile.cat-dinner:hover{border-color:#a855f7}[data-theme=dark] .recipe-tile.cat-dessert{background:transparent;border-color:#f43f5e66;border-left:3px solid #f43f5e}[data-theme=dark] .recipe-tile.cat-dessert:hover{border-color:#f43f5e}.tile-badges{display:flex;gap:10px;font-size:12px;color:var(--muted, #777)}.tile-badge{display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.tile-empty{font-size:12px;color:var(--muted, #999);font-style:italic}.recipe-status{color:var(--muted, #999);font-size:13px}.recipe-modal-overlay{position:fixed;inset:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.recipe-modal{background:var(--card-bg, #fff);border-radius:var(--radius, 14px);box-shadow:0 20px 60px #0003;padding:28px 32px;width:100%;max-width:720px;max-height:85vh;overflow-y:auto;position:relative;animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:20px;cursor:pointer;color:var(--muted, #999);padding:4px 8px;border-radius:6px;transition:background .12s,color .12s}.modal-close:hover{background:#0000000f;color:var(--text)}.modal-title{margin:0 0 16px;font-size:1.3em;color:var(--text)}.modal-title-input{margin:0 0 16px;font-size:1.3em;font-weight:700;color:var(--text);background:transparent;border:none;border-bottom:2px solid var(--accent, #4a90d9);outline:none;width:100%;padding:4px 0}.modal-title-input:focus{border-bottom-color:var(--accent-hover, #357abd)}.meal-dates-list{display:flex;flex-wrap:wrap;gap:6px;width:100%}.meal-date-chip{display:inline-block;padding:4px 10px;border-radius:12px;background:var(--accent, #4a90d9);color:#fff;font-size:.85em;cursor:pointer;transition:background .15s}.meal-date-chip:hover{background:var(--accent-hover, #357abd)}.recipes-layout{display:none}.recipe-card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px 32px;border:1px solid var(--border);width:100%;box-sizing:border-box}.recipe-card h3{margin:0 0 24px;font-size:22px;font-weight:800;text-align:center;color:var(--text, #0f1720);letter-spacing:-.02em}.recipe-section{padding:16px 0;border-bottom:1px solid var(--border)}.recipe-section:last-of-type{border-bottom:none}.recipe-section-title{font-size:14px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.06em;margin:0 0 14px;display:flex;align-items:center;gap:8px}.recipe-section-title:before{content:"";display:inline-block;width:3px;height:16px;background:var(--accent);border-radius:2px}.recipe-card form{display:flex;flex-direction:column;width:100%;gap:0}.form-row{display:grid;grid-template-columns:var(--label-width) 1fr;gap:8px 16px;align-items:center;width:100%;margin-bottom:10px}.form-row label{justify-self:end;text-align:right;font-weight:600;color:var(--text, #374151);font-size:13px;padding-right:4px}.form-row label.section-full{grid-column:1 / -1;justify-self:start;text-align:left;padding-right:0;margin:0;font-size:14px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:8px}.form-row label.section-full:before{content:"";display:inline-block;width:3px;height:16px;background:var(--accent);border-radius:2px}.form-row .control,.form-row input,.form-row textarea,.form-row select,.form-row .input-small,.form-row .recipe-meta,.form-row .badge--secondary,.form-row .ingredients-table-wrapper{grid-column:2;width:100%;box-sizing:border-box}input[type=text],input[type=number],select,textarea{padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--input-bg, #f9fafb);font-size:14px;color:var(--text, #0f1720);transition:border-color .2s,box-shadow .2s,background .2s}.input-small{width:140px;padding:8px 10px;border-radius:8px}input:focus,textarea:focus,select:focus{outline:none;background:var(--card-bg, #fff);box-shadow:0 0 0 3px #1766d11a;border-color:var(--accent)}.recipe-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.badge--secondary{padding:5px 12px;border-radius:999px;background:linear-gradient(135deg,#f0f4ff,#e8ecf4);color:#475569;font-size:13px;border:1px solid rgba(23,102,209,.1);transition:background .15s}.badge--secondary:hover{background:linear-gradient(135deg,#e0e8ff,#d8e0f0)}.ingredients-table{width:100%;border-collapse:collapse;margin:8px 0 0;table-layout:auto}.ingredients-table thead{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;white-space:nowrap!important;border:0!important}.ingredients-table thead tr,.ingredients-table thead th{display:none!important;visibility:hidden!important}.ingredients-table tbody tr{display:grid;grid-template-columns:1fr 240px 44px;gap:10px;align-items:center;padding:8px;border-radius:10px;transition:background .15s}.ingredients-table tbody tr:hover{background:var(--accent-100, #f1f5f9)}.ingredients-table td{display:block;padding:0;white-space:normal;overflow:visible;text-overflow:clip}.amount-unit{display:flex;gap:8px;align-items:center}.amount-unit .amount-input{flex:0 0 110px}.amount-unit .unit-input{flex:0 0 100px}.ingredients-table td input{width:100%;box-sizing:border-box}.metrics-wrapper,.ingredients-table-wrapper,.form-row label.section-full+.ingredients-table-wrapper{grid-column:1 / -1;width:100%;box-sizing:border-box}.metrics-wrapper{grid-column:1 / -1}.compact-metrics{display:flex;gap:20px;align-items:start;width:100%;justify-content:flex-start;padding:12px 0}.compact-metrics .metric{display:flex;flex-direction:column;gap:6px;min-width:0;padding:10px 14px;background:var(--input-bg, #f8fafc);border-radius:10px;border:1px solid var(--border)}.metric-label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;line-height:1;white-space:nowrap}.metric-control{display:inline-flex;align-items:center;gap:6px}.metric-unit{color:var(--muted);font-size:13px;white-space:nowrap}.metric-input{width:80px;padding:8px 10px}.recipe-card textarea{min-height:140px;resize:vertical;line-height:1.6;font-size:14px}.actions,.actions.editorActions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border);grid-column:1 / -1}.actions .button-success,.actions .button-danger{min-width:120px}.actions .button-danger[disabled]{opacity:.5;pointer-events:none}@media (max-width: 900px){.recipe-card{padding:18px 16px}.form-row{grid-template-columns:1fr}.form-row label{justify-self:start;text-align:left;padding-right:0;margin-bottom:4px}.ingredients-table tbody tr{grid-template-columns:1fr 120px 40px;gap:8px}.amount-unit .amount-input{flex:1 1 auto}.amount-unit .unit-input{flex:0 0 28%}.compact-metrics{flex-direction:column;gap:8px}.metric-input{width:100%}}.servings-metric{align-items:center;min-width:140px}.servings-heads{display:flex;gap:2px;justify-content:center;align-items:center;margin-bottom:4px}.head-icon{transition:fill .2s,stroke .2s,transform .15s}.head-icon circle,.head-icon path{fill:#e2e8f0;stroke:#cbd5e1;stroke-width:1.2;transition:fill .2s,stroke .2s}.head-icon.active circle,.head-icon.active path{fill:var(--accent);stroke:var(--accent)}.head-icon.active{transform:scale(1.08)}.servings-plus{font-weight:800;font-size:14px;color:var(--accent);margin-left:2px}.servings-row{display:flex;align-items:center;justify-content:center;gap:10px}.servings-btn{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--accent);background:var(--accent-100);color:var(--accent);font-weight:700;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s,color .15s;line-height:1}.servings-btn:hover{background:var(--accent);color:#fff}.servings-value{text-align:center;font-weight:800;font-size:20px;color:var(--accent);min-width:28px}.time-metric{align-items:center}.clock-dial{display:flex;justify-content:center;margin-bottom:4px}.clock-svg{filter:drop-shadow(0 2px 6px rgba(0,0,0,.06))}.clock-face{fill:#f8fafc;stroke:#cbd5e1;stroke-width:2}.clock-tick{stroke:#94a3b8;stroke-width:1.5;stroke-linecap:round}.clock-hand{stroke:var(--accent);stroke-width:2.5;stroke-linecap:round;transition:x2 .3s,y2 .3s}.clock-hand.hour{stroke-width:3;stroke:#1e3a5f}.clock-center{fill:var(--accent)}.clock-text{fill:var(--accent);font-size:11px;font-weight:700}.time-stepper{display:flex;align-items:center;justify-content:center;gap:6px}.time-btn{padding:4px 8px;border-radius:8px;border:1.5px solid var(--accent);background:var(--accent-100);color:var(--accent);font-weight:700;font-size:12px;cursor:pointer;transition:background .15s,color .15s}.time-btn:hover{background:var(--accent);color:#fff}.time-input{width:56px;text-align:center;padding:6px 4px;border-radius:8px;font-size:14px;font-weight:600}.recipe-card input::placeholder,.recipe-card textarea::placeholder{color:var(--muted, #94a3b8)}.addIng{display:inline-flex;align-items:center;gap:4px;margin-top:8px;padding:8px 16px;border-radius:10px;border:1px dashed var(--accent);background:var(--accent-100);color:var(--accent);font-weight:600;font-size:13px;cursor:pointer;transition:background .15s,border-color .15s}.addIng:hover{background:#1766d11f;border-style:solid}.button-danger.small{padding:4px 10px;font-size:16px;border-width:1.5px;min-width:auto;border-radius:8px}.tags-input-container{display:flex;flex-wrap:wrap;gap:8px;padding:8px;border:2px solid var(--border, #ddd);border-radius:8px;min-height:44px;cursor:text;background:var(--input-bg, #fff);transition:border-color .2s}.tags-input-container:focus-within{border-color:var(--accent)}.tag-item{background:var(--accent);color:#fff;padding:4px 10px;border-radius:6px;font-size:13px;display:flex;align-items:center;gap:6px;white-space:nowrap}.remove-tag{cursor:pointer;font-weight:700;font-size:15px;line-height:1;opacity:.8;transition:opacity .15s}.remove-tag:hover{opacity:1}.tag-input{border:none;outline:none;flex:1;min-width:120px;font-size:14px;background:transparent;color:var(--text)}.tag-input::placeholder{color:var(--text-muted, #999)}.tag-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.tag-suggestion{background:var(--card-bg, #e9ecef);color:var(--text);padding:6px 12px;border-radius:6px;font-size:13px;cursor:pointer;border:1px solid var(--border, #ddd);transition:background .15s,border-color .15s}.tag-suggestion:hover{background:var(--accent);color:#fff;border-color:var(--accent)}[data-theme=dark] .recipe-modal{background:var(--card-bg);box-shadow:0 20px 60px #00000080;border:1px solid var(--border)}[data-theme=dark] .modal-close{color:var(--muted)}[data-theme=dark] .modal-close:hover{background:#ffffff0f;color:var(--text)}[data-theme=dark] .modal-title{color:var(--text)}[data-theme=dark] .recipe-card{background:var(--card-bg);border-color:var(--border);box-shadow:var(--shadow)}[data-theme=dark] .recipe-card h3{color:var(--text)}[data-theme=dark] .recipe-section{border-bottom-color:var(--border)}[data-theme=dark] .actions{border-top-color:var(--border)}[data-theme=dark] .badge--secondary{background:#ffffff0f;color:var(--muted);border-color:var(--border)}[data-theme=dark] .tags-input-container{background:var(--input-bg);border-color:var(--border)}[data-theme=dark] .clock-face{fill:var(--card-bg);stroke:var(--border)}[data-theme=dark] .clock-tick{stroke:var(--muted)}[data-theme=dark] .clock-hand.hour{stroke:var(--text)}[data-theme=dark] .head-icon circle,[data-theme=dark] .head-icon path{fill:#ffffff14;stroke:var(--muted)}[data-theme=dark] .head-icon.active circle,[data-theme=dark] .head-icon.active path{fill:var(--accent);stroke:var(--accent)}[data-theme=dark] .tag-filter-chip{background:var(--card-bg);color:var(--muted);border-color:var(--border)}[data-theme=dark] .tag-filter-chip:hover{color:var(--accent);border-color:var(--accent)}[data-theme=dark] .tag-filter-chip.active{background:var(--accent);color:#fff}[data-theme=dark] .recipe-search-bar .list-search{background:var(--input-bg);color:var(--text);border-color:var(--border)}[data-theme=dark] .stored-raw pre{background:#ffffff0a;color:var(--text)}.weather-card{background:#fff;padding:16px;border-radius:10px;box-shadow:0 8px 30px #1218280f;width:100%;box-sizing:border-box}.weather-card.modern-card{max-width:1500px;margin:18px auto;padding:18px;border-radius:12px;background:#fff;border:1px solid rgba(25,30,35,.08);box-shadow:0 8px 20px #0c12180f;font-family:Inter,Roboto,Segoe UI,system-ui,-apple-system,Helvetica Neue,Arial;color:#0f1720}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.title{font-size:20px;margin:0}.badge{background:linear-gradient(90deg,#6366f1,#06b6d4);color:#fff;padding:6px 10px;border-radius:999px;font-size:12px;box-shadow:0 2px 6px #6366f11f}.grid{display:grid;grid-template-columns:1fr 840px;grid-gap:14px}@media (max-width: 900px){.grid{grid-template-columns:1fr}}.card-section{border:1px solid rgba(15,23,42,.06);padding:12px;border-radius:10px;background:linear-gradient(180deg,#fff,#fbfdff)}.next7{grid-column:1 / -1}.daily-chart{height:360px!important;width:100%!important}.current{display:flex;align-items:center;justify-content:space-between}.current .left{display:flex;flex-direction:column;gap:6px}.temp{font-size:44px;font-weight:700;color:#0b1220}.desc{font-size:14px;color:#475569;text-transform:capitalize;font-weight:700}.meta{font-size:12px;color:#6b7280;display:flex;gap:10px;margin-top:6px}.icon{width:96px;height:96px;object-fit:cover}.weather-icon-wrap{position:relative;width:128px;height:128px;display:inline-block}.weather-icon-wrap .weather-icon.large{width:128px;height:128px;object-fit:contain;display:block}.weather-icon-wrap .cloud-badge{position:absolute;top:6px;right:6px}.weather-icon-wrap .cloud-badge .cloud-badge-percent{min-width:22px;height:22px;font-size:10px}.stored-raw pre{background:#0f172233;border-radius:8px;padding:12px;max-height:280px;overflow:auto;color:#0f1720;font-size:12px;line-height:1.3}.hour-list,.day-list{display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;padding-top:6px}.hour,.day{min-width:72px;background:#0f172a08;padding:8px;border-radius:8px;text-align:center}.hour-time,.day-name{font-size:12px;color:#374151}.hour-temp,.day-temp{font-size:14px;font-weight:600;color:#0b1220}.hour-tile{display:grid;grid-template-columns:90px 1fr;gap:12px;align-items:center;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;box-shadow:0 1px 2px #0206170a}.hour-tile .hour-time{font-weight:800;color:#0b1220;font-size:14px}.hour-tile .hour-temp{font-weight:800;font-size:16px;color:#0b1220}.hour-tile .hour-desc{font-size:12px;color:#64748b;font-weight:700}.hour-tile .hour-precip{font-size:12px;color:#64748b;font-weight:700;margin-top:6px;display:flex;gap:6px;align-items:center;justify-content:center;text-align:center}.hour-tile .hour-precip .precip-item{color:inherit;font-weight:700}.hour-tile .hour-precip .precip-sep{color:#94a3b8}.hour-tile .hour-icon{width:48px;height:48px;display:block}.hour-tile .hour-icon-missing{color:#94a3b8}.hour-tile .hour-right{color:#334155}.barometer{display:flex;flex-direction:column;align-items:center;gap:6px}.barometer svg{display:block}.compact-gauge{display:flex;align-items:center;justify-content:center}.compact-gauge .g-needle line{stroke-width:2}.compact-gauge text{font-size:11px!important}.hour-tile .barometer,.hour-tile .humidity-gauge,.hour-tile .wind-compass{width:80px}.hour-tile .wind-compass .compass-label{font-size:10px}.hour-tile .wind-compass .compass-deg{font-size:11px}.wind-compass{display:flex;flex-direction:column;align-items:center;gap:8px}.wind-compass svg{display:block}.wind-compass svg{overflow:visible}.wind-compass .compass-label{font-size:12px;fill:#374151;font-weight:800}.wind-compass .compass-deg{font-size:14px;fill:#0b1220;font-weight:800;letter-spacing:.4px;text-shadow:0 1px 0 rgba(255,255,255,.6)}.wind-speed{font-size:13px;color:#334155;font-weight:700}.wind-gust{font-size:12px;color:#64748b;font-weight:600;margin-top:4px}.wind-gust-current{font-size:13px;color:#0b1220;font-weight:800;background:#0f172a08;padding:6px 10px;border-radius:8px;box-shadow:0 6px 12px #0206170a}.wind-compass .compass-arrow,.wind-compass .compass-center{fill:#ef4444!important}.metric{display:flex;align-items:center;gap:8px}.sunrise-icon svg,.sunset-icon svg{filter:drop-shadow(0 6px 12px rgba(2,6,23,.1));border-radius:8px;background:transparent}.sunrise-icon,.sunset-icon{display:inline-flex;align-items:center;justify-content:center}.sunrise-icon svg circle,.sunset-icon svg circle{opacity:.98}.sunrise-icon svg rect,.sunset-icon svg rect{shape-rendering:crispEdges}.cloud-badge{display:inline-block;position:relative}.cloud-badge .cloud-icon{position:relative;display:inline-block}.cloud-badge .cloud-icon svg{display:block}.cloud-badge-percent{position:absolute;top:-6px;right:-6px;min-width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;background:#0b1220;color:#fff;font-weight:800;font-size:11px;padding:0 6px;border-radius:999px;box-shadow:0 6px 12px #0206171f;line-height:1}.hour-tile.night{background:linear-gradient(180deg,#0f172a,#0b1220);border-color:#ffffff0f;box-shadow:none}.hour-tile.night .hour-time,.hour-tile.night .hour-temp,.hour-tile.night .hour-desc{color:#e6eef8}.hour-tile.night .hour-desc{font-weight:800}.hour-tile.night .hour-precip{color:#e6eef8}.hour-tile.night img.hour-icon{filter:brightness(.9) saturate(.8) drop-shadow(0 2px 6px rgba(0,0,0,.6));opacity:.95}.hour-tile.night .cloud-badge .cloud-icon{display:inline-flex;align-items:center;justify-content:center;padding:8px;border-radius:999px;background:#ffffff14;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.06);box-shadow:0 6px 18px #02061780}.hour-tile.night .cloud-badge .cloud-icon svg{display:block;width:32px;height:32px}.hour-tile.night .cloud-badge .cloud-icon svg path{fill:#fff!important;stroke:#0206175c!important;stroke-width:1.6px!important;stroke-linejoin:round!important;stroke-linecap:round!important;transition:transform .12s ease,filter .18s ease;filter:drop-shadow(0 4px 14px rgba(0,0,0,.7))}.hour-tile.night .cloud-badge .cloud-badge-percent{background:#020617e0;color:#fff;font-weight:900;font-size:12px;padding:0 8px;min-width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 18px #0009;border:1px solid rgba(255,255,255,.05);text-shadow:0 1px 0 rgba(0,0,0,.6);border-radius:999px}.hour-tile.night .gauge-bg{stroke:#e6eef526!important}.hour-tile.night .gauge-tick{stroke:#e6eef540!important}.hour-tile.night .barometer .gauge-arc,.hour-tile.night .humidity-gauge .gauge-arc{filter:drop-shadow(0 2px 6px rgba(0,0,0,.6))}.hour-tile.night .barometer text,.hour-tile.night .humidity-gauge text{fill:#e6eef8!important}.hour-tile.night .wind-compass .compass-label,.hour-tile.night .wind-compass .compass-deg,.hour-tile.night .wind-compass .compass-speed{fill:#e6eef8!important}.hour-tile.night .wind-compass .gauge-bg{stroke:#e6eef51f!important}.hour-tile.night .wind-compass .compass-arrow{opacity:.95;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6))}.hour-tile.night .g-needle line{stroke:#fff!important;stroke-width:3!important;filter:drop-shadow(0 2px 8px rgba(0,0,0,.6))}.hour-tile.night .g-needle circle{fill:#fff!important;stroke:#00000059!important;stroke-width:1.2px!important}.hour-tile.night .humidity-needle line{stroke:#a7f3d0!important;stroke-width:3!important;filter:drop-shadow(0 2px 8px rgba(0,0,0,.6))}.hour-tile.night .humidity-needle circle{fill:#a7f3d0!important;stroke:#00000059!important;stroke-width:1.2px!important}.hour-tile.night .compass-arrow{fill:#ffd6d6!important;stroke:#0000004d!important;stroke-width:.8px!important;filter:drop-shadow(0 2px 8px rgba(0,0,0,.6))}.hour-tile.night .compass-center{fill:#ffd6d6!important;stroke:#0000004d!important}.hour-tile.night .g-needle text,.hour-tile.night .barometer text,.hour-tile.night .humidity-gauge text{fill:#fff!important}.gauge-label{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#475569;margin-top:2px}.gauge-range{font-size:.72rem;color:#94a3b8;margin-top:1px}[data-theme=dark] .gauge-label{color:#cbd5e1}.hour-tile.night .visibility-icon path,.hour-tile.night .visibility-icon circle{stroke:#e6eef8!important}.hour-tile.night .visibility-fill{background:#e6eef51a}.hour-tile.night .barometer,.hour-tile.night .humidity-gauge,.hour-tile.night .wind-compass{background:transparent}.visibility-display{display:flex;align-items:center;gap:10px}.visibility-display .visibility-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}.visibility-display .visibility-icon svg{width:18px;height:18px;display:block}.visibility-display .vis-eye{stroke:#374151;fill:none;stroke-width:1.4}.visibility-display .vis-pupil{stroke:#374151;fill:none;stroke-width:1.6}.visibility-display .vis-body{flex:1;min-width:90px}.visibility-display .vis-label,.visibility-display .vis-value{line-height:18px}.visibility-display .visibility-icon svg{vertical-align:middle}.vis-row-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.vis-label{font-size:13px;color:#334155;font-weight:700}.vis-value{font-size:13px;color:#0b1220;font-weight:800}.hour-tile.night .vis-eye{stroke:#e6eef5e6!important;stroke-width:1.8!important;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6))}.hour-tile.night .vis-pupil{stroke:#e6eef5e6!important;stroke-width:1.8!important}.hour-tile.night .vis-label{color:#e6eef8!important}.hour-tile.night .vis-value{color:#fff!important;font-weight:900!important}.hour-tile.night .visibility-bar{background:#ffffff0a}.hour-tile.night .visibility-fill{background:linear-gradient(90deg,#60a5fa,#06b6d4);box-shadow:0 4px 10px #0009}.weather-main-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;width:100%}@media (max-width: 1100px){.weather-main-grid{grid-template-columns:1fr}}.daylength-chart{min-height:220px!important;height:auto!important;width:100%!important}[data-theme=dark] .weather-card,[data-theme=dark] .weather-card.modern-card{background:#161b22;border-color:#ffffff2e;color:#e6eef8;box-shadow:0 8px 32px #02060cbf}[data-theme=dark] .card-section{background:#ffffff08;border-color:#ffffff1a}[data-theme=dark] .temp{color:#e6eef8}[data-theme=dark] .desc{color:#9fb1c8}[data-theme=dark] .meta{color:#7a90a8}[data-theme=dark] .hour,[data-theme=dark] .day{background:#ffffff0d;color:#e6eef8}[data-theme=dark] .hour-time,[data-theme=dark] .day-name{color:#9fb1c8}[data-theme=dark] .hour-temp,[data-theme=dark] .day-temp{color:#e6eef8}[data-theme=dark] .day-tile{background:#ffffff0a;border-color:#ffffff1a;color:#e6eef8}[data-theme=dark] .hour-tile:not(.night){background:#1c2333;border-color:#ffffff1f}[data-theme=dark] .hour-tile:not(.night) .hour-time,[data-theme=dark] .hour-tile:not(.night) .hour-temp{color:#e6eef8}[data-theme=dark] .hour-tile:not(.night) .hour-desc,[data-theme=dark] .hour-tile:not(.night) .hour-precip{color:#9fb1c8}[data-theme=dark] .hour-tile:not(.night) .hour-right{color:#c8d8ea}[data-theme=dark] .gauge-bg{stroke:#e6eef526!important}[data-theme=dark] .gauge-tick{stroke:#e6eef538!important}[data-theme=dark] .barometer text,[data-theme=dark] .humidity-gauge text{fill:#e6eef8!important}[data-theme=dark] .wind-compass .compass-label{fill:#9fb1c8!important}[data-theme=dark] .wind-compass .compass-deg{fill:#e6eef8!important;text-shadow:none}[data-theme=dark] .wind-compass .compass-speed{fill:#e6eef8!important}[data-theme=dark] .wind-speed{color:#c8d8ea}[data-theme=dark] .wind-gust{color:#9fb1c8}[data-theme=dark] .wind-gust-current{color:#e6eef8;background:#ffffff0f;box-shadow:none}[data-theme=dark] .vis-label{color:#9fb1c8}[data-theme=dark] .vis-value{color:#e6eef8}[data-theme=dark] .visibility-display .vis-eye,[data-theme=dark] .visibility-display .vis-pupil{stroke:#9fb1c8!important}[data-theme=dark] .visibility-bar{background:#ffffff0f}[data-theme=dark] .visibility-fill{background:linear-gradient(90deg,#60a5fa,#06b6d4)}[data-theme=dark] .cloud-badge-percent{background:#020617e0;color:#fff;border:1px solid rgba(255,255,255,.08)}[data-theme=dark] .stored-raw pre{background:#ffffff0a;color:#e6eef8;border:1px solid rgba(255,255,255,.08)}[data-theme=dark] .gauge-label{color:#9fb1c8}[data-theme=dark] .gauge-range{color:#64748b}
