:root{font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#30332f;background:#f8f8f3;font-synthesis:none;font-weight:400;--orange: #e57245;--ink: #30332f;--muted: #8b8e84;--line: #e9eae2;--cream: #f8f8f3;--green: #50866a}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #e3a380;outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid #e9aa84;outline-offset:1px;border-color:#e9aa84}h1,h2,h3,p{margin:0}h1{font-size:34px;letter-spacing:-1.1px;font-weight:680;line-height:1.5}h2{font-size:19px;letter-spacing:-.4px;font-weight:650}p{line-height:1.8}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:650;color:#8a8b7f}.crab{width:100px;color:var(--orange);flex-shrink:0}.crab.small{width:39px;height:38px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:45px;border:1px solid #e3e5db;background:#fff;border-radius:10px;padding:11px 18px;font-size:13px;font-weight:600;transition:background .18s,transform .18s}.button:hover:not(:disabled){background:#f2f2e9}.button.primary{background:var(--orange);color:#fff;border-color:var(--orange);box-shadow:0 3px #d55e3520}.button.primary:hover:not(:disabled){background:#d96639;transform:translateY(-1px)}.button.full{width:100%}.text-button{border:0;background:transparent;display:inline-flex;gap:6px;align-items:center;justify-content:center;color:#838775;font-size:12px;min-height:44px;padding:4px 2px;font-weight:550}.text-button:hover{color:var(--orange)}.icon-button{background:transparent;border:0;display:grid;place-items:center;min-width:44px;min-height:44px;border-radius:12px;color:#757a6c}.icon-button:hover{background:#edeee5}.brand{display:flex;align-items:center;gap:10px;font-size:21px;letter-spacing:1px;font-weight:750;line-height:1.1}.brand-sub{display:block;font-size:10px;letter-spacing:4px;font-weight:500;margin-top:8px;color:#7e8274}.brand-button{border:0;background:none;text-align:left;padding:0}.app-shell{display:flex;min-height:100vh}.sidebar{width:236px;background:#f0f1e9;border-right:1px solid #e9eae1;position:fixed;height:100dvh;display:flex;flex-direction:column;padding:35px 23px 22px;z-index:20}.sidebar-label{font-size:10px;letter-spacing:1px;color:#939987;margin:53px 15px 15px}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav button,.settings-nav{display:flex;align-items:center;gap:13px;border:0;background:transparent;padding:14px 17px;border-radius:10px;min-height:48px;font-size:14px;color:#707865;text-align:left}.sidebar nav button>svg:last-child{margin-left:auto;opacity:0}.sidebar nav button.active{background:#fff7eb;color:#c9673d;font-weight:600}.sidebar nav button.active>svg:last-child{opacity:1}.sidebar nav button:hover,.settings-nav:hover{background:#e8eadf}.sidebar-bottom{margin-top:auto}.sidebar-message{padding:22px 16px;color:#92997f}.sidebar-message>span{font-size:30px;color:#a5ad87}.sidebar-message p{font-size:12px;margin-top:8px;line-height:1.9}.settings-nav{width:100%;font-size:13px;padding:12px 15px}.settings-nav.active{color:var(--orange)}.teacher{margin-top:20px;padding:19px 6px 0;border-top:1px solid #dde1d3;display:flex;align-items:center;gap:10px}.teacher-avatar{width:35px;height:35px;display:grid;place-items:center;background:#e2e6d8;border-radius:50%;font-size:13px;color:#70785a}.teacher strong{font-size:12px}.teacher small{display:block;font-size:10px;margin-top:4px;color:#939787}.teacher>svg{margin-left:auto;color:#96a486}.main-shell{margin-left:236px;width:calc(100% - 236px)}.topbar{height:83px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 44px}.desktop-breadcrumb{display:flex;gap:10px;align-items:center;font-size:11px;color:#979c8b}.topbar-right{display:flex;align-items:center;gap:17px}.demo-pill{border:1px solid #e0dcc5;border-radius:6px;padding:5px 9px;font-size:10px;color:#999268;letter-spacing:.5px}.mobile-brand,.mobile-nav{display:none}main{max-width:1320px;margin:auto;padding:37px 44px 30px;min-height:calc(100vh - 151px)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:30px}.page-heading h1{margin-top:8px}.page-heading p{font-size:12px;color:#94988a;margin-top:8px}.dot{padding:0 8px}.date-badge{display:flex;align-items:center;gap:8px;font-size:11px;color:#818973;border:1px solid #e6e7dd;padding:12px;border-radius:8px;background:#fbfbf7}.dashboard-top{display:grid;grid-template-columns:1.62fr 1fr;gap:21px}.balance-card{min-height:225px;background:#f6ddba;border:1px solid #efdab8;border-radius:16px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;padding:27px 31px;color:#454833}.balance-card .eyebrow{color:#868267;font-size:11px;letter-spacing:1px}.hero-amount{font-size:44px;font-weight:670;letter-spacing:-1.5px;line-height:1.4;font-variant-numeric:tabular-nums;margin-top:10px;white-space:nowrap}.hero-amount>span{font-size:23px;vertical-align:baseline;margin-right:8px;font-weight:500}.balance-copy{position:relative;z-index:1}.balance-copy p{font-size:11px;color:#948770;margin-top:8px}.balance-meta{display:flex;gap:25px;font-size:10px;color:#928771;border-top:1px solid #e9cda9;margin-top:22px;padding-top:15px}.balance-meta strong{font-size:17px;font-weight:600;color:#5f6047;padding-right:5px}.balance-meta button{display:flex;align-items:center;font-size:10px;color:#928771;background:none;border:0;padding:0;min-height:27px}.balance-crab{margin-right:0;transform:rotate(-7deg);text-align:center;padding-top:25px;position:relative}.balance-crab:before{content:"";position:absolute;width:115px;height:115px;background:#f9e8cb;border:1px solid #edcf9f;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);z-index:0}.balance-crab .crab{width:90px;position:relative}.balance-crab span{display:block;font-size:7px;letter-spacing:1.5px;color:#b8996d;position:relative;margin-top:6px}.today-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:25px 25px 20px;display:flex;flex-direction:column;justify-content:space-between}.section-kicker{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600}.live-dot{height:6px;width:6px;background:#a1b98d;border-radius:50%}.today-item{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:17px 0 3px}.today-item>span{display:flex;align-items:center;gap:8px;font-size:11px;color:#8a8d80}.today-item strong{font-size:22px;letter-spacing:-.6px;font-variant-numeric:tabular-nums;font-weight:600}.positive{color:#4f866a}.negative{color:#c9523d!important}.today-card>small{font-size:9px;color:#adb0a3;padding-top:18px;border-top:1px solid #f0f1e9;margin-top:17px}.quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:24px 0 30px}.quick-action{display:flex;align-items:center;gap:11px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:21px 16px;transition:transform .18s}.quick-action:hover{transform:translateY(-3px);border-color:#e7c8a8}.quick-action>svg{margin-left:auto;color:#aaa99a;width:14px}.action-icon{width:42px;height:42px;display:grid;place-items:center;background:#f2f3e9;border-radius:12px;color:#839369;flex-shrink:0}.course .action-icon{background:#faeadd;color:#cb8b61}.meal .action-icon{background:#f6ecd2;color:#b49c56}.new .action-icon{background:#e9edf3;color:#7e91ab}.quick-action strong{font-size:13px;font-weight:600}.quick-action small{display:block;font-size:9px;color:#a2a594;margin-top:7px;white-space:nowrap}.panel{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.section-heading{padding:24px 25px 16px;display:flex;align-items:center;justify-content:space-between;gap:15px}.section-heading h2{font-size:16px}.section-heading p{color:#a3a697;font-size:10px;margin-top:7px}.section-heading .text-button{font-size:10px}.entries{padding:0 25px 7px}.entry{display:flex;align-items:center;gap:13px;text-align:left;width:100%;background:none;border:0;border-bottom:1px solid #f0f1e9;padding:17px 0;min-height:76px}.entry:last-child{border-bottom:0}.entry:hover{background:#fcfcf7}.entry-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;flex-shrink:0}.mint{background:#edf3e9;color:#849c72}.peach{background:#fcf0e4;color:#c49970}.entry-main{min-width:0;flex:1}.entry-main strong{font-size:12px;font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry-kind{font-size:10px;font-weight:400;color:#8d9482;margin-left:9px}.entry-main small{display:block;font-size:9px;color:#acb09f;margin-top:8px}.entry-amount{font-size:15px;font-weight:550;font-variant-numeric:tabular-nums;white-space:nowrap}.gentle-note{text-align:center;font-size:10px;color:#aaa996;margin-top:27px;letter-spacing:.7px}.gentle-note span{color:#cbb87f;margin-right:9px}.app-footer{max-width:1320px;margin:0 auto;padding:18px 44px 24px;font-size:9px;color:#b5b7a9;display:flex;justify-content:space-between;letter-spacing:.5px}.list-tools{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.search-field{display:flex;align-items:center;background:#fff;border:1px solid #e2e5d9;border-radius:10px;gap:10px;padding:0 15px;max-width:440px;flex:1;color:#919986}.search-field input{border:0;background:none;width:100%;padding:14px 0;min-width:0;font-size:12px}.search-field input:focus{outline:none}.tabs{display:flex;background:#ebece3;border-radius:9px;padding:4px;gap:3px}.tabs button{border:0;background:transparent;border-radius:7px;padding:10px 15px;min-height:40px;white-space:nowrap;font-size:12px;color:#949b85}.tabs button.selected{background:#fff;color:#5f6850;box-shadow:0 2px 5px #47542a0a}.list-count{font-size:11px;color:#959d86;display:flex;justify-content:space-between;margin:24px 0 15px}.list-count span{font-size:10px;color:#b0b39f}.student-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.student-card{background:#fff;border:1px solid var(--line);border-radius:15px;text-align:left;padding:22px 21px 17px;min-width:0}.student-card:hover{border-color:#d9caa9;box-shadow:0 5px 20px #77754608}.student-top{display:flex;align-items:center;gap:11px}.avatar{width:43px;height:43px;background:#f2e8d8;color:#ab8b58;display:grid;place-items:center;border-radius:13px;font-size:13px;flex-shrink:0;font-weight:600}.color-1{background:#e5eee0;color:#869970}.color-2{background:#e9eaf3;color:#8a88aa}.color-3{background:#f4e3da;color:#bd8970}.student-name{flex:1;min-width:0}.student-name strong{font-size:14px;display:block;overflow-wrap:anywhere}.student-name small{display:block;font-size:10px;color:#a4aa96;margin-top:7px}.student-top>svg{color:#aeb4a1}.student-balance{margin-top:26px}.student-balance>span{font-size:10px;color:#9ba28c}.student-balance strong{display:block;font-size:27px;letter-spacing:-.8px;font-weight:600;margin-top:8px;white-space:nowrap}.student-balance strong small{font-size:15px;font-weight:400;margin-right:6px}.student-bottom{display:flex;align-items:center;gap:5px;border-top:1px solid #f0f1e8;padding-top:15px;margin-top:19px;font-size:9px;color:#959d85;flex-wrap:wrap}.student-bottom span{margin-left:auto;font-size:9px}.field{display:flex;flex-direction:column;gap:8px;margin:0 0 17px;min-width:0;font-size:12px;color:#69705e}.field>span{font-weight:550}.field input,.field select,.field textarea{border:1px solid #dfe3d5;border-radius:9px;background:#fff;padding:12px;width:100%;min-height:45px;color:#424a35;font-size:13px;min-width:0}.field input::placeholder,.field textarea::placeholder{color:#b2b6a9}.field textarea{resize:vertical}.field small{font-size:10px;line-height:1.6;color:#a1a794}.ledger-filters{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:15px;padding:20px;border:1px solid var(--line);border-radius:12px;background:#f0f2e9;margin-bottom:25px}.ledger-filters .field{margin:0}.ledger-filters .field>span{font-size:10px;color:#929b80}.pagination{display:flex;align-items:center;justify-content:center;gap:18px;padding:18px;border-top:1px solid var(--line)}.pagination span{font-size:11px;color:#929b83}.pagination .button{font-size:11px;min-height:40px;padding:8px 12px}.count-pill{background:#f1f3e9;padding:4px 8px;border-radius:5px;color:#909d7d;font-size:10px;margin-left:8px}.back{margin:-10px 0 10px}.status-pill{display:inline-block;font-size:11px;font-weight:450;background:#e9eddf;color:#919d7c;padding:4px 8px;vertical-align:middle;letter-spacing:0;margin-left:14px;border-radius:6px}.detail-hero{display:grid;grid-template-columns:1.35fr 1fr;gap:22px}.detail-hero .balance-card{min-height:200px}.detail-hero .balance-card>.crab{width:85px;transform:rotate(-7deg)}.pricing-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px 25px;display:flex;flex-direction:column;justify-content:center}.pricing-card>div{display:flex;align-items:center;gap:13px;padding:21px 0}.pricing-card>div:first-child{border-bottom:1px solid var(--line)}.pricing-card svg{color:#c19366}.pricing-card span{font-size:12px;flex:1}.pricing-card small{display:block;font-size:10px;color:#a0a68f;margin-top:7px}.pricing-card strong{font-size:18px;font-weight:550}.detail-actions{display:flex;gap:13px;margin:22px 0}.detail-actions .button{min-width:135px}.opening-note{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#969d88;padding:8px 0 20px;gap:10px}.opening-note .text-button{font-size:11px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.settings-card{padding:25px;margin-bottom:22px}.settings-card h2{display:flex;align-items:center;gap:10px;font-size:17px}.settings-card h2 svg{color:#a5ad90}.settings-card p{font-size:12px;color:#929b83;margin:15px 0 23px}.settings-card .button.full{margin-bottom:13px}.notice{font-size:11px;color:#98977b;background:#f6f4e8;border:1px solid #ebe7d4;line-height:1.8;padding:13px 15px;border-radius:8px;margin:12px 0 19px}.settings-card .notice{margin:6px 0 0}.error{font-size:12px;line-height:1.7;padding:13px 15px;color:#b4523f;background:#fff0e9;border:1px solid #efcbbd;border-radius:9px;margin-bottom:18px;overflow-wrap:anywhere}.empty{display:flex;align-items:center;flex-direction:column;padding:50px 20px;text-align:center;color:#b0b6a0}.empty h3{font-size:14px;font-weight:550;margin-top:18px;color:#8a9676}.empty p{font-size:11px;color:#afb7a0;margin:10px 0 15px}.loading{padding:60px;text-align:center;color:#8e9b7c;font-size:13px}.initial-loading{height:100vh;display:grid;place-content:center;text-align:center;justify-items:center;gap:30px;color:#949e82;font-size:14px}.initial-loading .crab{width:70px}.loading-line{height:2px;position:fixed;left:0;right:0;top:0;z-index:100;background:linear-gradient(90deg,transparent,#e9a980,transparent);animation:pulse 1s infinite}.toast{position:fixed;left:50%;bottom:35px;transform:translate(-50%);background:#48583b;color:#fff;border-radius:11px;padding:15px 22px;display:flex;align-items:center;gap:9px;box-shadow:0 6px 25px #23301722;font-size:12px;z-index:100;max-width:90vw}.modal-backdrop{position:fixed;inset:0;background:#29302266;z-index:70;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow-y:auto}.modal{background:#fafbf6;width:500px;max-width:100%;border-radius:19px;padding:22px 27px 25px;box-shadow:0 30px 100px #17231130;max-height:calc(100dvh - 48px);overflow-y:auto}.modal-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px;gap:10px}.modal-heading h2{font-size:21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}fieldset{border:0;padding:0;margin:0;min-width:0}fieldset:disabled{opacity:.7}.opening-box{border:1px solid #e3e6d8;padding:14px;border-radius:9px;margin:15px 0 20px}.check{display:flex;align-items:center;gap:9px;min-height:44px;font-size:12px;line-height:1.8;color:#788568}.check input{width:18px;height:18px;flex-shrink:0;accent-color:var(--orange)}.opening-box p{font-size:11px;color:#949c85;margin:8px 0 16px}.opening-box .field{margin-bottom:2px}.archive-area{border-top:1px solid var(--line);padding:10px 0 18px;margin-top:12px}.archive-area p{font-size:12px;line-height:1.8;color:#b48063;margin-bottom:12px}.selected-student{display:flex;align-items:center;gap:12px;padding:11px 13px;background:#eff2e7;border-radius:10px;min-height:61px}.selected-student .avatar{height:33px;width:33px;font-size:11px}.selected-student strong{font-weight:550;font-size:14px}.field .money-input{font-size:28px;font-weight:550;letter-spacing:-.6px;padding:14px}.summary-box{background:#eef1e6;border:1px solid #e3e9d6;border-radius:11px;padding:17px;margin-bottom:16px}.summary-box>div{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#94a17f;padding:6px 0;gap:10px}.summary-box strong{font-weight:550;color:#5e7049;font-variant-numeric:tabular-nums}.summary-box .summary-total{border-top:1px solid #dce3cc;padding-top:16px;margin-top:10px}.summary-total strong{font-size:23px}.warning{background:#fff0df;border-radius:8px;padding:10px 13px;margin-bottom:17px;color:#b47b4e;font-size:11px}.form-foot{text-align:center;font-size:10px;color:#a1ac90;line-height:1.8;margin:13px 0 0}.entry-detail-title{text-align:center;padding:12px 0 23px}.entry-detail-title h2{font-size:35px;margin:14px 0 8px;font-weight:600}.entry-detail-title p{font-size:14px;color:#8b997a}.detail-list{margin:0 0 20px}.detail-list>div{display:flex;gap:20px;justify-content:space-between;padding:14px 0;border-top:1px solid #e9ecdf;font-size:12px;line-height:1.8}.detail-list dt{color:#a0a890;white-space:nowrap}.detail-list dd{margin:0;text-align:right;color:#6c7b58;overflow-wrap:anywhere}.record-id{max-width:65%;font-size:10px}.login-page{display:grid;grid-template-columns:1.08fr 1fr;min-height:100vh;background:#fcfcf7}.login-art{background:#eeeeda;min-height:100vh;padding:44px 60px;position:relative;overflow:hidden;display:flex;flex-direction:column}.login-art .brand{position:relative;z-index:2}.login-copy{margin:auto 0;padding:70px 0 30px;position:relative;z-index:1}.login-copy h1{font-size:43px;font-weight:600;line-height:1.55;margin:22px 0;color:#525b3f;letter-spacing:0}.login-copy>p{font-size:13px;line-height:2.1;color:#919879}.crab-scene{position:relative;height:215px;margin-top:35px;max-width:410px;border-bottom:1px solid #d9dbbc}.crab-scene>.crab{width:160px;position:absolute;right:20px;bottom:16px;transform:rotate(-8deg)}.sun{width:150px;height:150px;border-radius:50%;background:#e6c792;position:absolute;right:25px;bottom:40px;opacity:.5}.scene-note{font-size:10px;color:#a3a982;position:absolute;bottom:15px;left:0;writing-mode:vertical-rl;letter-spacing:3px}.login-foot{font-size:10px;letter-spacing:1px;color:#a0a889;position:relative;z-index:1}.login-form-wrap{display:flex;justify-content:center;align-items:center;padding:40px}.login-form{width:330px;max-width:100%}.login-form h2{font-size:28px;letter-spacing:-.8px;margin:18px 0 8px}.login-form>.muted{font-size:12px;margin-bottom:36px}.login-form .field{margin-bottom:21px}.login-form .field input{min-height:49px;background:#fffffa}.login-form .button{margin-top:10px;min-height:49px}.security-note{display:flex;align-items:center;justify-content:center;gap:7px;color:#aab399;font-size:10px;margin-top:28px}.demo-hint{border:1px dashed #d6dcc8;background:#f4f6ed;width:100%;margin-top:18px;padding:13px;border-radius:9px;color:#7e9266;font-size:12px;min-height:54px}.demo-hint span{display:block;font-size:9px;margin-top:6px;color:#a6b196}@keyframes pulse{50%{opacity:.25}}@media(min-width:1500px){main{padding-top:50px}.balance-card{min-height:248px}.quick-action{padding:26px 20px}.hero-amount{font-size:50px}.entry{padding:20px 0}.page-heading{margin-bottom:35px}}@media(max-width:1200px){.sidebar{width:205px;padding:30px 18px 20px}.main-shell{margin-left:205px;width:calc(100% - 205px)}main{padding:32px 28px}.topbar{padding:0 28px}.app-footer{padding-left:28px;padding-right:28px}.quick-actions{gap:10px}.quick-action{padding:18px 12px;gap:8px}.quick-action>svg{display:none}.action-icon{width:35px;height:35px}.quick-action small{font-size:8px}.balance-card{padding:24px}.balance-crab{display:none}.hero-amount{font-size:40px}.student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-card{padding:22px 20px}.today-item strong{font-size:20px}.entry-kind{margin-left:5px}.login-art{padding:40px}.login-copy h1{font-size:37px}}@media(max-width:900px){.sidebar{width:175px;padding:27px 14px}.brand{font-size:18px;gap:7px}.brand .crab{width:34px}.brand-sub{font-size:9px;letter-spacing:3px}.main-shell{margin-left:175px;width:calc(100% - 175px)}main{padding:27px 22px}.topbar{height:73px;padding:0 22px}h1{font-size:28px}.date-badge{display:none}.dashboard-top{grid-template-columns:1fr}.balance-card{min-height:225px}.balance-crab{display:block;margin-right:18px}.hero-amount{font-size:43px}.today-card{display:grid;grid-template-columns:1fr 1fr;padding:20px;gap:13px 22px}.section-kicker{grid-column:1/-1}.today-item{display:block;margin:0}.today-item>strong{display:block;margin-top:12px}.today-card>small{grid-column:1/-1;margin:0;padding-top:13px}.quick-actions{grid-template-columns:1fr 1fr}.quick-action{padding:18px}.action-icon{width:39px;height:39px}.quick-action small{font-size:9px}.quick-action>svg{display:block}.student-card{padding:19px 16px}.list-tools{flex-wrap:wrap}.search-field{flex-basis:100%;max-width:none}.tabs{width:100%;justify-content:space-between}.tabs button{flex:1}.ledger-filters{grid-template-columns:1fr 1fr}.detail-hero{grid-template-columns:1fr}.detail-hero .balance-card>.crab{margin-right:15px}.detail-actions .button{min-width:0;flex:1;padding:11px}.pricing-card{flex-direction:row;padding:15px 20px;gap:20px}.pricing-card>div{flex:1;flex-wrap:wrap;padding:7px 0;gap:10px}.pricing-card>div:first-child{border:0;border-right:1px solid var(--line);padding-right:15px}.pricing-card strong{width:100%;padding-left:31px;font-size:19px}.settings-grid{grid-template-columns:1fr}.login-art{padding:35px}.login-copy h1{font-size:30px}.login-form-wrap{padding:30px}.login-copy>p{font-size:12px}.login-form h2{font-size:25px}}@media(max-width:650px){.sidebar{display:none}.main-shell{margin-left:0;width:100%}.topbar{height:74px;padding:0 20px;background:#f8f8f3}.desktop-breadcrumb{display:none}.mobile-brand{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:600;letter-spacing:.4px}.mobile-brand .crab{width:31px;height:33px}.topbar-right{gap:4px}.demo-pill{font-size:9px;padding:4px 6px}.topbar .icon-button{min-width:38px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fbfcf7f5;border-top:1px solid #e6e9dc;padding:6px 23px max(9px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:40;justify-content:space-around}.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:64px;min-height:49px;border:0;background:none;color:#a2aa94;font-size:10px;justify-content:center}.mobile-nav button.active{color:#d1804d}.mobile-nav button.active:before{content:"";position:absolute;top:0;height:3px;width:26px;background:#df9567;border-radius:0 0 5px 5px}main{padding:27px 20px 30px;min-height:calc(100dvh - 144px)}.page-heading{margin-bottom:23px;gap:10px;align-items:center}.page-heading h1{font-size:25px;letter-spacing:-.9px;margin-top:9px}.page-heading .eyebrow{font-size:8px;letter-spacing:1.6px}.page-heading p{font-size:10px;line-height:1.9;margin-top:7px}.page-heading>.button{padding:9px 12px;font-size:11px;flex-shrink:0}.page-heading>.button svg{width:15px}.page-heading .button.secondary{font-size:0;gap:0;min-width:44px;padding:10px}.page-heading .button.secondary svg{width:18px}.dashboard-top{gap:15px}.balance-card{padding:24px 24px 20px;border-radius:14px;min-height:219px}.hero-amount{font-size:39px;margin-top:12px;letter-spacing:-1.5px}.hero-amount>span{font-size:22px;margin-right:6px}.balance-card .eyebrow,.balance-copy p{font-size:10px}.balance-meta{gap:18px;margin-top:20px;padding-top:12px}.balance-meta strong{font-size:16px}.balance-crab{margin-right:3px;padding-top:13px}.balance-crab .crab{width:68px}.balance-crab:before{width:83px;height:83px}.balance-crab span{font-size:5px;letter-spacing:1px}.today-card{border-radius:13px;gap:15px;padding:18px 20px}.section-kicker{font-size:11px}.today-item>span{font-size:10px;gap:6px}.today-item>span svg{width:16px}.today-item strong{font-size:24px;margin-top:8px}.today-card>small{font-size:8px}.quick-actions{gap:11px;margin:17px 0 24px}.quick-action{padding:17px 12px;gap:9px;border-radius:11px}.quick-action strong{font-size:12px}.quick-action small{font-size:8px;margin-top:6px}.quick-action>svg{display:none}.action-icon{width:34px;height:37px;border-radius:10px}.action-icon svg{width:20px}.section-heading{padding:19px 18px 11px}.section-heading h2{font-size:15px}.section-heading p,.section-heading .text-button{font-size:9px}.entries{padding:0 18px 5px}.entry{gap:10px;padding:17px 0;min-height:78px}.entry-icon{width:33px;height:35px;border-radius:10px}.entry-icon svg{width:16px}.entry-main strong{font-size:11px}.entry-kind{font-size:9px;margin-left:4px}.entry-main small{font-size:8px;margin-top:7px}.entry-amount{font-size:13px}.entry>svg:last-child{display:none}.panel{border-radius:12px}.gentle-note{font-size:9px;margin-top:22px;letter-spacing:0}.app-footer{padding:0 20px 90px;font-size:8px}.app-footer>span{font-size:8px}.student-grid{gap:12px}.student-card{padding:15px 13px 13px;border-radius:12px}.student-top{gap:8px}.avatar{width:34px;height:36px;font-size:11px;border-radius:10px}.student-name strong{font-size:12px}.student-name small{font-size:8px;margin-top:5px}.student-top>svg{display:none}.student-balance{margin-top:22px}.student-balance>span{font-size:9px}.student-balance strong{font-size:23px;letter-spacing:-.6px}.student-balance strong small{font-size:12px;margin-right:4px}.student-bottom{font-size:8px;gap:4px;line-height:1.8;margin-top:17px;padding-top:12px}.student-bottom>svg{width:12px}.student-bottom>span{display:none}.list-count{font-size:10px;margin:20px 0 13px}.list-count span{font-size:8px}.list-tools{gap:12px;margin:0}.search-field{padding:0 12px;border-radius:9px}.search-field input{font-size:11px}.tabs button{font-size:11px;min-height:37px}.ledger-filters{padding:15px;gap:13px 11px;margin-bottom:18px}.ledger-filters .field select,.ledger-filters .field input{font-size:11px;padding:10px 8px}.field input[type=date]{appearance:none;min-height:45px}.ledger-filters .field>span{font-size:9px}.pagination{gap:12px;padding:14px 12px}.pagination .button,.pagination span{font-size:10px}.detail-hero{gap:14px}.detail-hero .balance-card{min-height:185px}.detail-hero .balance-card>.crab{width:65px;margin-right:0}.pricing-card{padding:15px 18px;gap:15px}.pricing-card>div{gap:8px}.pricing-card span{font-size:11px}.pricing-card small{font-size:9px}.pricing-card strong{font-size:17px;padding-left:27px}.pricing-card svg{width:18px}.detail-actions{gap:9px;margin:18px 0}.detail-actions .button{font-size:11px;gap:7px}.detail-actions svg{width:16px}.opening-note{font-size:9px;gap:5px;flex-wrap:wrap;padding-bottom:15px}.opening-note .text-button{font-size:10px;min-height:34px}.settings-card{padding:21px}.settings-card h2{font-size:16px}.settings-card p{font-size:11px}.toast{bottom:87px;padding:13px 16px;font-size:11px;white-space:normal;width:max-content;max-width:90vw}.modal-backdrop{padding:12px;align-items:center}.modal{max-height:calc(100dvh - 24px);padding:17px 19px 22px;border-radius:16px}.modal-heading{margin-bottom:15px}.modal-heading h2{font-size:20px}.form-grid{gap:12px}.field{font-size:11px;gap:7px;margin-bottom:16px}.field input,.field select,.field textarea{font-size:16px;padding:11px}.field small{font-size:9px}.check{font-size:11px}.notice{font-size:10px}.error{font-size:11px}.summary-total strong{font-size:21px}.form-foot{font-size:9px}.entry-detail-title h2{font-size:32px}.detail-list>div{font-size:11px;gap:14px}.login-page{display:block;min-height:100dvh}.login-art{display:none}.login-form-wrap{min-height:100dvh;padding:35px 27px;background:radial-gradient(ellipse at top left,#eeeeda 0,transparent 55%),#fcfcf7}.login-form{width:360px}.login-form>.mobile-brand{margin-bottom:66px;font-size:20px;gap:11px}.login-form>.mobile-brand .crab{width:44px;height:43px}.login-form h2{font-size:29px}.login-form>.eyebrow{font-size:9px}.login-form>.muted{font-size:12px;margin-bottom:32px}.login-form .field input{font-size:16px}.security-note{margin-top:27px}}@media(max-width:360px){main{padding:24px 15px}.topbar{padding:0 15px}.mobile-brand{font-size:13px;gap:6px}.demo-pill{font-size:8px}.balance-card{padding:21px 18px;min-height:211px}.hero-amount{font-size:35px}.balance-crab .crab{width:51px}.balance-crab:before{width:65px;height:65px}.balance-crab span{font-size:4px}.balance-meta{gap:13px}.page-heading h1{font-size:22px}.page-heading>.button{font-size:10px;padding:9px;gap:4px}.quick-action{padding:15px 9px;gap:7px}.quick-action small{font-size:7px}.action-icon{width:31px}.student-card{padding:14px 10px}.student-name strong{font-size:11px}.student-balance strong{font-size:20px}.student-balance strong small{font-size:11px}.student-bottom{font-size:7px}.entries{padding:0 14px}.section-heading{padding:17px 14px 9px}.entry{gap:8px}.entry-main strong{font-size:10px}.entry-kind{font-size:8px}.entry-amount{font-size:12px}.entry-icon{width:29px}.today-item strong{font-size:22px}.form-grid{gap:10px}.modal{padding:15px}.field>span{font-size:10px}.login-form>.mobile-brand{font-size:17px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.pending-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.pending-notice .button{flex-shrink:0;font-size:11px;min-height:44px}.pending-notice>span{flex:1;min-width:170px}.income-card{min-width:0;padding:22px 24px;border:1px solid #dce6dc;border-radius:16px;background:#f1f6ee;color:#385641}.income-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px}.income-heading h2{margin:0;font-size:16px}.income-periods{display:flex;gap:2px}.income-periods button{min-height:44px;min-width:44px;padding:8px;border:0;border-radius:9px;color:#6a7c68;background:transparent;font-size:12px}.income-periods button[aria-pressed=true]{color:#fff;background:#52775a}.income-periods button:focus-visible{outline:2px solid #304d38;outline-offset:2px}.income-total{margin:14px 0 20px}.income-total>span{font-size:11px;color:#6a7c68}.income-total>strong{display:block;margin-top:3px;font-size:clamp(30px,3.2vw,42px);font-weight:650;line-height:1.3;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.income-total small{font-size:20px;margin-right:6px}.income-breakdown{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:0 0 18px}.income-breakdown dt{display:flex;gap:6px;align-items:center;font-size:11px;color:#6a7c68}.income-breakdown dd{margin:8px 0 0;font-size:17px;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.income-recharge{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border-top:1px solid #dce6dc;padding-top:14px;font-size:12px}.income-recharge>span{display:flex;align-items:center;gap:6px;color:#6a7c68}.income-recharge>strong{font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0}.income-note{margin:12px 0 0;font-size:10px;color:#70816d;line-height:1.8}@media(min-width:901px){.dashboard-top{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}@media(max-width:600px){.income-card{padding:18px 22px;border-radius:14px}.income-total>strong{font-size:36px}}@media(max-width:360px){.income-card{padding:16px}.income-heading h2{font-size:14px}.income-total>strong{font-size:32px}}
