*{box-sizing:border-box}html{background:#f3f5ef;color:#253b38;font-family:Arial,Microsoft YaHei,sans-serif}body{margin:0}button,input,select,textarea{font:inherit}button,input,select{min-height:44px}button{padding:10px 15px;border:1px solid #b7c9c0;border-radius:10px;background:#fff;color:#254d40;cursor:pointer;font-weight:600}button:hover:not(:disabled){background:#e9f0e8}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:#2e604e;color:white;border-color:#2e604e}button.danger{color:#8b392f;border-color:#c38f85}button.full{width:100%;margin-top:18px}button.quiet{background:transparent}input,select,textarea{width:100%;min-width:0;padding:10px 12px;border:1px solid #b8c5bd;border-radius:8px;background:#fff;color:#273c36}input[type=checkbox]{width:22px;height:22px;min-height:22px;flex-shrink:0}textarea{resize:vertical;line-height:1.6}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #c28732;outline-offset:3px}h1,h2,h3,h4{line-height:1.35}h1{margin:6px 0;font-size:28px;letter-spacing:-.6px}h2{margin:0 0 7px;font-size:23px}h3{margin:28px 0 12px;font-size:18px}h4,p{margin:8px 0}p{line-height:1.65;color:#53675e}small{color:#61766c}.preserve,pre,small{overflow-wrap:anywhere}.preserve,pre{font:inherit;white-space:pre-wrap;line-height:1.7}pre{padding:12px;background:#f2f5ef;border-radius:8px;font-size:13px}summary{cursor:pointer;min-height:44px;padding:12px 0;color:#326650}details{margin:10px 0}li{line-height:1.6}.studio-shell{max-width:1080px;margin:0 auto;padding:22px 22px 50px}.studio-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.studio-header p{font-size:14px;margin:0}.eyebrow{font-size:11px;letter-spacing:2px;color:#5c7969;font-weight:700}.pilot-banner{border:1px solid #d9c59c;padding:11px 15px;border-radius:10px;color:#785c2c;background:#fcf6e9;font-size:13px;line-height:1.5}.feedback{padding:13px 2px;min-height:50px;font-size:14px}.backup-feedback,.feedback{line-height:1.6;overflow-wrap:anywhere}.backup-feedback{margin:12px 0;padding:14px 16px;border:1px solid #b7c9c0;border-radius:10px;background:#edf5ef}.backup-feedback.error{background:#fff1ed;border-color:#c38f85;color:#8b392f}.month-feedback{position:sticky;top:8px;z-index:2;padding:12px 16px;margin:12px 0;border:1px solid #b7c9c0;border-radius:10px;background:#edf5ef;line-height:1.6;overflow-wrap:anywhere}.studio-nav{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:0 0 16px}.studio-nav button{font-size:13px;background:#e9efe7;border-color:transparent;padding:12px 5px}.studio-nav button[aria-current=page]{background:#2c5b4d;color:white}.workspace{border:0;padding:0;margin:0;min-width:0}.period-bar{display:flex;gap:16px;align-items:end;justify-content:space-between;margin-bottom:16px}.period-bar .field{max-width:235px;flex:1}.field{display:flex;flex-direction:column;gap:7px;margin:12px 0;font-size:14px;color:#3e594b;min-width:0}.field>label{font-weight:600;font-size:13px}.panel{padding:25px;border:1px solid #dce4d8;border-radius:18px;background:#fff;box-shadow:0 8px 26px #173b2c07}.panel-title{display:flex;gap:14px;align-items:start;justify-content:space-between}.tag{display:inline-block;border-radius:6px;background:#e5eee4;padding:5px 8px;font-size:12px;line-height:1.4;overflow-wrap:anywhere}.tag.warning,.warning{color:#865827}.warning{background:#fff6e9;padding:8px;border-radius:7px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.metrics>div{display:flex;flex-direction:column;gap:7px;padding:15px;border-radius:12px;background:#f2f5ef}.metrics strong{font-size:29px;font-variant-numeric:tabular-nums}.metrics span{font-size:13px;color:#627569}.fee-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px}.fee-tile{display:flex;flex-direction:column;align-items:start;gap:9px;text-align:left;padding:16px;background:#f7faf5;border-color:#c5d5c7}.fee-tile strong{font-size:22px}.fee-tile span{font-size:16px}.fee-tile small{font-weight:400;font-size:12px;line-height:1.6}.fee-tile.active{outline:2px solid #42775b;background:#e8f1e4}.selection-bar,.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}.toolbar input{flex:1;min-width:170px}.selection-bar{background:#ecf3e8;padding:12px;border-radius:9px;font-size:14px;justify-content:space-between}.cards{display:grid;gap:10px}.record-card{border:1px solid #dce5d9;border-radius:12px;padding:15px;min-width:0}.record-card p{font-size:13px;margin:6px 0}.card-heading{display:flex;justify-content:space-between;gap:12px;align-items:start;font-size:14px}.card-heading>span{flex-shrink:0}.student-label{display:flex;align-items:center;gap:9px;min-height:44px;overflow-wrap:anywhere}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}form>button{margin:10px 0}.confirm-box{border:1px solid #bdcdaa;background:#f7faef;padding:18px;margin:18px 0;border-radius:12px}.confirm-box h3{margin-top:0}.confirm-box button{margin:6px 8px 0 0}.empty{background:#f6f8f2;border:1px dashed #bfcbb8;padding:25px;text-align:center;color:#677a68;margin:15px 0;border-radius:12px}footer{display:flex;justify-content:space-between;gap:12px;margin:20px 0;font-size:11px;color:#6d7e72;line-height:1.6}ul{padding-left:20px}@media (max-width:650px){.studio-shell{padding:16px 12px 35px}.studio-header{gap:12px}.studio-header p{font-size:12px}h1{font-size:24px}.studio-header button{font-size:12px;padding:7px 10px}.studio-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.panel{padding:18px 14px}.panel-title{flex-wrap:wrap}h2{font-size:21px}.form-grid{grid-template-columns:1fr}.fee-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.fee-tile{padding:13px 10px}.fee-tile span{font-size:14px}.fee-tile strong{font-size:21px}.metrics{gap:6px}.metrics>div{padding:12px 10px}.metrics strong{font-size:25px}.metrics span{font-size:11px}.record-card{padding:12px}.card-heading{font-size:13px;gap:6px}.record-card .card-heading>span{max-width:42%;text-align:right}.student-label{gap:7px}.period-bar{gap:8px}.period-bar button{font-size:12px;padding:9px}.period-bar .field{max-width:185px}.selection-bar span{width:100%}.toolbar>button{flex:1}.confirm-box{padding:14px}.confirm-box .student-label{align-items:start}footer{flex-direction:column;gap:4px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}