:root{--ink:#18201c;--muted:#69716b;--paper:#f2f1eb;--card:#fbfaf6;--line:#deded5;--green:#244e3d;--lime:#d9ee78;--red:#b64635;--yellow:#d6aa33;--shadow:0 12px 32px #1f2a2314}*{box-sizing:border-box}html,body{background:var(--paper);min-height:100%;color:var(--ink);margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.shell{grid-template-columns:244px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#e9eee9;background:#17221d;flex-direction:column;height:100vh;padding:26px 18px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:0 8px 34px;display:flex}.brand-mark,.modal-brand{background:var(--lime);color:#17221d;border-radius:12px;place-items:center;width:38px;height:38px;font-family:serif;font-size:20px;font-weight:900;display:grid}.brand strong{letter-spacing:.08em;font-family:serif;font-size:17px;display:block}.brand span{color:#89958e;letter-spacing:.2em;margin-top:2px;font-size:9px;display:block}.nav-label{color:#6f7d75;letter-spacing:.18em;text-transform:uppercase;padding:0 10px 8px;font-size:10px}.sidebar nav{flex-direction:column;gap:5px;display:flex}.sidebar nav button{color:#aeb9b2;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:11px 12px;display:flex}.sidebar nav button:hover{color:#fff;background:#223129}.sidebar nav button.active{color:#fff;background:#30483c}.sidebar nav button em{background:var(--lime);color:#17221d;border-radius:20px;margin-left:auto;padding:1px 7px;font-size:10px;font-style:normal;font-weight:800}.sidebar-foot{margin-top:auto}.hardware-map{border-top:1px solid #2b3932;margin-top:8px;padding:11px 8px 0}.hardware-map span{align-items:center;gap:7px;font-size:11px;display:flex}.hardware-map small{color:#758179;margin-left:14px;font-size:10px}.dot-a,.dot-b{background:#f4f2e9;border-radius:50%;width:7px;height:7px}.dot-b{background:#d05945}.profile{border-top:1px solid #2b3932;align-items:center;gap:9px;margin-top:22px;padding:12px 8px 0;display:flex}.profile div{flex:1;min-width:0}.profile b,.profile span{display:block}.profile b{font-size:12px}.profile span{color:#79867e;margin-top:2px;font-size:9px}.profile button{color:#89958e;background:0 0;border:0;padding:4px}main{min-width:0}.topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);z-index:10;background:#fbfaf6e6;justify-content:space-between;align-items:center;height:86px;padding:0 34px;display:flex;position:sticky;top:0}.crumb{color:#889088;letter-spacing:.08em;font-size:10px}.topbar h1{margin:3px 0 0;font-family:serif;font-size:19px}.top-actions{align-items:center;gap:10px;display:flex}.device-select{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:6px;height:38px;padding:0 10px;display:flex}.device-select>span{border-radius:50%;width:7px;height:7px}.online{background:#4b9b6d}.offline{background:#aaa}.device-select select{appearance:none;background:0 0;border:0;outline:0;max-width:180px;font-size:11px}.icon-button{border:1px solid var(--line);background:#fff;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.content{max-width:1480px;margin:auto;padding:32px 36px 90px}.button{border:1px solid var(--line);min-height:38px;color:var(--ink);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-size:12px;font-weight:700;display:inline-flex}.button.primary{background:var(--green);border-color:var(--green);color:#fff}.button.soft{background:#e8ece8}.button.light{background:#ffffffd9;border-color:#ffffff80}.button:disabled{opacity:.5;cursor:not-allowed}.button.full{width:100%;height:44px}.text-button{color:var(--green);background:0 0;border:0;font-weight:700}.welcome{background:linear-gradient(125deg,#dceb9c,#c7dea9 58%,#b4d1bd);border-radius:22px;justify-content:space-between;align-items:center;min-height:220px;padding:36px 40px;display:flex;position:relative;overflow:hidden}.welcome:after{content:"悟";color:#ffffff29;font-family:serif;font-size:330px;position:absolute;top:-55%;right:10%;transform:rotate(-10deg)}.welcome>div{z-index:1;position:relative}.kicker{letter-spacing:.22em;color:#51634e;font-size:9px;font-weight:800}.welcome h2,.page-intro h2{letter-spacing:.02em;margin:12px 0 9px;font-family:serif;font-size:29px}.welcome p,.page-intro p{color:#536057;margin:0;font-size:13px}.welcome-actions{gap:10px;display:flex}.stats{grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 34px;display:grid}.stat{background:var(--card);border:1px solid var(--line);border-radius:15px;align-items:center;gap:13px;padding:18px;display:flex}.stat-icon{width:40px;height:40px;color:var(--green);background:#e8eee7;border-radius:12px;place-items:center;display:grid}.stat-icon svg{width:18px}.stat span,.stat strong,.stat small{display:block}.stat span{color:var(--muted);font-size:10px}.stat strong{margin:2px 0;font-size:18px}.stat small{color:#969c97;white-space:nowrap;text-overflow:ellipsis;max-width:150px;font-size:9px;overflow:hidden}.section-heading,.page-intro.row{justify-content:space-between;align-items:flex-end;display:flex}.section-heading{margin:0 0 13px}.section-heading span{color:var(--muted);font-size:10px}.section-heading h3{margin:3px 0 0;font-family:serif;font-size:20px}.dual-overview{grid-template-columns:1fr 80px 1fr;align-items:center;display:grid}.flow{text-align:center;color:#8b928d;flex-direction:column;align-items:center;font-size:9px;display:flex}.flow i{background:#cdd1cc;width:1px;height:32px;margin:5px}.screen-summary{background:var(--card);border:1px solid var(--line);border-radius:17px;overflow:hidden}.screen-summary.b{border-top:3px solid var(--red)}.screen-summary.a{border-top:3px solid #252a27}.summary-head{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:17px;display:flex}.summary-head>span{color:#fff;background:#242a26;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.screen-summary.b .summary-head>span{color:var(--red);background:#f6dfd8}.summary-head div{flex:1}.summary-head b,.summary-head small{display:block}.summary-head small{color:var(--muted);margin-top:2px;font-size:9px}.summary-head>i{color:#438161;font-size:9px;font-style:normal}.summary-body{grid-template-columns:1fr 1fr;gap:8px;padding:16px;display:grid}.summary-body span{background:#f0f1ec;border-radius:8px;align-items:center;gap:5px;padding:8px;font-size:10px;display:flex}.summary-foot{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding:11px 16px;font-size:9px;display:flex}.summary-foot span{align-items:center;gap:5px;display:flex}.page-intro{margin-bottom:26px}.page-intro h2{margin-bottom:6px}.scene-grid{grid-template-columns:repeat(5,1fr);gap:13px;display:grid}.scene-card{text-align:left;background:var(--card);border:1px solid var(--line);min-height:270px;color:var(--ink);border-radius:18px;padding:18px;transition:all .2s;position:relative}.scene-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.scene-card.selected{border-color:var(--green);box-shadow:0 0 0 2px #244e3d1f}.scene-top{align-items:center;display:flex}.scene-icon{background:#e8eee7;border-radius:13px;place-items:center;width:42px;height:42px;font-family:serif;font-size:17px;font-weight:800;display:grid}.scene-eyebrow{color:var(--muted);margin-left:8px;font-size:9px}.scene-top i{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:21px;height:21px;margin-left:auto;display:grid}.scene-card h3{margin:20px 0 7px;font-family:serif;font-size:20px}.scene-card>p{color:var(--muted);height:36px;font-size:11px;line-height:1.6}.scene-screens{border-top:1px solid var(--line);flex-direction:column;gap:9px;margin-top:22px;padding-top:13px;display:flex}.scene-screens span{align-items:center;gap:7px;font-size:10px;display:flex}.scene-screens b{color:#fff;background:#282d2a;border-radius:6px;place-items:center;width:20px;height:20px;font-size:9px;display:grid}.scene-screens span+span b{color:var(--red);background:#f4dbd5}.selection-bar,.sticky-save{border:1px solid var(--line);background:#fff;border-radius:15px;justify-content:space-between;align-items:center;margin-top:22px;padding:15px 18px;display:flex}.selection-bar>div{align-items:center;gap:11px;display:flex}.selection-bar>div>svg{color:var(--green)}.selection-bar span,.selection-bar small{display:block}.selection-bar span{font-size:12px}.selection-bar small{color:var(--muted);margin-top:3px;font-size:10px}.save-state{color:#4d755f;background:#e8efe8;border-radius:9px;align-items:center;gap:6px;padding:8px 11px;font-size:10px;display:flex}.editor-grid{grid-template-columns:minmax(440px,1fr) minmax(300px,.75fr);gap:16px;margin-bottom:20px;display:grid}.screen-form,.preview-card{background:var(--card);border:1px solid var(--line);border-radius:17px;padding:20px}.screen-form.a{border-left:4px solid #282d2a}.screen-form.b{border-left:4px solid var(--red)}.screen-form-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:15px;display:flex}.screen-form-head>div{align-items:center;gap:11px;display:flex}.screen-form-head>div>span{color:#fff;background:#282d2a;border-radius:10px;place-items:center;width:37px;height:37px;font-weight:900;display:grid}.screen-form.b .screen-form-head>div>span{color:var(--red);background:#f2d8d1}.screen-form-head h3{margin:0;font-size:13px}.screen-status{color:#42815f;align-items:center;gap:5px;font-size:9px;display:flex}.screen-status i{background:#4b9b6d;border-radius:50%;width:6px;height:6px}.screen-form label,.modal label{color:var(--muted);font-size:10px;display:block}.screen-form input,.screen-form select,.modal input,.inline-form input{border:1px solid var(--line);width:100%;height:39px;color:var(--ink);background:#fff;border-radius:9px;outline:0;margin-top:6px;padding:0 11px;display:block}.screen-form input:focus,.screen-form select:focus,.modal input:focus,.inline-form input:focus{border-color:#6e8d7d;box-shadow:0 0 0 3px #244e3d14}.field-row{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.module-label{color:var(--muted);justify-content:space-between;align-items:center;margin:18px 0 8px;font-size:10px;display:flex}.module-label button{color:var(--green);background:0 0;border:0;align-items:center;gap:3px;font-size:10px;display:flex}.modules{flex-direction:column;gap:6px;display:flex}.modules>div{border:1px solid var(--line);background:#f8f8f4;border-radius:9px;align-items:center;height:38px;display:flex}.modules input{background:0 0;height:36px;margin:0;box-shadow:none!important;border:0!important}.drag{color:#aaa;padding-left:9px;font-size:13px}.modules button{color:#aaa;background:0 0;border:0;padding:8px}.preview-card{background:#e6e3d9;padding:15px}.preview-meta{color:#696b66;justify-content:space-between;padding:0 3px 9px;font-size:9px;display:flex}.eink-screen{aspect-ratio:4/3;background:#f1efe7;border:8px solid #c9c5b9;border-radius:11px;flex-direction:column;padding:15px;display:flex;box-shadow:inset 0 0 0 1px #aaa89f}.preview-card.b .eink-screen{background:#f4efe3;border-color:#d1c4a4}.eink-title{border-bottom:2px solid #252825;justify-content:space-between;padding-bottom:6px;font-size:10px;display:flex}.preview-card.b .eink-title{border-color:#a43d2e}.eink-title b{font-size:13px}.eink-list{flex-direction:column;gap:7px;padding:8px 0;display:flex}.eink-list div{justify-content:space-between;font-size:9px;display:flex}.eink-foot{color:#6e706b;border-top:1px solid #bdbbb2;justify-content:space-between;margin-top:auto;padding-top:6px;font-size:8px;display:flex}.week,.days{text-align:center;grid-template-columns:repeat(7,1fr);gap:3px;font-size:7px;display:grid}.week{margin:9px 0 4px}.days span{background:#e3ded1;border-radius:2px;padding:3px 0}.days .today{color:#fff;background:#202723}.days .event{background:var(--red);color:#fff}.calendar-preview p,.bars-preview p,.photo-preview p{align-items:center;gap:5px;font-size:8px;display:flex}.calendar-preview p i{background:var(--red);border-radius:50%;width:6px;height:6px}.bars-preview>div{align-items:flex-end;gap:4px;height:80px;padding-top:8px;display:flex}.bars-preview i{background:var(--red);border-radius:2px 2px 0 0;flex:1}.bars-preview p{justify-content:space-between;margin:6px 0}.bars-preview b{color:var(--red)}.photo-preview>span{color:#8e856f;background:repeating-linear-gradient(45deg,#ddd4bf,#ddd4bf 7px,#cec4ac 7px 14px);border-radius:5px;place-items:center;height:95px;margin-top:10px;font-size:9px;display:grid}.sticky-save{box-shadow:var(--shadow);position:sticky;bottom:18px}.sticky-save b,.sticky-save span{display:block}.sticky-save b{font-size:12px}.sticky-save span{color:var(--muted);margin-top:3px;font-size:9px}.loading{height:50vh;color:var(--muted);place-items:center;gap:8px;display:grid}@keyframes spin{to{transform:rotate(360deg)}}.empty{background:var(--card);border:1px solid var(--line);text-align:center;border-radius:18px;padding:70px}.empty>div{width:58px;height:58px;color:var(--green);background:#e5ece5;border-radius:18px;place-items:center;margin:auto;display:grid}.empty h2{margin:18px 0 8px;font-family:serif}.empty p{color:var(--muted);margin-bottom:20px;font-size:12px}.device-table{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}.table-head,.device-row{grid-template-columns:2fr 1fr .7fr 1.2fr .7fr;align-items:center;gap:12px;padding:13px 18px;display:grid}.table-head{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;background:#e9eae4;font-size:9px}.device-row{border-top:1px solid var(--line);font-size:11px}.device-name{align-items:center;gap:10px;display:flex}.device-name>i{width:36px;height:36px;color:var(--green);background:#e7eee7;border-radius:10px;place-items:center;display:grid}.device-name b,.device-name small{display:block}.device-name small{color:var(--muted);margin-top:2px;font-size:9px}.status-pill{align-items:center;gap:5px;font-size:10px;display:flex}.status-pill i{background:#aaa;border-radius:50%;width:6px;height:6px}.status-pill.on i{background:#4b9b6d}.row-actions{justify-content:flex-end;gap:6px;display:flex}.row-actions button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 8px;font-size:10px}.row-actions .danger{color:var(--red)}.member-layout{grid-template-columns:1fr 1fr;gap:15px;display:grid}.member-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:21px}.member-card h3{margin:0 0 5px;font-family:serif}.member-card h3 span{color:var(--muted);font-family:system-ui;font-size:10px}.member-card>p{color:var(--muted);font-size:10px}.inline-form{gap:8px;margin-top:18px;display:flex}.inline-form input{margin:0}.member{border-top:1px solid var(--line);align-items:center;gap:10px;padding:11px 0;display:flex}.member b,.member small{display:block}.member b{font-size:11px}.member small{color:var(--muted);font-size:9px}.muted{color:var(--muted)}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:100;background:#1018148c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--card);border-radius:21px;width:min(430px,100%);padding:27px;position:relative;box-shadow:0 30px 80px #00000040}.modal-close{background:#e9eae5;border:0;border-radius:8px;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:18px;right:18px}.modal-brand{margin-bottom:17px}.modal h2{margin:0;font-family:serif;font-size:23px}.modal>p{color:var(--muted);margin:5px 0 20px;font-size:11px}.modal-body{flex-direction:column;gap:13px;display:flex}.modal-note{text-align:center;color:var(--muted);margin:0!important;font-size:9px!important}.form-error{color:var(--red);margin:0;font-size:10px}.tabs{background:#e9eae5;border-radius:9px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.tabs button{background:0 0;border:0;border-radius:7px;padding:8px;font-size:11px}.tabs button.active{background:#fff;box-shadow:0 2px 7px #00000014}.pair-tip{color:#4f6357;background:#e7eee7;border-radius:10px;gap:8px;padding:11px;font-size:10px;line-height:1.5;display:flex}.pair-tip svg{flex:none}.toast{z-index:200;color:#fff;background:#17221d;border-radius:12px;align-items:center;gap:8px;padding:12px 18px;font-size:11px;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #00000038}@media (max-width:1100px){.scene-grid{grid-template-columns:repeat(3,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.editor-grid{grid-template-columns:1fr}.dual-overview{grid-template-columns:1fr;gap:12px}.flow{display:none}}@media (max-width:760px){.shell{display:block}.sidebar{height:auto;padding:15px;position:static}.brand{padding-bottom:15px}.sidebar nav{grid-template-columns:repeat(5,1fr);display:grid}.sidebar nav button{justify-content:center;padding:10px;font-size:0}.sidebar nav button em,.nav-label,.sidebar-foot{display:none}.topbar{height:auto;padding:14px 18px}.topbar h1{font-size:16px}.device-select,.icon-button{display:none}.content{padding:20px 15px 80px}.welcome{padding:26px;display:block}.welcome h2{font-size:23px}.welcome-actions{margin-top:20px}.stats{grid-template-columns:1fr 1fr}.scene-grid{grid-template-columns:1fr}.scene-card{min-height:auto}.selection-bar,.sticky-save,.page-intro.row{flex-direction:column;align-items:flex-start;gap:15px}.field-row,.member-layout,.editor-grid{grid-template-columns:1fr}.table-head{display:none}.device-row{grid-template-columns:1fr 1fr;padding:15px}.device-name{grid-column:1/-1}.device-row>span:nth-of-type(3){display:none}.row-actions{justify-content:flex-start}.top-actions .button{padding:0 10px}.summary-body{grid-template-columns:1fr}}.form-success{color:#376d4d;background:#e5f0e8;border-radius:8px;margin:0;padding:9px 11px;font-size:10px}.required{color:var(--red)}.phone-field{grid-template-columns:140px 1fr;gap:9px;display:grid}.phone-field select{border:1px solid var(--line);width:100%;height:39px;color:var(--ink);background:#fff;border-radius:9px;margin-top:6px;padding:0 8px;display:block}.auth-links{text-align:center}.auth-links button{color:var(--green);background:0 0;border:0;font-size:10px}.button.sm{min-height:30px;padding:4px 10px;font-size:11px}.button.ghost{background:var(--card);color:var(--ink);border-color:var(--line)}.button.ghost:hover{border-color:var(--green);background:#fff}.button.danger{color:var(--red);border-color:#e6c4bc}.button.danger:hover{border-color:var(--red);background:#fbeae7}.cs-input{border:1px solid var(--line);width:100%;height:38px;color:var(--ink);background:#fff;border-radius:9px;padding:0 10px;font-size:13px}.cs-input:focus{border-color:var(--green);outline:none}.spin{animation:1s linear infinite spin}textarea.cs-input{resize:vertical;height:auto;min-height:88px;padding:9px 10px;line-height:1.5}.screen-settings{border-left:3px solid var(--green)}.ss-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:10px;display:grid}.ss-row label{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}.ss-row .cs-input{width:100%}.card-pad{background:var(--card);border:1px solid var(--line);border-radius:17px;margin-bottom:16px;padding:20px}.ct-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.ct-toggle{cursor:pointer;align-items:center;gap:10px;font-size:13px;font-weight:600;display:inline-flex}.ct-toggle input{display:none}.ct-track{background:var(--line);border-radius:99px;flex:none;width:44px;height:24px;transition:background .3s;position:relative}.ct-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .3s;position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #0003}.ct-toggle input:checked+.ct-track{background:var(--green)}.ct-toggle input:checked+.ct-track .ct-thumb{transform:translate(20px)}.ct-inline{flex-wrap:wrap;gap:12px;display:flex}.ct-inline label{color:var(--muted);flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.ct-inline .cs-input{width:auto;min-width:150px}.tt-periods{margin-bottom:16px}.tt-periods-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.tt-periods-head>span{font-size:14px;font-weight:800}.tt-period-list{flex-direction:column;gap:6px;display:flex}.tt-period-row{border:1px solid var(--line);background:#f4f2ea;border-radius:9px;align-items:center;gap:6px;padding:6px 8px;display:flex}.tt-period-row>span{min-width:40px;font-size:13px;font-weight:600}.tt-period-row input{text-align:center;width:48px;height:32px;padding:5px 4px;font-size:12px}.tt-period-row .dash{color:var(--muted)}.tt-empty{color:var(--muted);padding:10px 2px;font-size:13px}.tt-grid-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.tt-grid-head>span{font-size:14px;font-weight:800}.tt-grid-actions{gap:8px;display:flex}.tt-scroll{border:1px solid var(--line);border-radius:12px;overflow-x:auto}.tt-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:520px;font-size:13px}.tt-table th{background:var(--green);color:#fff;padding:8px 4px;font-size:12px;font-weight:700}.tt-table th.period-col{background:#3a6350;width:48px}.tt-table td{border:1px solid var(--line);vertical-align:top;cursor:pointer;height:46px;padding:4px;position:relative}.tt-table td:hover{background:#eef3ed}.tt-table td.filled{background:#eaf3ec}.tt-table td.empty{color:var(--muted);opacity:.45;text-align:center}.tt-table td .plus{padding-top:8px;font-size:16px}.tt-table td b{font-size:12px;line-height:1.3;display:block}.tt-table td small{color:var(--muted);font-size:10px;display:block}.tt-table td em{color:var(--green);opacity:.85;font-size:9px;font-style:normal;display:block}.tt-table td.period-col{text-align:center;cursor:default;background:#f4f2ea;font-size:12px;font-weight:700}.tt-table td.period-col small{color:var(--muted);font-size:9px;font-weight:400;display:block}.content-tabs{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.bill-summary{color:var(--muted);border:1px solid var(--line);background:#eef3ed;border-radius:11px;flex-wrap:wrap;gap:16px;padding:10px 14px;font-size:11px;display:flex}.bill-summary span{align-items:center;gap:5px;display:inline-flex}.bill-row{border:1px solid var(--line);background:#f8f8f4;border-radius:12px;padding:13px 14px}.bill-main{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.bill-cat{color:#3c5a4b;background:#dcebdc;border-radius:7px;padding:3px 9px;font-size:10px;font-weight:800}.bill-name{font-size:13px}.bill-amt{color:#2c2c2c;font-size:13px;font-weight:800}.bill-cycle{color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:2px 7px;font-size:10px}.bill-sub{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;margin-top:9px;font-size:11px;display:flex}.bill-status{border-radius:8px;padding:3px 10px;font-size:11px;font-weight:800}.bill-status.pending{color:#5a6470;background:#eef0f2}.bill-status.soon{color:#9a6a00;background:#fdf0d6}.bill-status.overdue{color:#b23b2b;background:#fbe6e1}.bill-status.paid{color:#2f7d52;background:#e3f1e8}.bill-actions{gap:8px;margin-top:11px;display:flex}.bill-history{color:var(--muted);margin-top:10px;font-size:11px}.bill-history summary{cursor:pointer;color:#3c5a4b;font-weight:700}.bill-history ul{flex-direction:column;gap:5px;margin:8px 0 0;padding:0;list-style:none;display:flex}.bill-history li{background:#f0f1ec;border-radius:7px;justify-content:space-between;padding:6px 10px;display:flex}.express-trail{flex-direction:column;gap:5px;margin:10px 0 0;padding:0;list-style:none;display:flex}.express-trail li{background:#f0f1ec;border-radius:7px;gap:10px;padding:7px 10px;font-size:11px;display:flex}.express-trail li span{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.express-trail li b{color:#2c2c2c;font-weight:600}.content-tabs button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:11px;align-items:center;gap:7px;padding:10px 16px;font-size:13px;font-weight:700;display:inline-flex}.content-tabs button.active{border-color:var(--green);color:var(--green);background:#eef3ed}.note-compose{margin-bottom:16px}.note-compose-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.color-dots{gap:6px;display:flex}.color-dots button{border:2px solid var(--line);cursor:pointer;border-radius:50%;width:22px;height:22px}.color-dots button.active{box-shadow:0 0 0 2px var(--green)}.color-dots.sm button{width:18px;height:18px}.note-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.note-card{border:1px solid var(--line);border-left-width:4px;border-radius:12px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.note-card .note-text{resize:none;background:0 0;border:0;min-height:54px;padding:0;font-size:14px;line-height:1.5}.note-card-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.eink-courses{flex-direction:column;flex:1;gap:6px;display:flex;overflow:auto}.eink-courses>div{border-bottom:1px dashed #c9c5b9;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:5px 0;font-size:12px;display:grid}.eink-courses .ck{font-weight:700}.eink-courses .ct{color:#6b6358;font-variant-numeric:tabular-nums}.eink-notes{flex-direction:column;flex:1;gap:7px;display:flex;overflow:auto}.eink-note{border-left:3px solid var(--line);background:#fbfaf6;border-radius:0 8px 8px 0;padding:5px 9px;font-size:12px;line-height:1.45}.eink-rows{flex-direction:column;flex:1;display:flex;overflow:auto}.eink-rows>div{border-bottom:1px dashed #c9c5b9;align-items:center;gap:8px;min-width:0;padding:6px 2px;font-size:12px;display:flex}.eink-rows>div:last-child{border-bottom:none}.eink-rows .tx{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.eink-rows .mt{color:#6b6358;font-variant-numeric:tabular-nums;flex:none}.eink-rows .eink-tick{border-radius:1px;flex:none;width:3px;height:14px}.eink-check{border:1.5px solid #55503f;flex:none;width:12px;height:12px;display:inline-block}.eink-check.on{background:#55503f}.eink-rows>div.done .tx{opacity:.5;text-decoration:line-through}.eink-sub{color:#6b6358;border-top:1px solid #c9c5b9;margin-top:auto;padding-top:6px;font-size:11px}.hw-list{flex-direction:column;gap:8px;margin-top:10px;display:flex}.hw-row{align-items:center;gap:8px;display:flex}.hw-row input[type=checkbox]{accent-color:#55503f;flex:none;width:16px;height:16px}.hw-row .hw-text{flex:1;min-width:0}.hw-row .hw-progress{flex:none;width:140px}.hw-row .button.sm{flex:none}.hw-row .hw-sender{flex:none;width:84px}.hist-type{color:#6b6358;background:#faf8f2;border:1px solid #c9c5b9;border-radius:6px;flex:none;padding:3px 7px;font-size:11px;line-height:1}.hw-import{background:#faf8f2;border:1px dashed #cfc9bb;border-radius:10px;margin-bottom:12px;padding:10px}.hw-import textarea{min-height:64px}.hw-import-foot{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:8px;display:flex}label.mini{color:#6b6358;flex-direction:column;gap:3px;font-size:11px;display:flex}label.mini select{width:auto;min-width:96px}.eink-empty{color:#6b6358;text-align:center;opacity:.7;margin:auto;padding:18px;font-size:13px}.tt-addcard{margin-top:16px}.tt-hint{color:var(--muted);font-size:12px;font-weight:500}.tt-addrow{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.tt-addrow label{color:var(--ink);flex-direction:column;gap:5px;font-size:12px;font-weight:700;display:flex}.tt-addrow .cs-input{width:auto;min-width:92px}.tt-addrow .button{flex:none}.tt-rowlist{flex-direction:column;gap:6px;display:flex}.tt-rowitem{border:1px solid var(--line);background:#f4f2ea;border-radius:9px;align-items:center;gap:10px;padding:7px 10px;font-size:13px;display:flex}.tt-rowitem .tt-rd{min-width:38px;font-weight:800}.tt-rowitem .tt-rp{color:var(--muted);min-width:44px}.tt-rowitem .tt-rn{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;overflow:hidden}.tt-rowitem .tt-rr{color:var(--ink);min-width:54px}.tt-rowitem .tt-rw{color:var(--green);min-width:64px;font-size:12px}.tt-rowitem .tt-rt{color:var(--muted);font-weight:500}.tt-table tr.tt-break td{text-align:center;color:var(--green);cursor:default;background:#f4f2ea;padding:6px 4px;font-size:12px;font-weight:700}.tt-table tr.tt-break td small{color:var(--muted);margin-left:8px;font-size:10px;font-weight:400;display:inline}.tt-table tr.tt-break:hover td{background:#f4f2ea}.tt-period-row select.cs-input{flex:1;width:auto;min-width:0}.tt-period-row input[type=text].cs-input{text-align:left;flex:1;width:auto;min-width:0}.dual-preview-card{margin-bottom:16px}.dual-preview{grid-template-columns:1fr 56px 1fr;align-items:center;gap:12px;display:grid}.dual-preview .dp-mid{text-align:center;color:#8b928d;letter-spacing:.05em;font-size:9px}.dual-preview .dp-mid span{border:1px solid var(--line);background:var(--card);border-radius:20px;padding:6px 8px;display:inline-block}.dual-preview .preview-card{margin:0}.dp-hardware{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:18px;margin-top:14px;padding-top:12px;font-size:11px;display:flex}.dp-hardware span{align-items:center;gap:7px;display:flex}.dp-hardware i{border-radius:50%;width:9px;height:9px}@media (max-width:1100px){.dual-preview{grid-template-columns:1fr;gap:12px}.dual-preview .dp-mid{display:none}}@media (max-width:760px){.dp-hardware{gap:10px}}.save-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}@media (max-width:760px){.save-actions{justify-content:flex-start;width:100%}}.row{gap:9px;display:flex}.row>*{flex:1;min-width:0}.inline-form.col{flex-direction:column;align-items:stretch}.auth-code-box{background:var(--green);color:#f3f7f2;border-radius:14px;flex-direction:column;gap:6px;margin-bottom:16px;padding:16px 18px;display:flex}.auth-code-box .kicker{color:#cfe0d4;letter-spacing:.18em;font-size:10px}.auth-code-box b{letter-spacing:.16em;font-variant-numeric:tabular-nums;font-family:Inter,system-ui,sans-serif;font-size:30px}.auth-code-box small{color:#cfe0d4;font-size:12px}.auth-code-box code{color:#eef5ec;word-break:break-all;background:#ffffff24;border-radius:7px;padding:4px 8px;font-size:11px}.auth-code-box .button{color:var(--green);background:#f3f7f2;border-color:#0000;align-self:flex-start;margin-top:4px}.auth-row{flex-wrap:wrap}.auth-row .auth-tag{color:#35704c;background:#e7f0e8;border-radius:20px;flex:none;padding:4px 9px;font-size:11px;font-weight:700;line-height:1}.auth-row.frozen{opacity:.6}.profile-grid{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}@media (max-width:760px){.profile-grid{grid-template-columns:1fr}}.profile-grid .member-card{flex-direction:column;gap:4px;display:flex}.profile-grid label.mini{margin-top:10px}.sc-row{flex-direction:column;gap:6px;margin-top:6px;display:flex}.sc-input-wrap{align-items:center;gap:8px;display:flex}.sc-input-wrap .cs-input{flex:1}.sc-input-wrap .button.sm{min-width:56px}.sc-badge{vertical-align:middle;border-radius:999px;margin-left:6px;padding:2px 8px;font-size:11px;font-weight:600}.sc-badge.on{color:#1f9d55;background:#e6f6ec;border:1px solid #b7e6c8}.sc-badge.off{color:#c0392b;background:#fbe9e9;border:1px solid #f3c4c4}.sc-status{margin:6px 0 12px}.profile-grid code{background:var(--soft);border:1px solid var(--line);border-radius:5px;padding:1px 5px;font-size:12px}.family-home-settings{margin-top:18px}.family-home-settings>.mini{margin-top:12px}.family-home-settings>.cs-input{margin-top:6px}.family-member-chips{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.family-member-chips>span{border:1px solid var(--line);background:#eef3ed;border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:12px;display:inline-flex}.family-member-chips button{color:var(--muted);background:0 0;border:0;place-items:center;padding:1px;display:grid}.family-home-settings .save-actions{justify-content:flex-start;margin-top:14px}.family-admin-option{color:#56625a;align-items:center;gap:8px;margin:10px 0;font-size:12px;display:flex}.family-admin-option input{accent-color:#315541}.family-member-chip{border:1px solid var(--line);background:#f8f8f3;border-radius:10px;align-items:center;gap:8px;padding:7px 9px;font-size:12px;display:inline-flex}.family-member-chip em{color:#315541;background:#e5eee5;border-radius:99px;padding:3px 7px;font-size:10px;font-style:normal}.family-member-chip button{color:#758178;background:0 0;border:0;padding:2px;font-size:10px}.family-member-chip button:last-child{color:#969b95;place-items:center;display:grid}.grade-badge{background:var(--soft);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:2px;margin:12px 0;padding:14px;display:flex}.grade-badge b{color:var(--ink);font-size:18px}.grade-badge small{color:#6b7a72;font-size:12px}.album-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:12px;display:grid}.album-item{border:1px solid var(--line);background:#faf8f2;border-radius:10px;flex-direction:column;gap:6px;padding:8px;display:flex}.album-item img{object-fit:cover;background:#eee;border-radius:6px;width:100%;height:110px;display:block}.album-item .button.soft.danger{padding:4px 8px;font-size:12px}.album-screen{flex-direction:column;min-height:0;display:flex;overflow:hidden}.album-screen>.eink-title{flex:none}.album-screen>.album-prev{flex:1;justify-content:stretch;align-items:stretch;width:100%;min-height:0;padding:6px 0 0;display:flex}.album-screen .album-prev img{object-fit:cover;background:#fff;border:0;border-radius:3px;width:100%;height:100%;min-height:0;display:block}.album-screen>.eink-empty{flex:1;place-items:center;display:grid}.grade-badge .kicker{color:#9aa89f;letter-spacing:.18em;font-size:10px}.weather-board{aspect-ratio:4/3;color:#111;background:#fff;border:8px solid #c9c5b9;border-radius:11px;gap:6px;padding:11px 13px 9px;font-family:PingFang SC,Microsoft YaHei,sans-serif;box-shadow:inset 0 0 0 1px #aaa89f}.weather-board-head{border-bottom:1px solid #333;flex:none;justify-content:space-between;align-items:flex-start;height:25px;font-size:11px;display:flex}.weather-board-head b{font-size:14px}.weather-board-head span{font-size:10px}.weather-board-main{flex:1;grid-template-columns:40% 60%;gap:4px;min-height:0;padding-top:2px;display:grid}.weather-current{flex-direction:column;justify-content:flex-start;align-items:flex-start;min-width:0;display:flex}.weather-current>strong{letter-spacing:-.06em;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:clamp(38px,7vw,58px);font-weight:400;line-height:1}.weather-current-desc{align-items:center;gap:4px;margin:2px 0 8px;font-size:15px;display:flex}.weather-current>small{white-space:nowrap;font-size:11px;line-height:1.5}.weather-forecast{text-align:center;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;display:grid}.weather-day{flex-direction:column;align-items:center;gap:2px;min-width:0;font-size:10px;line-height:1.15;display:flex}.weather-day>b{white-space:nowrap;font-size:11px}.weather-day>small{white-space:nowrap;font-size:9px}.weather-day>svg{margin:4px 0 2px}.weather-day>span{white-space:nowrap}.weather-board-meta{border-top:1px solid #aaa;flex-wrap:wrap;flex:none;justify-content:space-between;gap:5px;padding-top:4px;font-size:10px;line-height:1.35;display:flex}.weather-board-advice{text-align:center;border-top:1px solid #333;flex:none;padding-top:5px;font-size:11px;font-weight:600;line-height:1.3}.weather-board-empty{text-align:center;color:#62625e;flex:1;place-items:center;font-size:12px;display:grid}.auth-row.frozen .auth-tag{color:#9a6a4d;background:#efe7e3}.auth-row.expired{opacity:.55}.auth-row.expired .auth-tag{color:#7a7a72;background:#eceae6}.auth-row .button.sm{flex:none}.schedule-workspace{flex-direction:column;gap:16px;display:flex}.schedule-overview{border:1px solid var(--line);background:linear-gradient(120deg,#e8efe8,#f5f4ed);border-radius:17px;justify-content:space-between;align-items:center;gap:20px;padding:21px 24px;display:flex}.schedule-overview h3{margin:5px 0;font-family:serif;font-size:22px}.schedule-overview p{color:var(--muted);margin:0;font-size:11px}.schedule-stats{gap:10px;display:flex}.schedule-stats span{background:#ffffffb8;border:1px solid #1e3c2a14;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:78px;height:68px;display:flex}.schedule-stats b{color:var(--green);font-size:20px}.schedule-stats small{color:var(--muted);margin-top:2px;font-size:9px}.schedule-workspace-grid{grid-template-columns:minmax(0,1.08fr) minmax(310px,.92fr);align-items:start;gap:16px;display:grid}.schedule-calendar-card,.schedule-compose-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:19px;box-shadow:0 6px 20px #1b271f09}.schedule-month-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.schedule-month-head>div:first-child{align-items:center;gap:10px;display:flex}.schedule-month-icon,.schedule-compose-head>span{width:36px;height:36px;color:var(--green);background:#e7efe7;border-radius:10px;place-items:center;display:grid}.schedule-month-head b,.schedule-month-head small{display:block}.schedule-month-head b{font-family:serif;font-size:17px}.schedule-month-head small{color:var(--muted);margin-top:3px;font-size:9px}.schedule-month-actions{align-items:center;gap:5px;display:flex}.schedule-month-actions button{border:1px solid var(--line);color:#536159;background:#fff;border-radius:8px;place-items:center;min-width:31px;height:31px;display:grid}.schedule-month-actions button:first-child{padding:0 10px;font-size:10px}.schedule-month-actions .month-prev{transform:rotate(90deg)}.schedule-month-actions .month-next{transform:rotate(-90deg)}.schedule-calendar-grid{border:1px solid #e5e7e1;border-radius:10px;overflow:hidden}.schedule-weekdays,.schedule-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.schedule-weekdays{background:#f3f5f1;border-bottom:1px solid #e5e7e1;height:32px}.schedule-weekdays span{color:#78847c;place-items:center;font-size:10px;font-weight:700;display:grid}.schedule-days button{color:#313a34;background:#fff;border:1px solid #edf0eb;border-top:0;border-left:0;justify-content:center;align-items:flex-start;height:47px;padding-top:7px;font-size:11px;display:flex;position:relative}.schedule-days button:nth-child(7n){border-right:0}.schedule-days button:nth-last-child(-n+7){border-bottom:0}.schedule-days button.outside{color:#bbc0ba;background:#fafbf9}.schedule-days button.selected span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:25px;height:25px;font-weight:800;display:grid;position:absolute;top:3px;left:50%;transform:translate(-50%)}.schedule-days button.today:not(.selected) span{color:var(--green);font-weight:900}.schedule-days button i{background:#c87955;border-radius:50%;width:5px;height:5px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.schedule-days button i.multi{background:#568b76;border-radius:5px;width:11px}.schedule-agenda-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 0 9px;display:flex}.schedule-agenda-head>div{align-items:baseline;gap:9px;display:flex}.schedule-agenda-head b{font-family:serif;font-size:15px}.schedule-agenda-head small{color:var(--muted);font-size:9px}.schedule-agenda-head button{align-items:center;gap:4px;font-size:10px;display:flex}.schedule-agenda{max-height:220px;overflow:auto}.schedule-agenda-event{border-bottom:1px solid #eef0eb;grid-template-columns:48px 8px 1fr 24px;align-items:center;gap:8px;padding:10px 3px;display:grid}.schedule-agenda-event time{font-variant-numeric:tabular-nums;color:#536159;font-size:10px}.schedule-agenda-event b,.schedule-agenda-event small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.schedule-agenda-event b{font-size:11px}.schedule-agenda-event small{color:var(--muted);margin-top:3px;font-size:9px}.schedule-agenda-event button{color:#9a9f99;background:0 0;border:0;padding:4px}.schedule-empty{color:#879188;flex-direction:column;justify-content:center;align-items:center;gap:5px;height:108px;display:flex}.schedule-empty span{font-size:11px;font-weight:700}.schedule-empty small{font-size:9px}.schedule-compose-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;margin-bottom:14px;padding-bottom:13px;display:flex}.schedule-compose-head b,.schedule-compose-head small{display:block}.schedule-compose-head b{font-family:serif;font-size:17px}.schedule-compose-head small{color:var(--muted);margin-top:3px;font-size:9px}.schedule-field{color:#65736a;margin-bottom:11px;font-size:10px;font-weight:700;display:block}.schedule-field input,.schedule-field select,.schedule-field textarea{width:100%;height:37px;color:var(--ink);background:#fff;border:1px solid #dfe3dc;border-radius:8px;outline:0;margin-top:5px;padding:0 10px;font-size:11px}.schedule-field textarea{resize:vertical;height:auto;min-height:52px;padding:9px 10px}.schedule-field input:focus,.schedule-field select:focus,.schedule-field textarea:focus{border-color:#74a18a;box-shadow:0 0 0 3px #40795b14}.schedule-member-pills{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.schedule-member-pills button{color:#4e5c53;background:#fff;border:1px solid #e0e4df;border-radius:8px;min-width:58px;height:31px;padding:0 12px;font-size:10px}.schedule-member-pills button.active{color:#376d57;background:#e9f3ee;border-color:#74a890;font-weight:800}.schedule-fields-two{grid-template-columns:1fr 1fr;gap:9px;display:grid}.schedule-submit{width:100%;height:40px;margin-top:1px}.schedule-submit:disabled{opacity:.48}.family-day-screen,.family-week-screen{aspect-ratio:4/3;color:#171a18;background:#f4f4ee;border:8px solid #292d2b;border-radius:10px;gap:5px;padding:10px 11px 8px;box-shadow:inset 0 0 0 1px #aaa89f}.family-screen-head,.family-week-head{border-bottom:1px solid #242825;flex:none;justify-content:space-between;align-items:center;height:25px;padding-bottom:4px;display:flex}.family-screen-head>div,.family-week-head>div{align-items:baseline;gap:7px;display:flex}.family-screen-head b,.family-week-head b{font-family:serif;font-size:14px}.family-screen-head span,.family-week-head span,.family-screen-head small,.family-week-head small{color:#525b55;font-size:8px}.family-screen-head>small{font-size:8px}.family-day-grid{flex:1;grid-template-columns:minmax(0,1.65fr) minmax(0,.9fr);gap:8px;min-height:0;display:grid}.family-timeline{flex-direction:column;min-width:0;display:flex}.family-section-title{border-bottom:1px solid #343a36;justify-content:space-between;align-items:center;height:22px;margin-bottom:2px;display:flex}.family-section-title b{font-family:serif;font-size:9px}.family-section-title span{color:#68716a;font-size:7px}.family-event-row{border-bottom:1px solid #c9cdc7;grid-template-columns:34px 5px minmax(0,1fr) auto;align-items:center;gap:5px;min-height:35px;padding:4px 0;display:grid}.family-event-row time{font-variant-numeric:tabular-nums;font-size:7px;font-weight:700}.family-event-row .event-marker{width:4px;height:22px}.family-event-row b,.family-event-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.family-event-row b{font-size:8px}.family-event-row small{color:#606862;margin-top:2px;font-size:6px}.family-event-row em{white-space:nowrap;border:1px solid #a9b0aa;padding:2px 3px;font-size:6px;font-style:normal}.family-side-widgets{flex-direction:column;min-height:0;display:flex}.family-mini-widget{border-bottom:1px solid #aeb3ad;border-left:1px solid #3d423e;flex:1;min-height:0;padding:0 0 5px 7px}.family-mini-widget .family-section-title{height:22px}.family-check-row{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;padding:3px 0;font-size:7px;display:flex;overflow:hidden}.family-check-row i{border:1px solid #343a36;flex:none;width:8px;height:8px}.family-widget-empty{color:#747c75;padding:4px 0;font-size:7px}.family-note-widget p{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:5px 0;font-size:7px;line-height:1.4;display:-webkit-box;overflow:hidden}.family-screen-footer{color:#626a63;border-top:1px solid #444;flex:none;justify-content:space-between;height:15px;padding-top:3px;font-size:6px;display:flex}.family-week-head span{font-family:system-ui,sans-serif}.family-week-grid{flex:1;grid-template-rows:24px minmax(0,1fr);min-height:0;display:grid}.family-week-days,.family-week-columns{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.family-week-days>div{color:#5e665f;border-right:1px solid #c7cbc5;flex-direction:column;justify-content:center;align-items:center;display:flex}.family-week-days>div:last-child,.family-week-column:last-child{border-right:0}.family-week-days span{font-size:6px}.family-week-days b{font-size:8px}.family-week-days .today b{color:#fff;background:#222825;border-radius:50%;place-items:center;width:14px;height:14px;display:grid}.family-week-column{border-top:1px solid #343a36;border-right:1px solid #c7cbc5;flex-direction:column;gap:3px;padding:3px 2px;display:flex;overflow:hidden}.family-week-column.today{background:#ebeee8}.family-week-event{background:#fafaf6;border:1px solid #434843;flex-direction:column;gap:3px;min-height:29px;padding:3px 2px;display:flex;overflow:hidden}.family-week-event.teal{background:repeating-linear-gradient(135deg,#eff3ef,#eff3ef 3px,#e2e8e1 3px 4px)}.family-week-event.coral{border-left:3px solid #bd6a59}.family-week-event.gold{border-left:3px solid #c3a04a}.family-week-event b,.family-week-event small{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:5px;line-height:1.15;display:-webkit-box;overflow:hidden}.family-week-event small{color:#626a63}.family-week-empty{flex:1}.family-day-screen .family-screen-footer,.family-week-screen .family-screen-footer{margin-top:auto}@media (max-width:1050px){.schedule-workspace-grid{grid-template-columns:1fr}.schedule-compose-card{order:-1}}@media (max-width:650px){.schedule-overview{flex-direction:column;align-items:flex-start;padding:17px}.schedule-stats{width:100%}.schedule-stats span{flex:1}.schedule-calendar-card,.schedule-compose-card{padding:14px}.schedule-days button{height:40px}.family-day-screen,.family-week-screen{padding:7px}.family-day-screen .family-event-row{grid-template-columns:27px 4px minmax(0,1fr);gap:3px}.family-day-screen .family-event-row em{display:none}.family-side-widgets{gap:3px}.family-check-row{font-size:6px}}.weather-board{gap:2px}.weather-board-main{flex:none;height:132px}.weather-board-meta{border-top:1px solid #aaa;padding:3px 0}.weather-board-sun{flex:none;align-items:center;gap:7px;padding:2px 0;font-size:10px;line-height:1.25;display:flex}.weather-board-sun i{border-left:1px solid #999;height:12px}.weather-board-advice{place-items:center;min-height:34px;margin-top:1px;display:grid}.weather-board-footer{border-top:1px solid #444;justify-content:space-between;align-items:center;min-height:18px;margin-top:auto;padding-top:3px;font-size:9px;line-height:1;display:flex}.weather-board-footer span:first-child{align-items:center;gap:3px;display:flex}
