.app-shell.dashboard-mode{grid-template-columns:246px minmax(0,1fr)}
.dashboard-mode .right-panel,.dashboard-mode .sidebar-divider,.dashboard-mode .sidebar-heading,.dashboard-mode .calendar-filters,.dashboard-mode #add-calendar{display:none}
.dashboard-page{max-width:1540px}
.dashboard-page .page-intro{align-items:center}
.dashboard-page .intro-actions{position:static}
.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;align-items:start}
.dashboard-widget{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);min-width:0;overflow:hidden}
.dashboard-widget-head{display:flex;align-items:center;gap:11px;padding:17px 19px;border-bottom:1px solid var(--line)}
.dashboard-widget-icon{width:36px;height:36px;border-radius:10px;background:var(--green-soft);display:grid;place-items:center;font-size:19px;flex:none}
.dashboard-widget-head small{color:#9ba69d;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px}
.dashboard-widget-head h2{margin:2px 0 0;font-size:15px;letter-spacing:-.3px}
.dashboard-widget-body{padding:6px 18px 17px}
.dashboard-row{display:flex;align-items:center;gap:12px;width:100%;border:0;border-bottom:1px solid var(--line);border-left:3px solid var(--row-color);background:white;text-align:left;padding:10px 12px;margin-top:7px;color:var(--ink);border-radius:7px}
.dashboard-row:hover:not(.static){background:#f8fbf8}
.dashboard-row:last-child{border-bottom:0}
.dashboard-row.static{cursor:default}
.dashboard-date{font-size:10px;color:#78907f;font-weight:800;min-width:65px;max-width:70px;line-height:1.3}
.dashboard-row-main{min-width:0;display:grid;gap:3px}
.dashboard-row-main strong{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-row-main small{font-size:9px;color:#98a69b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-empty{font-size:11px;color:#91a096;margin:16px 0 2px;line-height:1.5}
.dashboard-list{border-left:3px solid var(--row-color);padding:5px 11px 8px;margin:10px 0 6px;background:#fafcf9;border-radius:6px}
.dashboard-list-title{font-weight:850;font-size:11px;margin:2px 0 7px}
.dashboard-list-item{display:flex;align-items:baseline;gap:6px;font-size:11px;padding:5px 0;border-top:1px solid var(--line)}
.dashboard-list-item>span:first-child{color:var(--row-color)}
.dashboard-list-item>span:nth-child(2){flex:1}
.dashboard-list-item small{font-size:9px;color:#91a096}
.dashboard-list-item b{color:#ba674e;font-size:9px}
.dashboard-leaderboard{display:grid;gap:10px;padding-top:9px}
.dashboard-leaderboard>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:9px;background:var(--green-soft);padding:14px;font-size:12px;font-weight:800}
.dashboard-leaderboard strong{color:var(--green)}
.dashboard-weather-now{display:flex;align-items:center;gap:13px;padding:13px 0 16px}
.dashboard-weather-now>span{font-size:34px}
.dashboard-weather-now>strong{font-size:39px;letter-spacing:-2px}
.dashboard-weather-now>div{display:grid;gap:4px;min-width:0}
.dashboard-weather-now b{font-size:12px}
.dashboard-weather-now small{font-size:9px;color:#8c9d91;line-height:1.4}
.dashboard-forecast{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.dashboard-forecast>div{background:#f5f8f3;border-radius:9px;padding:9px 7px;display:grid;gap:5px;text-align:center;min-width:0}
.dashboard-forecast span,.dashboard-forecast small{font-size:9px;color:#829484}
.dashboard-forecast b{font-size:11px;white-space:nowrap}
.dashboard-credit{display:inline-block;color:var(--green);font-size:9px;margin-top:12px}
.dashboard-map{height:230px;position:relative;overflow:hidden;border-radius:9px;background:#e6eee7;margin-top:10px}
.dashboard-map-grid{position:absolute;width:768px;height:768px;top:50%;left:50%;transform:translate(-50%,-50%)}
.dashboard-map-tile{position:absolute;width:256px;height:256px}
.dashboard-map-tile img{position:absolute;inset:0;width:256px;height:256px;object-fit:cover}
.dashboard-map-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#ac3c3c;font-size:35px;text-shadow:0 1px 4px white}
.dashboard-map-footer{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:9px;color:#849389;margin-top:7px}
.dashboard-map-footer a{color:var(--green)}
.dashboard-no-widgets{grid-column:1/-1;text-align:center;background:white;border:1px dashed var(--line);border-radius:14px;padding:45px 20px;color:#819184;font-size:12px}
.dashboard-settings-list{display:grid;gap:5px;margin-top:12px}
.dashboard-settings-row{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:9px;padding:8px}
.dashboard-settings-row>span{flex:1;font-size:11px;font-weight:800;min-width:0}
.dashboard-settings-row small{display:block;color:#96a49a;font-size:9px;font-weight:600;margin:2px 0 0 22px}
.dashboard-settings-row>button:not(.switch){border:1px solid var(--line);border-radius:6px;background:#fff;width:26px;height:25px;color:var(--green);font-weight:800}
.dashboard-settings-row>button:disabled{opacity:.3}
.dashboard-list-choice{display:flex;align-items:center;gap:8px;padding:6px 2px;font-size:11px;font-weight:700}
.dashboard-list-choice input{accent-color:var(--green)}
.profile-preview{display:flex;align-items:center;gap:11px;margin:4px 0 19px}
.profile-preview-avatar{width:49px;height:49px;border-radius:14px;overflow:hidden;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-size:21px;font-weight:850;flex:none}
.profile-preview-avatar img,.avatar img{width:100%;height:100%;object-fit:cover}
.avatar{overflow:hidden}
#profile-button-mobile{overflow:hidden;font-weight:850;color:var(--green);background:var(--green-soft)}
#profile-button-mobile img{width:100%;height:100%;object-fit:cover;border-radius:7px}
.profile-preview strong,.profile-preview small{display:block}.profile-preview strong{font-size:13px}.profile-preview small{font-size:10px;color:#9da9a0;margin-top:3px}
.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}
.theme-option{border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px;display:flex;align-items:center;gap:8px;text-align:left}
.theme-option.selected{border:2px solid var(--green);background:var(--green-soft)}
.theme-option>span{width:22px;height:22px;border-radius:7px;flex:none}
.theme-option strong{font-size:11px;flex:1}.theme-option small{color:var(--green);font-size:9px}
body[data-theme="ocean"]{--bg:#f3f8fa;--green:#216a91;--green-dark:#18516f;--green-soft:#e5f2f8;--line:#e1ebf0}
body[data-theme="lavender"]{--bg:#f8f6fc;--green:#735bb5;--green-dark:#5a448f;--green-soft:#f0ebfa;--line:#e9e4f2}
body[data-theme="rose"]{--bg:#fcf7f8;--green:#aa5c76;--green-dark:#88445d;--green-soft:#faedf1;--line:#f0e5e9}
body[data-theme="sunset"]{--bg:#fcf8f3;--green:#aa6438;--green-dark:#824b2c;--green-soft:#f8ebdc;--line:#eee6dc}
body[data-theme="night"]{--bg:#f4f6fb;--green:#364d84;--green-dark:#2b3e6b;--green-soft:#e8ecf7;--line:#e2e7f0}
body:not([data-theme="sage"]) .sidebar,body:not([data-theme="sage"]) .right-panel{background:var(--bg)}
body:not([data-theme="sage"]) .brand-mark,body:not([data-theme="sage"]) .nav-item.active,body:not([data-theme="sage"]) .household-ranking,body:not([data-theme="sage"]) .list-filters{background:var(--green-soft)}
body:not([data-theme="sage"]) .switch.on{background:var(--green)}
@media(max-width:1220px){.app-shell.dashboard-mode{grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}}
@media(max-width:740px){.app-shell.dashboard-mode{display:block}.dashboard-page{padding-bottom:92px}.dashboard-page .page-intro{display:block}.dashboard-page .intro-actions{margin-top:15px}.dashboard-page .intro-actions .button{box-shadow:none}.dashboard-widget-head{padding:14px}.dashboard-widget-body{padding:4px 13px 14px}.dashboard-grid{gap:10px}.dashboard-weather-now>strong{font-size:33px}.dashboard-forecast{gap:4px}.dashboard-forecast b{font-size:10px}.dashboard-map{height:190px}.theme-options{grid-template-columns:1fr 1fr}.primary-nav .nav-item{min-width:0;flex:1}}
