:root{--ink:#173129;--muted:#708078;--paper:#f5f3ec;--card:#fffefa;--green:#183f34;--green2:#2a6654;--lime:#d9edbd;--blue:#dceef2;--line:#dfe3db;--danger:#a63e35;--shadow:0 14px 34px rgba(24,54,44,.08);font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at 85% 0,#e4ead9 0,transparent 28rem),var(--paper)}a{color:var(--green2);text-decoration:none}button,input,select{font:inherit;color:inherit}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;max-width:1120px;margin:auto;padding:0 24px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:800;letter-spacing:.03em}.brand-mark{width:40px;height:40px;display:grid;place-items:center;background:var(--green);color:#fff;border-radius:13px;box-shadow:0 7px 20px rgba(24,63,52,.2)}.brand small{display:block;font-weight:400;color:var(--muted);font-size:11px;letter-spacing:.08em;margin-top:2px}.logout{font-size:14px;color:var(--muted)}.nav{max-width:1120px;margin:0 auto 18px;padding:0 24px;display:flex;gap:8px}.nav a{padding:9px 17px;border-radius:999px;color:var(--muted);font-size:14px}.nav a.active{background:var(--green);color:white}.container{max-width:1120px;margin:auto;padding:0 24px 40px}.hero{min-height:215px;border-radius:30px;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(120deg,#143a30,#2e6856);color:#fff;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:250px;height:250px;border:55px solid rgba(255,255,255,.06);border-radius:50%;right:-45px;top:-95px}.hero h1{font-size:34px;margin:6px 0 9px;letter-spacing:-.03em}.hero p{margin:0;color:#d4e1dc}.eyebrow{text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.14em;color:#6b8b7d}.hero .eyebrow{color:#b7d5c8}.button{border:0;border-radius:13px;padding:12px 20px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.button.primary{background:var(--green);color:white;box-shadow:0 7px 15px rgba(24,63,52,.18)}.button.secondary{background:#e8eee9;color:var(--green)}.button.light{background:#fff;color:var(--green);position:relative;z-index:1}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:-22px;padding:0 25px;position:relative;z-index:2}.summary-card{border-radius:23px;background:var(--card);box-shadow:var(--shadow);padding:25px}.summary-card.electricity{border-top:4px solid #b7d87b}.summary-card.water{border-top:4px solid #8fc9d7}.card-heading{display:flex;align-items:center;gap:12px}.card-heading>div{display:flex;flex-direction:column;font-weight:800}.card-heading small{font-weight:400;color:var(--muted);margin-top:3px}.utility-icon{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:var(--lime);font-weight:800}.water .utility-icon{background:var(--blue)}.meter-value{font-size:32px;font-weight:800;margin:22px 0 2px}.meter-value small{font-size:12px;color:var(--muted);font-weight:400;margin-left:8px}.reading-time{font-size:12px;color:var(--muted)}.last-interval{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:20px;padding-top:17px;color:var(--muted);font-size:13px}.last-interval strong{display:block;color:var(--ink);font-size:16px;margin-top:2px}.empty-inline{border-top:1px solid var(--line);margin-top:20px;padding-top:17px;color:var(--muted);font-size:13px}.section-block{margin-top:42px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:16px}.section-title h2{font-size:22px;margin:4px 0 0}.section-title>a,.hint{font-size:12px;color:var(--muted)}.month-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;border-radius:20px;background:var(--card);box-shadow:var(--shadow);overflow:hidden}.month-grid>div{padding:24px;border-right:1px solid var(--line);display:flex;flex-direction:column}.month-grid>div:last-child{border:0}.month-grid span{font-size:13px;color:var(--muted)}.month-grid strong{font-size:24px;margin:8px 0 3px}.month-grid em{font-style:normal;color:var(--green2);font-size:13px}.month-grid .total{background:#e8efe5}.period-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.period-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;display:grid;grid-template-columns:1fr auto;align-items:end}.period-card>span,.period-card small{grid-column:1/-1;color:var(--muted);font-size:12px}.period-card strong{font-size:21px;margin:12px 0 5px}.period-card b{font-size:17px;color:var(--green2)}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:25px 0 26px}.page-heading h1{font-size:33px;margin:5px 0}.page-heading p{margin:0;color:var(--muted)}.segmented{display:flex;background:#e4e6df;padding:4px;border-radius:13px}.segmented a{padding:9px 16px;border-radius:10px;color:var(--muted);font-size:13px}.segmented a.active{background:white;color:var(--ink);box-shadow:0 3px 12px rgba(0,0,0,.07)}.panel{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:25px;margin-bottom:22px}.panel.accent{border-left:4px solid #91b960}.price-pill{font-size:12px;background:#ebf2e5;padding:8px 11px;border-radius:999px}.reading-form,.appliance-form{display:grid;grid-template-columns:1.1fr 1fr;gap:15px;align-items:end}.reading-form .wide,.appliance-form .wide{grid-column:1/-1}.reading-form .button,.appliance-form .button{justify-self:start}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}input,select{width:100%;border:1px solid #d3d9d1;background:white;border-radius:12px;padding:12px 13px;outline:none}input:focus,select:focus{border-color:#6b9a81;box-shadow:0 0 0 3px rgba(107,154,129,.13)}.compare-form{display:grid;grid-template-columns:1fr 1fr auto;gap:13px;align-items:end}.compare-result{margin-top:18px;padding:18px;background:#edf2e9;border-radius:15px;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.compare-result div{display:flex;flex-direction:column}.compare-result span,.compare-result small{font-size:12px;color:var(--muted)}.compare-result strong{font-size:18px;margin-top:5px}.compare-result small{grid-column:1/-1}.interval-list,.record-list,.appliance-list{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}.interval-item{display:grid;grid-template-columns:24px 1fr;padding:18px 22px;border-bottom:1px solid var(--line)}.interval-item:last-child{border:0}.timeline-dot{width:10px;height:10px;border-radius:50%;background:#90b866;margin-top:5px;box-shadow:0 0 0 5px #edf3e6}.interval-main{display:flex;justify-content:space-between;gap:15px}.interval-main>div:first-child{display:flex;flex-direction:column}.interval-main small{color:var(--muted);margin-top:5px}.interval-numbers{text-align:right}.interval-numbers b,.interval-numbers em{display:block}.interval-numbers em{font-style:normal;color:var(--green2);margin-top:4px}.record-list article{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line)}.record-list article:last-child{border:0}.record-list article>div{display:grid;grid-template-columns:140px 135px 1fr;align-items:center;gap:12px}.record-list span,.record-list small{font-size:12px;color:var(--muted)}.danger-link{border:0;background:none;color:var(--danger);cursor:pointer;font-size:12px}.appliance-summary{display:grid;grid-template-columns:repeat(3,1fr);background:var(--green);color:white;border-radius:22px;padding:25px;margin-bottom:22px}.appliance-summary div{display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.15);padding:0 20px}.appliance-summary div:first-child{padding-left:0}.appliance-summary div:nth-child(3){border:0}.appliance-summary span{font-size:12px;color:#bdd1ca}.appliance-summary strong{font-size:24px;margin-top:7px}.appliance-summary>small{grid-column:1/-1;color:#aac2b9;margin-top:20px}.appliance-form{grid-template-columns:1.3fr 1fr .6fr 1fr}.appliance-list article{display:grid;grid-template-columns:1.4fr 1fr auto;align-items:center;gap:20px;padding:18px 20px;border-bottom:1px solid var(--line)}.appliance-list article:last-child{border:0}.appliance-name{display:flex;gap:12px;align-items:center}.appliance-name>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--lime);font-weight:800}.appliance-name div,.appliance-cost{display:flex;flex-direction:column}.appliance-name small,.appliance-cost span{color:var(--muted);font-size:12px;margin-top:3px}.appliance-cost{text-align:right}.settings-panel{padding:8px 25px}.settings-form>label{display:grid;grid-template-columns:48px 1fr 270px;align-items:center;gap:15px;padding:22px 0;border-bottom:1px solid var(--line)}.settings-form>label>span:nth-child(2){display:flex;flex-direction:column}.settings-form small{font-weight:400;color:var(--muted);margin-top:4px}.setting-icon{width:43px;height:43px;border-radius:13px;display:grid;place-items:center}.setting-icon.electricity{background:var(--lime)}.setting-icon.water{background:var(--blue)}.price-input{display:flex;align-items:center;gap:8px}.price-input input{font-size:20px;font-weight:800}.price-input i,.price-input em{font-style:normal;color:var(--muted);font-size:12px}.settings-form>.button{margin:20px 0}.notice{background:#e8efe5;border-radius:17px;padding:18px 20px}.notice p{color:var(--muted);font-size:13px;margin:7px 0 0;line-height:1.7}.auth-card{max-width:450px;margin:50px auto;background:var(--card);border-radius:25px;padding:35px;box-shadow:var(--shadow)}.auth-card h1{font-size:29px;margin:6px 0}.muted{color:var(--muted);line-height:1.6}.form-stack{display:flex;flex-direction:column;gap:16px;margin:25px 0}.text-link{font-size:13px}.alert{border-radius:13px;padding:13px 16px;margin:15px 0;font-size:13px}.alert.success{background:#dcebd8;color:#285e3b}.alert.error{background:#f5dfdb;color:#8b312c}.alert.info{background:#e2edf0}.empty-state{padding:35px;text-align:center;color:var(--muted);border:1px dashed #cbd3ca;border-radius:17px;background:rgba(255,255,255,.35)}.empty-state.compact{padding:22px}footer{text-align:center;color:#94a098;font-size:11px;padding:45px 0 10px}
@media(max-width:700px){.topbar{height:66px;padding:0 16px}.nav{padding:0 12px;gap:2px;overflow:auto}.nav a{padding:8px 12px;white-space:nowrap}.container{padding:0 14px 28px}.hero{padding:28px 23px;min-height:210px;border-radius:22px;align-items:flex-start;flex-direction:column}.hero h1{font-size:27px}.summary-grid{grid-template-columns:1fr;padding:0 9px;margin-top:-28px}.summary-card{padding:20px}.month-grid{grid-template-columns:1fr 1fr}.month-grid .total{grid-column:1/-1}.month-grid>div:nth-child(2){border-right:0}.period-grid{grid-template-columns:1fr}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:28px}.reading-form,.appliance-form,.compare-form{grid-template-columns:1fr}.reading-form .wide,.appliance-form .wide{grid-column:auto}.reading-form .button,.appliance-form .button,.compare-form .button{width:100%}.compare-result{grid-template-columns:1fr 1fr}.compare-result div:nth-child(3){grid-column:1/-1}.interval-main{flex-direction:column}.interval-numbers{text-align:left;display:flex;gap:14px}.record-list article>div{grid-template-columns:1fr}.record-list article{align-items:flex-start}.appliance-summary{grid-template-columns:1fr}.appliance-summary div{padding:14px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}.appliance-summary div:first-child{padding-top:0}.appliance-list article{grid-template-columns:1fr auto}.appliance-cost{text-align:left;grid-column:1/2;padding-left:50px}.appliance-list form{grid-row:1/3;grid-column:2}.settings-form>label{grid-template-columns:45px 1fr}.price-input{grid-column:1/-1}.panel{padding:20px 17px}.section-title{align-items:flex-start}.auth-card{margin:25px auto;padding:25px}.brand small{display:none}}
@media(max-width:390px){.nav a{font-size:13px;padding:8px 9px}.month-grid{grid-template-columns:1fr}.month-grid>div{border-right:0;border-bottom:1px solid var(--line)}.month-grid .total{grid-column:auto}.last-interval{flex-direction:column}.hero .button{width:100%}}
.cycle-grid,.average-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:22px}.cycle-card,.average-grid article{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:22px}.cycle-card.electricity{border-top:4px solid #b7d87b}.cycle-card.water{border-top:4px solid #8fc9d7}.cycle-main{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0}.cycle-main div,.average-grid article{display:flex;flex-direction:column}.cycle-main span,.daily-row,.average-grid span,.average-grid small{font-size:12px;color:var(--muted)}.cycle-main strong{font-size:22px;margin-top:5px}.daily-row{border-top:1px solid var(--line);padding-top:15px;display:grid;grid-template-columns:1fr 1fr auto}.settlement-action{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.settlement-action p{color:var(--muted);font-size:13px}.settlement-action form{display:grid;gap:13px}.check-row{display:flex;gap:20px}.check-row label{flex-direction:row;align-items:center}.check-row input{width:auto}.bill-list{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}.bill-list article{display:grid;grid-template-columns:42px 1.6fr 1fr .7fr;gap:15px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}.bill-list article:last-child{border:0}.bill-type{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--lime)}.bill-type.water{background:var(--blue)}.bill-period,.bill-average,.bill-total{display:flex;flex-direction:column}.bill-period span,.bill-period small,.bill-average,.bill-total span{font-size:12px;color:var(--muted);margin-top:3px}.bill-total{text-align:right}.bill-total strong{font-size:20px}.pagination{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:18px}.pagination a,.pagination span{padding:9px 14px;background:var(--card);border-radius:10px;font-size:12px}.current-average{display:grid;grid-template-columns:1.7fr repeat(3,1fr) auto;align-items:center;gap:12px;background:#e8efe5;border-radius:17px;padding:16px 18px;margin-bottom:20px}.current-average div{display:flex;flex-direction:column}.current-average span{font-size:11px;color:var(--muted)}.current-average strong{font-size:14px;margin-top:4px}.current-average a{font-size:12px}.average-grid{grid-template-columns:1fr 1fr 1.15fr}.average-grid article strong{font-size:20px;margin:9px 0 5px}.average-grid article b{font-size:13px;color:var(--green2)}.average-grid article small{margin-top:8px}.average-grid .combined{background:#e8efe5}.calculator-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.calculator-result{display:grid;grid-template-columns:1fr 1fr;gap:15px;background:#e8efe5;border-radius:15px;padding:18px;margin-top:17px}.calculator-result div{display:flex;flex-direction:column}.calculator-result span,.calculator-result small{font-size:12px;color:var(--muted)}.calculator-result strong{font-size:20px;margin-top:5px}.calculator-result small{grid-column:1/-1}.smart-appliance-form{display:grid;grid-template-columns:1.4fr 1fr 1fr .6fr;gap:14px;align-items:end}.smart-appliance-form .wide{grid-column:1/-1}.method-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;background:#f0f3ed;padding:16px;border-radius:15px}.method-fields.hidden{display:none}.smart-appliance-form textarea{border:1px solid #d3d9d1;border-radius:12px;padding:12px;resize:vertical;font:inherit}.parameter-guide{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.parameter-guide p{font-size:13px;color:var(--muted);line-height:1.8;margin:7px 0}.parameter-guide b{color:var(--ink)}.appliance-name em{font-style:normal;font-size:11px;color:var(--muted);margin-top:6px;line-height:1.5}.appliance-list.detailed article{align-items:start}@media(max-width:700px){.cycle-grid,.average-grid,.settlement-action{grid-template-columns:1fr}.bill-list article{grid-template-columns:40px 1fr auto}.bill-average{grid-column:2}.bill-total{grid-row:1/3;grid-column:3}.current-average{grid-template-columns:1fr 1fr}.current-average div:first-child,.current-average a{grid-column:1/-1}.calculator-grid,.smart-appliance-form,.method-fields{grid-template-columns:1fr}.smart-appliance-form .wide,.method-fields.wide{grid-column:auto}.daily-row{grid-template-columns:1fr 1fr}.daily-row small{grid-column:1/-1}}
