:root{--navy:#153258;--navy2:#0f2746;--mint:#abcaca;--bg:#f4f7f9;--text:#17263b;--muted:#728095;--border:#e4e9ee;--white:#fff;--green:#29966f;--amber:#bc7f19;--red:#c64d4d;--blue:#3973b9}*{box-sizing:border-box}.mobile-menu-toggle{display:flex;width:42px;height:42px;border-radius:12px;border:0;background:var(--navy);align-items:center;justify-content:center;flex-direction:column;gap:4px;cursor:pointer;flex-shrink:0}.mobile-menu-toggle span{display:block;width:20px;height:2px;background:#fff;border-radius:2px}.sidebar-overlay{position:fixed;inset:0;background:rgba(15,39,70,.45);z-index:55}.mobile-menu-close{display:none;position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:9px;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:20px;line-height:1;cursor:pointer;align-items:center;justify-content:center}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica Neue,sans-serif}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100dvh;background:var(--navy);color:#fff;padding:28px 20px;display:flex;flex-direction:column}.brand{padding:10px 4px 30px}.brand-logo{width:118px;max-width:100%;height:auto;display:block;margin:0 0 0 7px}nav{display:flex;flex-direction:column;gap:7px}nav a{color:#dbe5ef;text-decoration:none;padding:13px 15px;border-radius:11px;font-size:14px;font-weight:500}nav a.active,nav a:hover{background:rgba(171,202,202,.16);color:#fff}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.13);padding:20px 8px 0;display:flex;flex-direction:column;gap:5px}.sidebar-foot small{color:var(--mint)}.content{min-width:0;padding:32px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.topbar p{margin:0 0 5px;color:var(--muted);font-size:13px}.topbar h1{margin:0;font-size:17px;font-weight:700;color:var(--navy)}.user{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid var(--border);padding:8px 16px 8px 8px;border-radius:16px;box-shadow:0 2px 8px rgba(21,50,88,.06);transition:box-shadow .15s ease,transform .15s ease}.user:hover{box-shadow:0 6px 16px rgba(21,50,88,.1);transform:translateY(-1px)}.avatar,.user>span{display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),#0d2038);color:#fff;border-radius:50%;width:39px;height:39px;font-weight:800;font-size:12px}.user div{display:flex;flex-direction:column;gap:1px;text-align:left}.user strong{font-size:13px;line-height:1.2;color:var(--navy)}.user small{color:var(--muted);font-size:11px;line-height:1.2}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.panel,.stat{background:#fff;border:1px solid var(--border);box-shadow:0 7px 22px rgba(21,50,88,.045);border-radius:18px}.stat{padding:22px 20px 20px;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}.stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent,var(--navy))}.stat:hover{box-shadow:0 12px 30px rgba(21,50,88,.1);transform:translateY(-2px)}.stat span{color:var(--muted);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.stat strong{font-size:30px;font-weight:700;margin:13px 0 5px;color:var(--navy);letter-spacing:-.01em}.stat small{font-size:12px;color:var(--green);font-weight:600}.grid-two{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:18px;margin-bottom:18px}.grid-two.lower{grid-template-columns:1.15fr 1fr}.panel{padding:21px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:15px}@media(max-width:760px){.panel-head{flex-wrap:wrap}.panel-head>a,.panel-head>button,.panel-head>select{flex:1 1 100%}.panel-head-actions{flex-wrap:wrap;width:100%}.panel-head-actions>a,.panel-head-actions>button,.panel-head-actions>select{flex:1 1 100%}}.panel-head h2{margin:0 0 5px;font-size:18px;color:var(--navy)}.panel-head p{margin:0;color:var(--muted);font-size:12px}.panel-button,.panel-head button{border:0;background:#edf3f5;color:var(--navy);border-radius:9px;padding:9px 12px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;transition:background .15s ease}.panel-button:hover,.panel-head button:hover{background:#e2ebef}.panel-button:disabled{opacity:.5;cursor:not-allowed}.lesson-list{display:grid;grid-template-columns:62px minmax(0,1.3fr) minmax(130px,.8fr) auto;column-gap:13px}.lesson-list>.empty-note{grid-column:1/-1}.lesson{display:contents}.lesson>*{border-top:1px solid var(--border);padding:14px 2px;align-self:stretch;display:flex;align-items:center}.lesson-list>.lesson:first-child>*{border-top:0}.time{color:var(--navy);font-size:12.5px;font-weight:700}.lesson-main,.lesson-reason,.teacher{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px}.status-cell{justify-content:center}.lesson-main strong,.teacher strong{font-size:13px}.lesson-main span,.lesson-reason span,.teacher span{color:var(--muted);font-size:11px}.status{padding:7px 9px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.status.green{background:#e8f6f0;color:var(--green)}.status.amber{background:#fff5df;color:var(--amber)}.status.blue{background:#eaf1fb;color:var(--blue)}.attendance{display:flex;flex-direction:column}.ring{position:relative;width:166px;height:166px;margin:8px auto 22px;border-radius:50%;background:conic-gradient(var(--green) 0 93%,#e8edf1 93% 100%);display:grid;place-items:center}.ring:before{content:"";width:116px;height:116px;border-radius:50%;background:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ring div{z-index:1;display:flex;flex-direction:column;align-items:center}.ring strong{font-size:31px;color:var(--navy)}.ring span{font-size:11px;color:var(--muted)}.legend{display:flex;flex-direction:column;gap:10px}.legend span{display:grid;grid-template-columns:12px 1fr auto;align-items:center;font-size:12px;color:var(--muted)}.legend b{color:var(--text)}.dot{width:8px;height:8px;border-radius:50%}.green-dot{background:var(--green)}.amber-dot{background:var(--amber)}.red-dot{background:var(--red)}.blue-dot{background:var(--blue)}.students{display:flex;flex-direction:column}.student{display:flex;align-items:center;gap:14px;border-top:1px solid var(--border);padding:14px 4px}.student>.avatar{flex:0 0 auto}.student-name-link,.student>.student-row-name{flex:1 1 200px;min-width:0}.student-row-info{flex:0 0 auto;white-space:nowrap}.student>.inline-form,.student>.program,.student>button,.student>select{flex:0 0 auto;margin-left:0}.student:first-child{border-top:0}.student div{display:flex;flex-direction:column;gap:4px}.student div strong{font-size:13px}.student small{color:var(--muted);font-size:11px}.program{font-size:10px;font-weight:800;background:#eef3f6;color:var(--navy);padding:7px 9px;border-radius:999px;white-space:nowrap}.student>b{color:var(--green);font-size:13px}.money-row{display:flex;justify-content:space-between;margin-top:14px;font-size:13px}.money-row span{color:var(--muted)}.bar{height:8px;background:#edf1f4;border-radius:999px;overflow:hidden;margin:9px 0 18px}.bar i{height:100%;display:block;background:var(--navy);border-radius:inherit}.bar.secondary i{background:var(--mint)}.payment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:23px}.payment-grid div{background:#f7f9fa;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px}.payment-grid span{font-size:10px;color:var(--muted)}.payment-grid strong{font-size:15px;color:var(--navy)}.materials{margin-bottom:32px}.material-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.material-grid div{border:1px solid var(--border);border-radius:13px;padding:15px;display:flex;flex-direction:column;gap:7px}.material-grid strong{font-size:13px}.material-grid span{font-size:11px;color:var(--muted)}@media(max-width:1050px){.stats{grid-template-columns:repeat(2,1fr)}.grid-two,.grid-two.lower{grid-template-columns:1fr}.attendance{min-height:340px}}@media(max-width:760px){.app-shell{display:block}.mobile-sticky-bar{display:flex}.sidebar{position:fixed;top:0;left:0;height:100dvh;width:250px;max-width:80vw;padding:28px 20px;transform:translateX(-100%);transition:transform .28s ease;z-index:60;overflow-y:auto}.sidebar.sidebar-open{transform:translateX(0)}.brand{padding:0 8px 28px}.sidebar nav{display:flex;flex-direction:column;gap:7px}.sidebar nav a{text-align:left;padding:13px 15px;font-size:14px}.sidebar-foot{display:flex;padding-bottom:20px}.content{padding:14px 14px 18px}.topbar{align-items:flex-start}.topbar h1{font-size:15px}.stats{grid-template-columns:repeat(2,1fr);gap:10px}.stat{padding:15px}.stat strong{font-size:22px}.lesson-list{display:flex;flex-direction:column}.lesson{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;padding:12px 0;border-top:1px solid var(--border)}.lesson-list>.lesson:first-child,.lesson>*{border-top:0}.lesson>*{padding:0}.teacher{display:none}.material-grid,.payment-grid{grid-template-columns:1fr}.student{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;border-top:1px solid var(--border);padding:13px 0}.student>.avatar{flex:0 0 auto}.student-name-link,.student>div{flex:1 1 150px;min-width:0}.student>.inline-form,.student>.program,.student>button,.student>select{flex:0 0 auto;margin-left:49px;width:auto;max-width:calc(100% - 49px)}.student>select{max-width:150px}}.subtabs{display:flex;gap:8px;margin-bottom:18px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.subtab{flex:0 0 auto;padding:9px 15px;border-radius:999px;background:#eef3f6;color:var(--navy);font-size:13px;font-weight:500;text-decoration:none}.subtab.active{background:var(--navy);color:#fff}.empty-note{color:var(--muted);font-size:13px;padding:10px 0}.stats-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}.eye-toggle-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:#fff;border-radius:999px;padding:7px 13px;font-size:11.5px;font-weight:700;color:var(--navy);cursor:pointer;font-family:inherit}.eye-toggle-btn:hover{background:#f7f9fa}.eye-toggle-btn svg{flex-shrink:0}.stat{position:relative}.stat-edit-controls{position:absolute;top:10px;right:10px;display:flex;gap:4px}.stat-edit-controls button{border:1px solid var(--border);background:#fff;border-radius:6px;width:22px;height:22px;font-size:11px;cursor:pointer;color:var(--navy)}.stat-edit-controls button:disabled{opacity:.35;cursor:not-allowed}.stat-add-form{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:10px;align-items:center;margin:0 0 24px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px}.stat-add-form input{border:1px solid var(--border);border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit}.interview-form{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:4px}.interview-form input,.interview-form textarea{border:1px solid var(--border);border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit}.interview-form textarea{grid-column:span 2;min-height:70px;resize:vertical}.interview-form button{grid-column:span 2;justify-self:start}.inline-form{display:flex;gap:6px;align-items:center}.inline-input{border:1px solid var(--border);border-radius:9px;padding:8px 12px;font-size:12px;font-family:inherit}@media(max-width:760px){.interview-form,.stat-add-form{grid-template-columns:1fr}.interview-form button,.interview-form textarea{grid-column:1}}a.student{text-decoration:none;color:inherit;cursor:pointer;transition:background .12s}a.student:hover{background:#f7fafb}.student-name-link{gap:4px;text-decoration:none;color:inherit;cursor:pointer;min-width:0}.form-field,.student-name-link{display:flex;flex-direction:column}.form-field{gap:6px;font-size:12px;color:var(--muted)}.form-field input,.form-field select{border:1px solid var(--border);border-radius:9px;padding:10px 12px;font-size:13px;font-family:inherit;background:#fff;color:var(--text);transition:border-color .15s ease}.form-field select{padding-right:32px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23728095' stroke-width='2'%3E%3Cpath d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px}.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--navy)}.interview-form select{border:1px solid var(--border);border-radius:9px;padding:9px 11px;font-size:13px;font-family:inherit;background:#fff;padding-right:32px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23728095' stroke-width='2'%3E%3Cpath d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px}@media(max-width:450px){.sidebar nav{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:1fr}.topbar p{font-size:11px}.status{grid-column:2}.panel{padding:16px}}.stat-draggable{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;padding-right:36px}.stat-draggable:active{cursor:grabbing}.stat-remove-btn{position:absolute;top:10px;right:10px;border:1px solid var(--border);background:#fff;border-radius:6px;width:22px;height:22px;font-size:12px;line-height:1;cursor:pointer;color:var(--red);z-index:2}.report-picker{border-radius:14px;padding:16px}.report-picker-title{font-size:12px;font-weight:700;letter-spacing:.04em}.domain-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.domain-chip{border:1px solid var(--border);background:#f7f9fa;color:var(--navy);border-radius:999px;padding:8px 14px;font-size:12px;font-weight:700;cursor:pointer}.domain-chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}.available-reports{display:flex;flex-direction:column;gap:0}.available-report-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding:10px 0}.available-report-row:first-child{border-top:0;padding-top:0}.change-log{display:flex;flex-direction:column}.change-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;border-top:1px solid var(--border);padding:14px 2px}.change-row:first-child{border-top:0}.change-row>*{border-top:1px solid var(--border);padding:14px 2px}.change-log>.change-row:first-child>*{border-top:0}.program-row{display:grid;grid-template-columns:180px 1fr 180px;gap:10px;align-items:center;border-top:1px solid var(--border);padding:14px 2px}.program-row:first-child{border-top:0}.program-row .change-reason select{width:100%}.program-row.has-actions{grid-template-columns:180px 1fr 220px auto}@media(max-width:760px){.program-row.has-actions{grid-template-columns:1fr}}.program-row.proposal-row{grid-template-columns:150px 1fr auto 170px}.proposal-remove-btn{white-space:nowrap;align-self:center}.proposal-time-controls{display:flex;flex-direction:column;gap:6px}.proposal-time-controls select{width:100%}@media(max-width:760px){.program-row.proposal-row{grid-template-columns:1fr}.proposal-remove-btn{justify-self:start}}.program-row .change-date{white-space:normal;word-break:break-word;line-height:1.3}@media(max-width:760px){.program-row{grid-template-columns:1fr;gap:6px;align-items:flex-start}}.plan-history-row{display:grid;grid-template-columns:120px 180px 1fr 310px;gap:10px;align-items:start;border-top:1px solid var(--border);padding:14px 2px}.plan-history-row:first-child{border-top:0}.plan-history-dates{font-size:12px;font-weight:700;color:var(--navy);text-align:left;white-space:nowrap;min-width:0}.plan-history-course-list{display:flex;flex-direction:column;gap:6px;min-width:0}.plan-history-course-row{display:flex;flex-direction:row;flex-wrap:wrap;gap:16px;min-width:0}.plan-history-course-item{display:flex;flex-direction:column;gap:1px;min-width:0}.plan-history-course-item strong{font-size:12px;color:var(--text)}.plan-history-course-item span{white-space:nowrap}.plan-history-course-empty,.plan-history-course-item span{font-size:11px;color:var(--muted)}.plan-history-missing{color:var(--red);font-size:10.5px;font-weight:700}.session-badge.inactive{background:#eef1f4;color:var(--muted)}.session-badge.historic{background:#e9f0f9;color:var(--blue,#3973b9)}.plan-history-pill-btn{padding:6px 12px;border-radius:999px;font-size:11px;font-weight:700;border:0;background:#edf3f5;color:var(--navy);cursor:pointer;white-space:nowrap;font-family:inherit}.plan-history-pill-btn:hover{background:#e2ebef}.payment-grid-head.cols-4,.payment-grid-row.cols-4{grid-template-columns:1.6fr 1fr 1fr 1fr}.payment-grid-head.cols-6,.payment-grid-row.cols-6{grid-template-columns:1.5fr .9fr .9fr .9fr 1fr .9fr;gap:8px}@media(max-width:760px){.payment-grid-row.cols-6{grid-template-columns:1fr}.payment-grid-row.cols-6 span:nth-child(5):before{content:"Ay Sonu Bakiye"}.payment-grid-row.cols-6 span:nth-child(6):before{content:"Bakiye"}}.payment-grid-head.cols-7,.payment-grid-row.cols-7{grid-template-columns:.8fr 1.2fr .6fr .9fr .6fr .9fr 1.3fr;gap:8px}@media(max-width:760px){.payment-grid-row.cols-7{grid-template-columns:1fr}.payment-grid-row.cols-7 span:nth-child(3):before{content:"Kimden"}.payment-grid-row.cols-7 span:nth-child(4):before{content:"Tutar"}.payment-grid-row.cols-7 span:nth-child(5):before{content:"KDV"}.payment-grid-row.cols-7 span:nth-child(6):before{content:"KDV Dahil"}.payment-grid-row.cols-7 span:nth-child(7):before{content:"Açıklama"}}.table-scroll-x{overflow-x:auto;border:1px solid var(--border);border-radius:14px}.matrix-table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}.matrix-table td,.matrix-table th{padding:10px 14px;text-align:right;border-bottom:1px solid var(--border)}.matrix-table td:first-child,.matrix-table th:first-child{text-align:left;position:sticky;left:0;background:#fff}.matrix-table thead th{background:#f7f9fa;color:var(--muted);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--border)}.matrix-table thead th:first-child{background:#f7f9fa}.matrix-table tbody tr:last-child td{border-bottom:0}.matrix-table-foot td{background:#f7f9fa;border-top:2px solid var(--navy)}.matrix-table-foot td:first-child{background:#f7f9fa}.panel{margin-bottom:18px}@media(max-width:760px){.panel{margin-bottom:12px}}.finance-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:18px}@media(max-width:1050px){.finance-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.finance-stat-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:12px}.finance-stat-grid .stat{padding:15px}.finance-stat-grid .stat strong{font-size:22px}}@media(max-width:450px){.finance-stat-grid{grid-template-columns:1fr}}.expense-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;grid-column:1/-1}.expense-form-row>*{min-width:0}.detail-monthly-head{padding:0 2px 8px;font-size:10.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.detail-monthly-head,.detail-monthly-row{display:grid;grid-template-columns:100px 1fr 1fr 1fr;gap:10px}.detail-monthly-row{align-items:center;border-top:1px solid var(--border);padding:12px 2px;font-size:12.5px}.detail-monthly-row:first-child{border-top:0}.detail-monthly-head span:nth-child(n+2),.detail-monthly-row span:nth-child(n+2){text-align:right}.detail-monthly-foot{background:#f7f9fa;border-top:2px solid var(--navy);border-radius:0 0 10px 10px}.detail-payment-row{display:grid;grid-template-columns:100px 1fr 1fr 1fr;gap:10px;align-items:center;border-top:1px solid var(--border);padding:12px 2px;font-size:12.5px}.detail-payment-row:first-child{border-top:0}.detail-payment-date{color:var(--navy);font-weight:700}.detail-payment-amount{text-align:right;font-weight:700;grid-column:3}.detail-payment-note{color:var(--muted);grid-column:4;overflow-wrap:anywhere}@media(max-width:600px){.detail-monthly-head{display:none}.detail-monthly-row{grid-template-columns:1fr 1fr;row-gap:4px;padding:12px 2px}.detail-monthly-row>.detail-monthly-month{grid-column:1/-1;font-weight:700;color:var(--navy)}.detail-payment-row{grid-template-columns:1fr 1fr;row-gap:4px;padding:12px 2px}.detail-payment-date{grid-column:1/-1;font-weight:700;color:var(--navy)}.detail-payment-amount{grid-column:1;text-align:left}.detail-payment-note{grid-column:2}}.matrix-table-toggle-row{cursor:pointer}.matrix-table-toggle-row:hover td{background:#f7f9fa}.matrix-table-subrow{cursor:pointer;font-size:11.5px;color:var(--muted)}.matrix-table-subrow td:first-child{padding-left:28px;background:#fbfcfd}.matrix-table-subrow:hover td{background:#f2f5f7}.matrix-toggle{display:inline-block;width:12px;color:var(--muted);font-size:10px}.matrix-note-list{display:flex;flex-direction:column;gap:6px;padding:6px 0 6px 44px}.matrix-note-row{display:grid;grid-template-columns:80px 1fr auto;gap:12px;font-size:11.5px;color:var(--text);white-space:normal}.matrix-note-row span:first-child{color:var(--muted);font-family:IBM Plex Mono,monospace}.matrix-table-note-row{font-size:11px;color:var(--red)}.matrix-table-note-row td:first-child{padding-left:44px;background:#fbfcfd;white-space:normal}.matrix-table-note-row td:first-child span{font-family:IBM Plex Mono,monospace;color:var(--red);margin-right:8px}.record-table{width:100%;border-collapse:collapse;font-size:12px}.record-table td,.record-table th{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.record-table th{background:#f7f9fa;color:var(--muted);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--border)}.record-table tbody tr:hover{background:#fafbfc}.record-table tbody tr:last-child td{border-bottom:0}.record-table-desc{white-space:normal;min-width:160px}.record-table td:last-child{white-space:nowrap}.fin-kv-head,.fin-kv-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center}.fin-kv-head{padding:0 2px 8px;font-size:10.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.fin-kv-row{border-top:1px solid var(--border);padding:12px 2px;font-size:12px}.fin-kv-row:first-child{border-top:0}.fin-kv-row strong{font-size:13px;color:var(--navy)}.fin-vat-head,.fin-vat-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;align-items:center}.fin-vat-head{padding:0 2px 8px;font-size:10.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.fin-vat-row{border-top:1px solid var(--border);padding:12px 2px;font-size:12px}.fin-vat-row:first-child{border-top:0}.fin-vat-row strong{font-size:13px;color:var(--navy)}@media(max-width:760px){.fin-kv-head{display:none}.fin-kv-row{grid-template-columns:1fr;gap:4px}.fin-kv-row span{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.fin-kv-row span:before{content:"Toplam"}.fin-vat-head{display:none}.fin-vat-row{grid-template-columns:1fr;gap:4px}.fin-vat-row span{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.fin-vat-row span:nth-child(2):before{content:"Matrah"}.fin-vat-row span:nth-child(3):before{content:"KDV"}.fin-vat-row span:nth-child(4):before{content:"KDV Dahil"}.payment-grid-row.cols-4{grid-template-columns:1fr}}.cluster-row{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr) 190px;align-items:center;gap:10px;padding:11px 14px;border-top:1px solid var(--border)}.cluster-row:first-child{border-top:0}.fixed-event-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;overflow:hidden}.fixed-event-row{display:flex;flex-direction:column;gap:10px;padding:14px;border-top:1px solid var(--border)}.fixed-event-row:first-child{border-top:0}.fixed-event-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fixed-event-name{flex:1 1 220px;min-width:0;font-weight:700;color:var(--navy)}.fixed-event-info{flex:1 1 240px;min-width:0;font-size:11.5px;color:var(--muted)}.fixed-event-fields{display:grid;grid-template-columns:minmax(0,150px) minmax(0,230px) minmax(0,1fr);gap:10px}.fixed-event-time-pair{display:flex;align-items:center;gap:6px;min-width:0}.fixed-event-time-pair input{flex:1 1;min-width:0}.fixed-event-time-pair em{font-style:normal;color:var(--muted);font-size:12px}.fixed-event-field{display:flex;flex-direction:column;gap:4px;min-width:0}.fixed-event-field>span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.fixed-event-field input,.fixed-event-field select{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--border);border-radius:9px;padding:8px 10px;font-size:12px;font-family:inherit;background:#fff;color:var(--text)}.fixed-event-field input:focus,.fixed-event-field select:focus{outline:none;border-color:var(--navy)}@media(max-width:900px){.fixed-event-fields{grid-template-columns:1fr}}.cluster-row-info{font-size:11.5px;color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){.cluster-row{grid-template-columns:1fr;gap:6px;padding:12px 14px}.cluster-row-info{white-space:normal}.plan-history-row{grid-template-columns:1fr;gap:6px;align-items:flex-start}.plan-history-dates{white-space:normal}}.program-group-toggle{display:flex;align-items:center;gap:10px;width:100%;border:0;background:#f7f9fa;border-radius:9px;padding:10px 12px;margin-top:14px;cursor:pointer;text-align:left;font-family:inherit}.program-group-toggle:hover{background:#eef3f6}.program-group-chevron{color:var(--navy);font-size:11px;flex:0 0 auto}.program-group-label{color:var(--navy);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;flex:1 1 auto;min-width:0}.program-group-count{color:var(--muted);font-size:11px;font-weight:600;flex:0 0 auto;white-space:nowrap}.change-date{color:var(--navy);font-size:12px;font-weight:700;white-space:nowrap;align-self:center}.change-main{display:flex;flex-direction:column;gap:4px;min-width:0;align-self:center}.change-main strong{font-size:13px}.change-main span{color:var(--muted);font-size:11px}.change-reason{display:flex;flex-direction:column;gap:4px;min-width:0;align-self:center}.change-reason span{color:var(--muted);font-size:12px}@media(max-width:760px){.change-log{display:flex;flex-direction:column}.change-row{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--border)}.change-log>.change-row:first-child{border-top:0}.change-row>*{border-top:0;padding:0}.change-date{flex:0 0 auto}.change-main{flex:1 1 160px}.change-reason{flex:1 1 100%}}.interview-form input[type=checkbox]{width:auto;border:0;padding:0;margin:0;accent-color:var(--navy)}.checkbox-field{grid-column:span 2;display:flex;flex-direction:column;gap:8px}.checkbox-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;background:#f7f9fa;border:1px solid var(--border);border-radius:9px;padding:14px;margin-bottom:20px}.checkbox-option{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text);font-weight:500;cursor:pointer}@media(max-width:760px){.checkbox-field{grid-column:1}}.checkbox-group-compact{display:flex;flex-wrap:wrap;gap:8px 18px;background:#f7f9fa;border:1px solid var(--border);border-radius:9px;padding:12px 14px;margin-bottom:20px}.checkbox-group-compact .checkbox-option{flex:0 0 auto}.breakdown-list{display:flex;flex-direction:column;gap:11px}.breakdown-row{display:grid;grid-template-columns:minmax(90px,140px) 1fr minmax(50px,auto);gap:10px;align-items:center}.breakdown-label{font-size:12px;color:var(--text);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breakdown-bar-track{height:10px;background:#edf1f4;border-radius:999px;overflow:hidden;position:relative}.breakdown-bar-fill{height:100%;background:var(--navy);border-radius:inherit;position:absolute;top:0;left:0;transition:width .2s ease}.breakdown-count{font-size:12px;color:var(--muted);text-align:right;min-width:0;overflow-wrap:break-word}.breakdown-row>*{min-width:0}@media(max-width:760px){.breakdown-row{grid-template-columns:minmax(70px,110px) 1fr minmax(44px,auto);gap:8px}}.draft-banner{background:#fff5df;color:#8a6100;border:1px solid #f0dca8;border-radius:10px;padding:11px 16px;font-size:12px;font-weight:700;margin-bottom:18px}select{border:1px solid var(--border);border-radius:9px;padding:8px 32px 8px 12px;font-size:12px;font-family:inherit;background:#fff;color:var(--text);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23728095' stroke-width='2'%3E%3Cpath d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px}.class-legend{display:flex;flex-wrap:wrap;gap:10px 18px}.class-legend-item{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--text);font-weight:600}.class-legend-dot{width:10px;height:10px;border-radius:3px;display:inline-block}.conflict-warning{background:#fdecec;color:var(--red);border:1px solid #f3caca;border-radius:10px;padding:12px 14px;font-size:12px;font-weight:700;margin-bottom:16px;display:flex;flex-wrap:wrap;gap:4px}.week-calendar-scroll{overflow-x:auto;margin-top:6px;border-radius:14px}.week-calendar{--week-row-height:25px;display:grid;grid-template-columns:64px repeat(7,minmax(110px,1fr));grid-template-rows:auto repeat(24,var(--week-row-height));border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff;width:max-content;min-width:100%}.week-calendar-corner,.week-calendar-day-head{border-bottom:1px solid var(--border);border-right:1px solid var(--border);background:#f7f9fa}.week-calendar-day-head{text-align:center;font-size:11px;font-weight:700;color:var(--navy);padding:8px 4px}.week-calendar-hour{font-size:9.5px;color:var(--muted);border-top:1px solid var(--border)}.week-calendar-halfhour,.week-calendar-hour{grid-column:1;padding-left:8px;border-right:1px solid var(--border);display:flex;align-items:center;line-height:1}.week-calendar-halfhour{font-size:8.5px;color:var(--border);border-top:1px dashed var(--border)}.week-calendar-block{border-radius:6px;color:#fff;font-size:9px;padding:2px 5px;display:flex;flex-direction:column;gap:0;margin:1px;overflow:hidden;box-shadow:0 2px 6px rgba(0,0,0,.12)}.week-calendar-block strong{font-size:9.5px;line-height:1.1}.week-calendar-block span,.week-calendar-block strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-calendar-block span{font-size:8.5px;opacity:.9;line-height:1.05;flex:0 0 auto}.week-calendar-block .week-calendar-block-students{font-size:8px;line-height:1.05;white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:clip}.week-calendar-block-draggable{cursor:grab}.week-calendar-block-draggable:active{cursor:grabbing}.week-calendar-dropzone{background:transparent}.week-calendar-drop-preview{position:relative;pointer-events:none;margin:1px;border-radius:6px;border:3px solid var(--amber,#bc7f19);background:rgba(188,127,25,.32);display:flex;align-items:center;justify-content:center;z-index:999;box-shadow:0 4px 14px rgba(0,0,0,.35)}.week-calendar-drop-preview span{font-size:11px;font-weight:800;color:#fff;background:var(--amber,#bc7f19);padding:2px 8px;border-radius:999px;box-shadow:0 1px 4px rgba(0,0,0,.3);white-space:nowrap}.move-scope-overlay{position:fixed;inset:0;background:rgba(15,39,70,.45);z-index:70;display:flex;align-items:center;justify-content:center;padding:16px}.move-scope-dialog{background:#fff;border-radius:16px;padding:22px;max-width:380px;width:100%;box-shadow:0 20px 50px rgba(15,39,70,.25)}.move-scope-dialog h3{margin:0 0 8px;font-size:15px;color:var(--navy)}.move-scope-dialog p{margin:0 0 18px;font-size:12.5px;color:var(--muted);line-height:1.5}.move-scope-dialog-actions{display:flex;flex-direction:column;gap:8px}.move-scope-dialog-actions button{width:100%;text-align:left}.attendance-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:18px}.session-badge{padding:6px 12px;border-radius:999px;font-size:11px;font-weight:700}.session-badge.pending{background:#fff5df;color:var(--amber)}.session-badge.approved{background:#e8f6f0;color:var(--green)}.attendance-toggle{display:flex;flex-wrap:wrap}.attendance-btn{border:1px solid var(--border);background:#fff;border-radius:8px;padding:7px 12px;font-size:11px;font-weight:700;cursor:pointer;color:var(--muted)}.attendance-btn.var.active{background:#e8f6f0;color:var(--green);border-color:#bfe3d3}.attendance-btn.yok.active{background:#fdecec;color:var(--red);border-color:#f3caca}.attendance-btn.mazeretli.active{background:#fff5df;color:var(--amber);border-color:#f0dca8}.attendance-btn:disabled{opacity:.55;cursor:not-allowed}.approve-button{margin-top:16px}.breakdown-title{font-size:13px;color:var(--navy);margin:4px 0 12px;font-weight:700}.payment-table{display:flex;flex-direction:column;gap:10px}.payment-row{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:14px;border:1px solid var(--border);border-radius:14px;padding:16px 18px;background:#fbfcfd}.payment-row-main{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 260px}.payment-row-main strong{font-size:13px}.payment-row-main span{font-size:11px;color:var(--muted)}.payment-row-amounts{display:flex;gap:14px;font-size:12px;font-weight:700;color:var(--navy);white-space:nowrap}.folder-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.folder-card{border:1px solid var(--border);background:#f7f9fa;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;cursor:pointer;text-align:left;min-width:150px;transition:border-color .15s ease,background .15s ease}.folder-card strong{font-size:13px;color:var(--navy)}.folder-card span{font-size:11px;color:var(--muted)}.folder-card.active{border-color:var(--navy);background:#eef3f6}.material-link{display:inline-block;margin-top:6px;font-size:11px;color:var(--blue);font-weight:700;text-decoration:none}.draft-item-rate-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.draft-item-rate-field{display:flex;flex-direction:column;gap:6px;min-width:150px;background:#f7f9fb;border:1px solid var(--border);border-radius:12px;padding:10px 14px}.draft-item-rate-field>span{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.draft-item-rate-field .draft-item-rate-input{border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:14px;font-weight:600;font-family:inherit;background:#fff;color:var(--navy);width:140px;max-width:100%;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.draft-item-rate-field .draft-item-rate-input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(57,115,185,.14)}.draft-item-rate-field small{color:var(--green);font-size:11px;font-weight:700}@media(max-width:760px){.student .attendance-toggle{flex:1 1 100%}.payment-row-amounts{width:100%;justify-content:space-between}.draft-item-rate-field,.draft-item-rate-field .draft-item-rate-input{width:100%}}.teacher-assign-field{flex:2 1 260px;min-width:220px}.teacher-assign-field .draft-item-rate-input{width:100%}@media(max-width:760px){.teacher-assign-field{flex:1 1 100%}}.filter-row{display:grid;grid-template-columns:88px 72px 1fr;align-items:center;column-gap:10px;row-gap:8px;margin-top:10px}.filter-row-label{font-size:12px;font-weight:700;color:var(--muted)}.filter-row-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));column-gap:10px;row-gap:8px;align-items:center}@media(max-width:760px){.filter-row{grid-template-columns:1fr;row-gap:6px}.filter-row-options{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}}.class-card-grid{display:flex;flex-wrap:wrap;gap:12px}.class-card{flex:1 1 200px;min-width:180px;border:1px solid var(--border);border-left:4px solid var(--navy);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:5px;background:#fff}.class-card strong{font-size:13px;color:var(--navy)}.class-card span{font-size:11px;color:var(--muted)}.date-nav{gap:10px}.date-nav,.date-nav-arrow{display:flex;align-items:center}.date-nav-arrow{width:32px;height:32px;border-radius:9px;border:1px solid var(--border);background:#fff;font-size:16px;cursor:pointer;color:var(--navy);justify-content:center;transition:background .15s ease}.date-nav-arrow:hover{background:#eef3f6}.date-nav-label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--navy);white-space:nowrap}.date-nav-today{border:0;background:#eef3f6;color:var(--navy);border-radius:999px;padding:5px 11px;font-size:10.5px;font-weight:700;cursor:pointer}@media(max-width:760px){.date-nav-label strong{font-size:12px}.attendance-controls{width:100%}.date-nav{flex:1 1 100%}}.plan-textarea{width:100%;min-height:160px;border:1px solid var(--border);border-radius:10px;padding:14px;font-family:inherit;font-size:13px;resize:vertical;color:var(--text)}.exam-chart{margin-top:8px}.plan-item-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#f7f9fa;border:1px solid var(--border);border-radius:12px;padding:14px}.plan-item-form input{border:1px solid var(--border);border-radius:9px;padding:8px 12px;font-size:12px;font-family:inherit;flex:1 1 180px;min-width:0;background:#fff}.plan-item-form select{flex:1 1 130px;min-width:0}@media(max-width:760px){.plan-item-form{flex-direction:column;align-items:stretch}.plan-item-form button,.plan-item-form input,.plan-item-form select{width:100%;flex:0 0 auto}}.roster-table{display:flex;flex-direction:column}.roster-row{display:grid;grid-template-columns:200px 140px 1fr;gap:14px;align-items:center;border-top:1px solid var(--border);padding:10px 2px}.roster-row:first-child{border-top:0}.roster-student-cell{display:flex;flex-direction:column;gap:2px;min-height:32px;justify-content:center}.roster-student-cell strong{font-size:13px;color:var(--navy)}.roster-student-cell small{font-size:11px;color:var(--muted)}.roster-course-cell{font-size:12px;color:var(--text);font-weight:600}@media(max-width:760px){.roster-row{display:flex;flex-wrap:wrap;gap:8px 12px;padding:12px 2px}.roster-student-cell{flex:1 1 140px}.roster-course-cell{flex:0 0 auto}.roster-row select{flex:1 1 100%}}.payment-grid-head{padding:0 2px 8px;font-size:10.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.payment-grid-head,.payment-grid-row{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:10px}.payment-grid-row{align-items:center;border-top:1px solid var(--border);padding:12px 2px;font-size:12px}.payment-grid-row:first-child{border-top:0}.payment-grid-row strong{font-size:13px;color:var(--navy)}.payment-grid-head-4,.payment-grid-row-4{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:10px;align-items:center}.payment-grid-row-4{border-top:1px solid var(--border);padding:12px 2px;font-size:12px}.payment-grid-row-4:first-child{border-top:0}.payment-grid-row-4 strong{font-size:13px;color:var(--navy)}.payment-grid-head-5,.payment-grid-row-5{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1fr;gap:8px;align-items:center}.payment-grid-row-5{border-top:1px solid var(--border);padding:12px 2px;font-size:12px}.payment-grid-row-5:first-child{border-top:0}.payment-grid-row-5 strong{font-size:13px;color:var(--navy)}@media(max-width:760px){.payment-grid-head{display:none}.payment-grid-row{grid-template-columns:1fr;gap:6px;padding:12px 2px}.payment-grid-row strong{margin-bottom:2px}.payment-grid-row span{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.payment-grid-row span:nth-child(2):before{content:"Seçili Ay"}.payment-grid-row span:nth-child(3):before{content:"Toplam"}.payment-grid-row span:nth-child(4):before{content:"Tahsilat/Ödeme"}.payment-grid-row span:nth-child(5):before{content:"Bakiye"}.payment-grid-head-4{display:none}.payment-grid-row-4{grid-template-columns:1fr;gap:5px;padding:12px 2px}.payment-grid-row-4 span{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.payment-grid-row-4 span:nth-child(2):before{content:"Tahakkuk"}.payment-grid-row-4 span:nth-child(3):before{content:"Tahsilat"}.payment-grid-row-4 span:nth-child(4):before{content:"Bakiye"}.payment-grid-head-5{display:none}.payment-grid-row-5{grid-template-columns:1fr;gap:5px;padding:12px 2px}.payment-grid-row-5 span{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.payment-grid-row-5 span:nth-child(2):before{content:"Tahakkuk"}.payment-grid-row-5 span:nth-child(3):before{content:"Gider"}.payment-grid-row-5 span:nth-child(4):before{content:"Tahsilat"}.payment-grid-row-5 span:nth-child(5):before{content:"Bakiye"}}.exam-chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.exam-chart-card{border:1px solid var(--border);border-radius:12px;padding:14px;background:#fff}.exam-chart-card strong{font-size:13px;color:var(--navy);display:block;margin-bottom:6px}.day-picker-list{display:flex;flex-direction:column;gap:8px}.day-picker-row{display:grid;grid-template-columns:104px 100px 100px 1fr 1fr;gap:8px;align-items:center;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:#fff}.day-picker-row.active{border-color:var(--navy);background:#f7f9fa}.day-picker-row input:not([type=checkbox]),.day-picker-row select{border:1px solid var(--border);border-radius:8px;padding:7px 9px;font-size:12px;font-family:inherit;width:100%;min-width:0}.day-picker-row input:disabled,.day-picker-row select:disabled{opacity:.4;background:#f4f6f7}@media(max-width:900px){.day-picker-row{grid-template-columns:1fr 1fr}}.time-hm-input{display:inline-flex;align-items:center;gap:4px}.time-hm-input select{border:1px solid var(--border);border-radius:8px;padding:7px 4px;font-size:12px;font-family:inherit;width:44px;flex:0 0 44px;background-image:none;appearance:none;-webkit-appearance:none;text-align:center}.time-hm-input .time-hm-sep{color:var(--muted);font-weight:700;font-size:12px}.time-hm-input select:disabled{opacity:.4;background:#f4f6f7}.day-picker-row .time-hm-input{display:flex;align-items:center;gap:3px;width:auto}.day-picker-row .time-hm-input select{flex:0 0 46px;width:46px;padding-left:4px;padding-right:4px;text-align:center}.month-grid-scroll{overflow-x:auto}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;min-width:520px}.month-grid-head{font-size:10px;font-weight:700;color:var(--muted);text-align:center;padding:4px 0}.month-grid-cell{min-height:64px;border:1px solid var(--border);border-radius:8px;padding:4px;display:flex;flex-direction:column;gap:2px;background:#fff}.month-grid-cell.empty{border:0;background:transparent}.month-grid-daynum{font-size:10px;color:var(--muted);font-weight:700}.month-grid-tag{font-size:8.5px;color:#fff;border-radius:4px;padding:1px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){.month-grid-cell{min-height:44px}.month-grid-tag{font-size:7.5px}}.program-date-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px}.program-date-row .form-field{flex:1 1 220px}.student-select-row{gap:10px}.student-course-chips,.student-select-row{display:flex;flex-wrap:wrap;align-items:center}.student-course-chips{gap:6px;margin-left:4px}.course-chip{display:inline-block;background:#eef3f6;color:var(--navy);border-radius:999px;padding:5px 12px;font-size:11px;font-weight:700;white-space:nowrap}@media(max-width:760px){.mobile-menu-close{display:flex}.panel{box-shadow:0 4px 14px rgba(21,50,88,.05)}.panel,.stat{border-radius:16px}.topbar{margin-bottom:20px}.topbar h1{font-size:14px}.topbar p{margin:0 0 3px;font-size:11px}}.month-picker-scroll{overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.month-picker-grid{display:flex;gap:8px;width:max-content}.month-picker-grid .domain-chip{padding:9px 14px;text-align:center;white-space:nowrap;flex:0 0 auto}.danger-button{background:#fdecec!important;color:var(--red)!important}.danger-button:hover{background:#fbd9d9!important}.group-member-panel{background:#f7f9fa;border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin:4px 0 10px}.group-member-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:10px}.group-member-panel-head strong{font-size:13px;color:var(--navy)}.group-member-chips{display:flex;flex-wrap:wrap;gap:6px}.course-chip.removable{display:inline-flex;align-items:center;gap:6px}.course-chip.removable button{border:0;background:none;color:var(--red);font-size:15px;line-height:1;cursor:pointer;padding:0;font-weight:700}.inline-date-field{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);white-space:nowrap}.inline-date-field input{border:1px solid var(--border);border-radius:9px;padding:8px 10px;font-size:12px;font-family:inherit;background:#fff}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--navy),#0d1f38);padding:24px}.login-card{background:#fff;border-radius:20px;padding:40px 32px;max-width:380px;width:100%;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.25)}.login-logo{width:150px;margin:0 auto 24px;display:block}.login-card h1{font-size:20px;color:var(--navy);margin:0 0 6px;font-weight:700}.login-subtitle{font-size:12px;color:var(--muted);margin:0 0 24px}.login-card form{display:flex;flex-direction:column;gap:12px}.login-card form input{border:1px solid var(--border);border-radius:10px;padding:12px 14px;font-size:14px;font-family:inherit;width:100%}.login-card form button{margin-top:6px;padding:12px;font-size:14px;width:100%}.login-error{color:var(--red);font-size:12px;margin:0;text-align:left}.sidebar-signout{margin-top:8px;background:rgba(255,255,255,.1);color:#fff;border:0;border-radius:8px;padding:8px 10px;font-size:11.5px;font-weight:600;cursor:pointer;font-family:inherit;text-align:left}.sidebar-signout:hover{background:rgba(255,255,255,.18)}.user{cursor:pointer;font-family:inherit;text-align:left}.user-menu-wrap{position:relative;display:inline-block}.user-menu-overlay{position:fixed;inset:0;z-index:70}.user-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 32px rgba(21,50,88,.15);padding:14px;width:max-content;max-width:min(260px,calc(100vw - 32px));z-index:71}.user-menu-info{display:flex;flex-direction:column;gap:3px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--border)}.user-menu-info strong{font-size:13px;color:var(--navy)}.user-menu-info small{font-size:11px;color:var(--muted);word-break:break-all}.user-menu-signout{width:100%;background:#fdecec;color:var(--red);border:0;border-radius:9px;padding:9px 12px;font-weight:700;font-size:12px;cursor:pointer;font-family:inherit}.user-menu-signout:hover{background:#fbd9d9}.login-tabs{display:flex;gap:6px;background:#f2f4f6;border-radius:12px;padding:4px;margin-bottom:20px}.login-tabs button{flex:1 1;border:0;background:transparent;padding:9px;border-radius:9px;font-size:12.5px;font-weight:700;color:var(--muted);cursor:pointer;font-family:inherit}.login-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 2px 6px rgba(0,0,0,.08)}.login-card form select{border:1px solid var(--border);border-radius:10px;padding:12px 14px;font-size:14px;font-family:inherit;width:100%;background:#fff}.login-card form input[type=checkbox]{width:auto;border:0;padding:0;margin:0;flex-shrink:0;accent-color:var(--navy)}.login-card form label.checkbox-option{text-align:left}.settings-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff}.settings-list-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 18px;text-decoration:none;color:inherit;border-bottom:1px solid var(--border);transition:background .15s ease}.settings-list-item:last-child{border-bottom:0}.settings-list-item:hover{background:#f7f9fa}.settings-list-item-text{min-width:0}.settings-list-item-text strong{font-size:13.5px;color:var(--navy);display:block;margin-bottom:3px}.settings-list-item-text span{font-size:12px;color:var(--muted)}.settings-list-item-arrow{color:var(--muted);font-size:18px;flex-shrink:0}.permission-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 18px;background:#f7f9fa;border:1px solid var(--border);border-radius:12px;padding:18px}.permission-grid label{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text);font-weight:500;cursor:pointer}.permission-grid input{flex-shrink:0}input[type=date],input[type=month],input[type=time]{height:40px;box-sizing:border-box;padding:0 12px;border:1px solid var(--border);border-radius:9px;font-size:12.5px;font-family:inherit;background:#fff;color:var(--text);cursor:pointer;transition:border-color .15s ease}input[type=date]:focus,input[type=month]:focus,input[type=time]:focus{outline:none;border-color:var(--navy)}input[type=date]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{filter:invert(19%) sepia(24%) saturate(1400%) hue-rotate(179deg) brightness(94%) contrast(93%);cursor:pointer}.student-link-area{display:contents;text-decoration:none;color:inherit;cursor:pointer}.classroom-chip-grid{display:flex;flex-wrap:wrap;gap:10px}.classroom-chip{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;padding:8px 8px 8px 14px;background:#fff}.classroom-chip strong{font-size:13px;color:var(--navy);white-space:nowrap}.subject-group-block{margin-bottom:18px}.subject-group-block:last-child{margin-bottom:0}.subject-group-title{font-size:12.5px;font-weight:700;color:var(--navy);margin:0 0 8px;display:flex;align-items:center;gap:8px}.subject-group-title small{font-weight:500;color:var(--muted)}.subject-group-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;overflow:hidden}.subject-group-row{display:grid;grid-template-columns:minmax(0,1fr) 190px 100px 172px 62px;align-items:center;gap:10px;padding:11px 14px;border-top:1px solid var(--border)}.subject-group-row-delete,.subject-group-row-info{width:100%;padding:5px 8px;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-slot-teacher-list{display:flex;flex-direction:column;gap:8px}.group-slot-teacher-row{display:grid;grid-template-columns:minmax(0,1fr) 200px 72px;gap:10px;align-items:center}.group-teacher-row{display:grid;grid-template-columns:minmax(0,1fr) 130px 72px;gap:10px;align-items:center}@media(max-width:760px){.group-teacher-row{grid-template-columns:1fr;gap:6px}}.group-slot-teacher-time{font-size:12px;font-weight:700;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-slot-teacher-time small{font-weight:400;color:var(--muted)}.group-slot-teacher-select{width:100%;border:1px solid var(--border);border-radius:9px;padding:7px 26px 7px 10px;font-size:11.5px;font-family:inherit;background:#fff;color:var(--text);text-overflow:ellipsis}@media(max-width:760px){.group-slot-teacher-row{grid-template-columns:1fr;gap:6px}}.subject-group-row:first-child{border-top:0}.subject-group-row-main{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subject-group-row-count{font-size:11px;color:var(--muted);white-space:nowrap;text-align:right}.subject-group-row-teacher{padding:7px 26px 7px 10px;text-overflow:ellipsis}.subject-group-row-rate,.subject-group-row-teacher{width:100%;border:1px solid var(--border);border-radius:9px;font-size:11.5px;font-family:inherit;background:#fff}.subject-group-row-rate{min-width:0;box-sizing:border-box;padding:7px 10px;color:var(--text);transition:border-color .15s ease}.subject-group-row-rate:focus{outline:none;border-color:var(--navy)}.subject-group-row-rate-placeholder{color:var(--muted);font-size:11.5px;text-align:center}.reference-subpanel{margin-top:16px;padding:16px;background:#f7f9fa;border:1px solid var(--border);border-radius:14px}.teacher-row{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;align-items:center;gap:10px;padding:11px 14px;border-top:1px solid var(--border)}.teacher-row:first-child{border-top:0}.teacher-row-rate{font-size:12px;font-weight:700;color:var(--navy);text-align:right;white-space:nowrap}@media(max-width:760px){.teacher-row{grid-template-columns:1fr;gap:6px;padding:12px 0}.teacher-row-rate{text-align:left}}.role-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;align-items:start}.role-column{border:1px solid var(--border);border-radius:12px;padding:14px;background:#fbfcfd}.role-column-title{font-size:12.5px;font-weight:700;color:var(--navy);margin:0 0 10px}.role-column-user{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 0;border-top:1px solid var(--border)}.role-column-user:first-of-type{border-top:0}.role-column-user-text{display:flex;flex-direction:column;gap:2px;min-width:0}.role-column-user-text strong{font-size:12.5px;color:var(--text)}.role-column-user-text span{font-size:10.5px;color:var(--muted)}.color-swatch-row{display:flex;flex-wrap:wrap;gap:16px}.color-swatch-wrap{display:flex;flex-direction:column;align-items:center;gap:6px}.color-swatch{width:42px;height:42px;border-radius:50%;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s ease;box-shadow:0 2px 6px rgba(0,0,0,.15)}.color-swatch:hover{transform:scale(1.08)}.color-swatch.selected{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--navy)}.color-swatch-check{color:#fff;font-size:18px;font-weight:900}.color-swatch-wrap span{font-size:10.5px;color:var(--muted);font-weight:600}.portal-shell{min-height:100vh;background:#f4f6f8;display:flex;flex-direction:column}.portal-header{background:#fff;border-bottom:1px solid var(--border);padding:calc(14px + env(safe-area-inset-top)) 18px 14px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50}.portal-header-brand{display:flex;align-items:center;gap:8px}.portal-header-brand img{height:20px}.portal-header-brand span{font-size:13px;font-weight:700;color:var(--navy)}.portal-avatar{width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;border:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;cursor:pointer;flex-shrink:0}.portal-nav{display:flex;gap:2px;background:#fff;border-bottom:1px solid var(--border);padding:0 14px;overflow-x:auto}.portal-nav a{padding:13px 14px;font-size:12.5px;font-weight:600;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap;display:inline-block}.portal-nav a.active{color:var(--navy);border-bottom-color:var(--navy)}.portal-content{flex:1 1;max-width:640px;width:100%;margin:0 auto;padding:20px 16px 40px;box-sizing:border-box}.portal-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px;margin-bottom:14px;box-shadow:0 2px 10px rgba(21,50,88,.04)}.portal-card h2{font-size:14px;color:var(--navy);margin:0 0 10px;font-weight:700}.portal-card p{font-size:12px;color:var(--muted);margin:0}.portal-stat-row{display:flex;gap:10px;flex-wrap:wrap}.portal-stat{flex:1 1;min-width:110px;background:#f7f9fa;border-radius:12px;padding:12px 14px}.portal-stat span{font-size:11px;color:var(--muted);display:block;margin-bottom:4px}.portal-stat strong{font-size:19px;color:var(--navy)}.portal-list-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-top:1px solid var(--border)}.portal-list-row:first-child{border-top:0}.portal-list-row-text strong{font-size:13px;color:var(--text);display:block}.portal-list-row-text span{font-size:11.5px;color:var(--muted)}.portal-greeting{font-size:17px;font-weight:700;color:var(--navy);margin:0 0 2px}.portal-greeting-sub{font-size:12.5px;color:var(--muted);margin:0 0 18px}.approval-grid{display:grid;grid-template-columns:1fr 140px 160px 80px 80px;gap:10px;align-items:center;padding:12px 0;border-top:1px solid var(--border)}.approval-grid:first-child{border-top:0}@media(max-width:760px){.approval-grid{grid-template-columns:1fr;gap:8px;padding:14px 0}}.settings-badge{background:var(--red);color:#fff;font-size:10.5px;font-weight:700;border-radius:20px;padding:2px 8px;flex-shrink:0}.user-menu-link{display:block;width:100%;text-align:center;background:#f7f9fa;color:var(--navy);border:0;border-radius:9px;padding:9px 12px;font-weight:600;font-size:12px;cursor:pointer;font-family:inherit;text-decoration:none;margin-bottom:8px;box-sizing:border-box}.user-menu-link:hover{background:#eef1f4}.profile-hero{display:flex;align-items:center;gap:18px;padding:28px 26px;background:linear-gradient(135deg,var(--navy),#0d2038);border-radius:20px;color:#fff;margin-bottom:24px}.profile-hero-avatar{width:66px;height:66px;border-radius:50%;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;flex-shrink:0;border:2px solid rgba(255,255,255,.28)}.profile-hero-text{min-width:0}.profile-hero-text strong{font-size:18px;display:block;margin-bottom:4px;font-weight:700}.profile-hero-text span{font-size:12.5px;opacity:.8;display:block;word-break:break-all}.profile-hero-badge{margin-top:10px;display:inline-block;background:rgba(255,255,255,.16);padding:4px 11px;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.03em}.profile-field-group{display:flex;flex-direction:column;gap:18px;max-width:420px}.profile-field label{display:block;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.profile-field input{width:100%;border:1px solid var(--border);border-radius:12px;padding:13px 15px;font-size:14px;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}.profile-field input:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(21,50,88,.08)}.profile-field input:disabled{background:#f7f9fa;color:var(--muted)}.profile-save-btn{margin-top:8px;background:var(--navy);color:#fff;border:0;border-radius:12px;padding:13px 24px;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease;align-self:flex-start}.profile-save-btn:hover{background:#0d2038}.profile-save-btn:disabled{opacity:.6;cursor:not-allowed}.user-menu-fixed{position:fixed;top:24px;right:32px;z-index:56}@media(max-width:760px){.user-menu-fixed{top:14px;right:14px}}.mobile-sticky-bar{display:none;position:sticky;top:0;left:0;right:0;z-index:50;align-items:center;justify-content:space-between;gap:10px;background:#f4f7f9;border-bottom:1px solid var(--border);padding:calc(10px + env(safe-area-inset-top)) 14px 10px;box-shadow:none}.mobile-sticky-bar-logo{height:22px;width:auto}.user-avatar-only{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.user-avatar-only>span{width:36px;height:36px}.user-menu-wrap-mobile .user-menu{position:fixed;top:60px;right:14px;left:14px;width:auto;max-width:none}@media(max-width:760px){.user-menu-fixed{display:none}.subject-group-row{grid-template-columns:1fr;gap:6px;padding:12px 0}.subject-group-row-count{text-align:left}.classroom-chip-grid{gap:8px}.approval-grid{padding:14px 0}.role-columns{gap:12px}.mobile-sticky-bar{display:flex;transition:transform .25s ease}.mobile-sticky-bar-hidden{transform:translateY(-100%)}.topbar{margin-bottom:14px}.stats-toolbar{margin-bottom:6px}.grid-two{margin-bottom:12px}}.month-picker-scroll,.subtabs{-webkit-mask-image:linear-gradient(90deg,black calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,black calc(100% - 28px),transparent)}@media(max-width:760px){.inline-form{flex-wrap:wrap}.inline-form input,.inline-form select{min-width:0;flex:1 1 140px}.lesson .status{margin-left:auto}}.money-summary{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff;margin-bottom:16px}.money-summary.cols-2{grid-template-columns:repeat(2,1fr)}.money-summary>div{padding:14px 16px;border-left:1px solid var(--border)}.money-summary>div:first-child{border-left:0}.money-summary span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:700;display:block;margin-bottom:6px}.money-summary strong{font-size:17px;color:var(--navy);font-weight:700;display:block}.money-summary small{font-size:10.5px;color:var(--muted);display:block;margin-top:3px}@media(max-width:760px){.money-summary,.money-summary.cols-2{grid-template-columns:1fr}.money-summary>div{border-left:0;border-top:1px solid var(--border);padding:12px 14px}.money-summary>div:first-child{border-top:0}}.user-sidebar{display:grid!important;grid-template-columns:39px 1fr;column-gap:11px;align-items:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);width:100%;margin-bottom:14px;box-shadow:none}.user-sidebar:hover{background:rgba(255,255,255,.13);box-shadow:none;transform:none}.user-sidebar>span{background:rgba(171,202,202,.28);color:#fff}.user-sidebar>div{min-width:0;overflow:hidden;text-align:left}.user-sidebar strong{color:#fff}.user-sidebar small,.user-sidebar strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-sidebar small{color:var(--mint)}.user-sidebar-only{display:inline-flex!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;width:auto!important;margin-bottom:14px}.user-sidebar-only:hover{background:rgba(255,255,255,.13)!important;transform:none}.user-sidebar-only>span{background:rgba(171,202,202,.28);color:#fff}.user-menu-sidebar{top:auto;bottom:calc(100% + 8px);left:0;right:auto}@media(max-width:760px){.sidebar-foot small,.sidebar-foot strong{display:none}.student-row-name{flex:1 1;min-width:0;font-size:13px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-row-info{flex:0 0 auto;margin-left:49px;font-size:11px;color:var(--muted);align-self:center}.student>.program{flex:0 0 auto;margin-left:8px}.student>button,.student>select{flex:0 0 auto;margin-left:auto}}.student-row-name{font-size:13px;font-weight:700;color:var(--text)}.attendance-mark-row{display:flex;flex-wrap:nowrap;gap:5px;flex-shrink:0}.attendance-mark-btn{border:1px solid var(--border);background:#f7f9fa;color:var(--navy);border-radius:8px;padding:6px 9px;font-size:10.5px;font-weight:700;cursor:pointer;white-space:nowrap;flex:0 0 auto}.attendance-mark-btn.active{background:var(--navy);color:#fff;border-color:var(--navy)}.attendance-mark-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:400px){.attendance-mark-btn{padding:6px 7px;font-size:10px}.portal-list-row{flex-wrap:wrap}}@media(min-width:761px){.student{flex-wrap:nowrap}.student-row-info{order:3;color:var(--muted);font-size:12px}.student>.inline-form,.student>.program,.student>button,.student>select{order:4}}.attendance-toggle{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:6px;width:auto!important}.attendance-btn{flex:0 0 auto!important;white-space:nowrap}@media(min-width:761px){.roster-2col .student{display:grid;grid-template-columns:43px minmax(0,1fr) 140px minmax(120px,190px);column-gap:14px}.roster-2col .student>.avatar{order:1}.roster-2col .student-name-link,.roster-2col .student>.student-row-name{order:2}.roster-2col .student-row-info{order:3}.roster-2col .student>.program,.roster-2col .student>button,.roster-2col .student>select{order:4;justify-self:end}.roster-3col .student{display:grid;grid-template-columns:43px minmax(0,1fr) 150px 170px 120px;column-gap:14px}.roster-3col .student>.avatar{order:1}.roster-3col .student-name-link,.roster-3col .student>.student-row-name{order:2}.roster-3col .student-row-info{order:3}.roster-3col .student>.program{order:4}.roster-3col .student>.inline-form,.roster-3col .student>button,.roster-3col .student>select{order:5;justify-self:end}.proposal-day-title{margin:18px 0 4px;padding-top:12px;border-top:1px solid var(--border)}.change-log>div:first-child .proposal-day-title{margin-top:0;padding-top:0;border-top:0}.proposal-teacher-title{margin:6px 0 2px;font-size:11.5px;font-weight:800;color:var(--navy);text-transform:uppercase;letter-spacing:.04em}.roster-3col .student>.inline-form{grid-column:1/-1;justify-self:stretch;width:100%;margin-top:8px;padding-left:57px;flex-wrap:wrap}.roster-3col .student>.inline-form .inline-input{flex:1 1 220px;min-width:0}@media(max-width:760px){.roster-3col .student>.inline-form{padding-left:0;margin-top:6px}}.roster-toggle .student{display:grid;grid-template-columns:43px minmax(0,1fr) auto;column-gap:14px}.roster-toggle .student>.avatar{order:1}.roster-toggle .student>div{order:2}.roster-toggle .attendance-toggle{order:3;justify-self:end}}@media(max-width:760px){.roster-2col .student,.roster-3col .student,.roster-toggle .student{display:flex}}.widget-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(90px,auto);grid-auto-flow:dense;gap:16px;margin-bottom:20px}.widget-cell{position:relative;min-width:0}.widget-cell-draggable{cursor:grab}.widget-cell-draggable:active{cursor:grabbing}.widget-cell-inner{height:100%}.widget-cell-inner-locked{pointer-events:none}.widget-cell .panel,.widget-cell .stat{height:100%;box-sizing:border-box;margin:0}.widget-cell .panel.attendance,.widget-cell .payment-summary-panel,.widget-cell .students-panel,.widget-cell .today-lessons-panel{height:auto}.widget-cell .students-panel .students,.widget-cell .today-lessons-panel .lesson-list{max-height:280px;overflow-y:auto}.widget-cell .capacity-panel{height:auto}.capacity-widget-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.capacity-widget-actions select{font-size:12px;padding:7px 28px 7px 10px}.capacity-panel .stat-compact-grid{margin-top:2px}.capacity-panel .capacity-widget-table{margin-top:10px}.stat-compact small{display:block;margin-top:3px;font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-compact-primary small{color:rgba(255,255,255,.6)}.source-tag{display:inline-block;margin-left:7px;padding:1px 7px;border-radius:999px;background:#f1f5f7;border:1px solid var(--border);color:var(--muted);font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}.widget-remove-btn{position:absolute;top:-8px;right:-8px;z-index:5;width:24px;height:24px;border-radius:50%;background:var(--red);color:#fff;border:2px solid #fff;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;pointer-events:auto;padding:0}@media(max-width:900px){.widget-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.widget-grid{grid-template-columns:1fr}.widget-cell{grid-column:span 1!important;grid-row:auto!important}.checkbox-group{grid-template-columns:repeat(2,minmax(0,1fr))}}.subject-group-block{margin-bottom:26px;padding-bottom:2px}@media(max-width:760px){.domain-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.domain-chip{white-space:nowrap;flex:0 0 auto}}.plan-item-form input[type=date],.plan-item-form select{height:40px;box-sizing:border-box;padding-top:0;padding-bottom:0}@media(max-width:760px){.roster-2col .student{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-areas:"avatar name" "avatar badge" "avatar info";column-gap:8px;row-gap:4px;align-items:start;flex-wrap:unset}.roster-2col .student>.avatar{grid-area:avatar;margin:0;align-self:center}.roster-2col .student-name-link,.roster-2col .student.student-row-name,.roster-2col .student>.student-row-name{grid-area:name;flex:unset;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;align-self:center}.roster-2col .student>.program{grid-area:badge;flex:unset;margin:0;justify-self:start;max-width:100%;white-space:normal;padding:8px 12px;font-size:11px}.roster-2col .student-row-info{grid-area:info;flex:unset;margin:0;align-self:center}.roster-inline .student{display:grid;grid-template-columns:34px minmax(0,1fr) 62px 58px;grid-template-areas:unset;column-gap:8px;row-gap:0;align-items:center;flex-wrap:unset}.roster-inline .student>.avatar{grid-area:unset;margin:0}.roster-inline .student-name-link,.roster-inline .student.student-row-name,.roster-inline .student>.student-row-name{grid-area:unset;flex:unset;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;align-self:center}.roster-inline .student>.program{justify-self:stretch;max-width:100%;padding:5px 6px;font-size:10px;text-align:center}.roster-inline .student-row-info,.roster-inline .student>.program{grid-area:unset;flex:unset;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-inline .student-row-info{font-size:10.5px;text-align:right}.season-month-filter{gap:10px;flex-wrap:wrap;align-items:center}.season-month-field{display:contents}.season-month-field>span{display:none}.season-month-field select{flex:1 1 140px;min-width:0;width:auto}}.payment-grid-foot{background:#f7f9fa;border-top:2px solid var(--navy);border-radius:0 0 10px 10px}.payment-grid-foot strong{color:var(--navy)}.program-row-foot{background:#f7f9fa;border-top:2px solid var(--navy)}.program-row-foot .change-date{color:var(--navy);font-weight:800}@media(max-width:760px){.lesson-list{display:grid;grid-template-columns:50px minmax(0,1fr) auto;column-gap:10px}.lesson{display:contents}.lesson>*{border-top:1px solid var(--border);padding:12px 0;align-self:stretch;display:flex;align-items:center}.lesson>.teacher{display:none}.time{font-size:12px}.lesson-main strong{font-size:12.5px}.lesson-main span{font-size:10.5px}.status{font-size:9.5px;min-width:78px;padding:6px 8px}.lesson-list>.lesson:first-child>*{border-top:0}.lesson-main{align-items:flex-start}.status-cell{justify-content:flex-end}.status{min-width:90px;justify-content:center;text-align:center}.slot-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 10px;align-items:center}.slot-form>select:first-of-type{order:1}.slot-form>select:nth-of-type(2){order:2}.slot-form>.time-hm-input:first-of-type{order:3}.slot-form>.time-hm-input:nth-of-type(2){order:4}.slot-form>select{width:100%;min-width:0;font-size:13px}.slot-form>button{order:5;grid-column:1/-1;width:100%}.slot-form>.time-hm-input{width:100%;min-width:0;box-sizing:border-box;justify-content:center;gap:6px}.week-calendar{--week-row-height:25px;grid-template-rows:auto repeat(24,var(--week-row-height));grid-template-columns:44px repeat(7,minmax(78px,1fr))}.week-calendar-hour{font-size:9px;padding-left:4px}.week-calendar-halfhour{font-size:8px;padding-left:4px}.week-calendar-day-head{font-size:10px;padding:7px 2px}.week-calendar-scroll{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.week-calendar-block,.week-calendar-day-head{scroll-snap-align:start}}.stat-compact-grid{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:10px;margin-bottom:4px;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.stat-compact{background:#fff;border:1px solid var(--border);border-radius:13px;padding:12px 16px;min-width:118px;flex:0 0 auto;position:relative;overflow:hidden;box-shadow:0 4px 14px rgba(21,50,88,.05);transition:box-shadow .15s ease,transform .15s ease}.stat-compact:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--mint)}.stat-compact:hover{box-shadow:0 8px 20px rgba(21,50,88,.09);transform:translateY(-1px)}.stat-compact span{display:block;color:var(--muted);font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-compact strong{display:block;font-size:18px;font-weight:800;color:var(--navy);letter-spacing:-.01em;white-space:nowrap}.stat-compact-primary{background:linear-gradient(135deg,var(--navy),#0d2038);border-color:var(--navy);flex-basis:150px}.stat-compact-primary:before{background:var(--mint)}.stat-compact-primary span{color:rgba(255,255,255,.65)}.stat-compact-primary strong{color:#fff;font-size:20px}@media(max-width:760px){.stat-compact{min-width:100px}}.projection-scope-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.projection-scope-controls .domain-chip{padding:8px 13px}.draft-form-label{font-size:12px;font-weight:700;color:var(--navy);flex:1 1 100%}.draft-form-hint{font-size:11px;color:var(--muted);flex:1 1 100%}.plan-item-form.draft-form>.inline-input{flex:1 1 220px;min-width:0}.plan-item-form.draft-form>.inline-input,.plan-item-form.draft-form>button,.plan-item-form.draft-form>select{height:40px;min-height:40px;font-size:12.5px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.plan-item-form.draft-form>.inline-input{display:block;padding:0 12px;justify-content:flex-start}.plan-item-form.draft-form>select{padding:0 32px 0 12px}.plan-item-form.draft-form>button{padding:0 14px;white-space:nowrap}@media(max-width:760px){.plan-item-form.draft-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:11px;align-items:center}.plan-item-form.draft-form>*{width:auto;min-width:0;flex:none}.plan-item-form.draft-form>.draft-form-full,.plan-item-form.draft-form>.inline-input,.plan-item-form.draft-form>select,.plan-item-form.draft-form>span{grid-column:1/-1}.plan-item-form.draft-form input,.plan-item-form.draft-form>.inline-input,.plan-item-form.draft-form>button,.plan-item-form.draft-form>select{font-size:11.5px;height:38px;min-height:38px;margin-top:0}.plan-item-form.draft-form>.inline-input{padding:0 10px}.plan-item-form.draft-form>select{padding:0 28px 0 10px}.plan-item-form.draft-form>button{padding:0 8px;white-space:normal;line-height:1.2}.plan-item-form.draft-form input[type=date]{padding:0 8px;font-size:11.5px}}.zip-button-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px;align-items:stretch}.zip-button-grid .panel-button{margin-top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;line-height:1.3;padding:11px 8px}@media(max-width:760px){.zip-button-grid{grid-template-columns:1fr;gap:6px}}.calendar-detail-backdrop{position:fixed;inset:0;z-index:80;background:rgba(15,39,70,.42);display:flex;align-items:center;justify-content:center;padding:16px}.calendar-detail-card{background:#fff;border-radius:16px;border:1px solid var(--border);box-shadow:0 18px 44px rgba(21,50,88,.22);padding:18px;width:100%;max-width:340px;display:flex;flex-direction:column;gap:8px}.calendar-detail-head{display:flex;align-items:flex-start;gap:9px}.calendar-detail-swatch{flex:0 0 auto;width:12px;height:12px;border-radius:4px;margin-top:3px}.calendar-detail-head strong{font-size:14px;color:var(--navy);line-height:1.3}.calendar-detail-time{margin:0;font-size:12.5px;color:var(--text);font-weight:600}.calendar-detail-sub{margin:0;font-size:12px;color:var(--muted);line-height:1.45}.calendar-detail-card .panel-button{margin-top:6px;align-self:flex-end}@media(max-width:760px){.calendar-detail-backdrop{align-items:flex-end;padding:0}.calendar-detail-card{max-width:none;border-radius:16px 16px 0 0;padding:16px 16px calc(18px + env(safe-area-inset-bottom))}}.daily-default-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:#f7f9fa;border:1px solid var(--border);border-radius:10px;padding:8px 10px;margin-bottom:4px}.daily-default-label{font-size:11px;color:var(--muted);font-weight:700}.daily-grade-title{font-size:11.5px;margin:14px 0 2px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.daily-time-pair{display:inline-flex;align-items:center;gap:6px}.daily-time-pair em{font-style:normal;color:var(--muted);font-weight:700;font-size:12px}.daily-time-labels{display:flex;gap:6px;font-size:9.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.daily-time-labels small{width:96px;display:block}.daily-time-labels small:last-child{margin-left:12px}.daily-line{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:transparent;border:0;border-top:1px solid var(--border);padding:9px 2px;font-family:inherit;cursor:pointer}.daily-line:hover{background:#f7fafb}.daily-line-name{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px;font-size:12.5px;font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis}.daily-line-name small{font-size:10px;color:var(--muted);font-weight:600}.daily-line-chevron{flex:0 0 auto;color:var(--muted);font-size:15px;line-height:1}.daily-badge{flex:0 0 auto;display:inline-block;border-radius:999px;padding:4px 9px;font-size:10px;font-weight:800;white-space:nowrap}.daily-badge.green{background:#e8f6f0;color:var(--green)}.daily-badge.red{background:#fbecec;color:var(--red)}.daily-badge.muted{background:#eef3f6;color:var(--muted)}.daily-btn{border:1px solid var(--border);background:#fff;color:var(--navy);border-radius:999px;padding:7px 12px;font-size:11px;font-weight:800;font-family:inherit;cursor:pointer;white-space:nowrap}.daily-btn:disabled{opacity:.45;cursor:not-allowed}.daily-btn.confirm{background:var(--green);border-color:var(--green);color:#fff}.daily-btn.absent.active{background:#fbecec;border-color:var(--red);color:var(--red)}.daily-btn.clear{color:var(--muted)}.daily-sheet-backdrop{position:fixed;inset:0;z-index:80;background:rgba(15,39,70,.42);display:flex;align-items:center;justify-content:center;padding:16px}.daily-sheet{background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 18px 44px rgba(21,50,88,.22);padding:16px;width:100%;max-width:340px;gap:10px}.daily-sheet,.daily-sheet-head{display:flex;flex-direction:column}.daily-sheet-head{gap:2px}.daily-sheet-head strong{font-size:13.5px;color:var(--navy)}.daily-sheet-head small{font-size:11px;color:var(--muted)}.daily-sheet-times{display:flex;flex-direction:column;gap:5px;background:#f7f9fa;border:1px solid var(--border);border-radius:10px;padding:10px}.daily-sheet-duration{font-size:11.5px;color:var(--navy);font-weight:700}.daily-sheet-actions{display:flex;gap:6px}.daily-sheet-actions .daily-btn{flex:1 1;min-width:0;text-align:center;padding:9px 6px}@media(max-width:760px){.daily-sheet-backdrop{align-items:flex-end;padding:0}.daily-sheet{max-width:none;border-radius:16px 16px 0 0;padding:14px 14px calc(16px + env(safe-area-inset-bottom))}.daily-default-row .daily-btn{flex:1 1 100%}}.daily-report-head{padding:0 2px 8px;font-size:10.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.daily-report-head,.daily-report-row{display:grid;grid-template-columns:minmax(0,1.6fr) 1fr 1fr 1fr;gap:10px}.daily-report-row{align-items:center;border-top:1px solid var(--border);padding:10px 2px;font-size:12px}.daily-report-date{font-weight:700;color:var(--navy)}.daily-report-absent{color:var(--red);font-weight:700}@media(max-width:760px){.daily-report-head{display:none}.daily-report-row{grid-template-columns:minmax(0,1.4fr) 1fr 1fr 1fr;gap:6px;font-size:11px}}.capacity-daily-row{background:#f7f9fa;border-radius:10px;margin-top:10px;border-top:0}.capacity-daily-row>div{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0}.capacity-daily-row strong{color:var(--navy)}.capacity-daily-row .source-tag{margin-left:0}.permission-group-title{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:22px 0 4px}.permission-group-note{font-size:12px;color:var(--muted);margin:0 0 10px;line-height:1.45}.permission-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}.permission-row{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border);border-radius:12px;background:#fff;padding:11px 12px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.permission-row:hover{border-color:#cfd9e2;background:#fbfcfd}.permission-row.is-on{border-color:var(--mint);background:#f6fafa}.permission-row input{flex:0 0 auto;margin-top:2px;accent-color:var(--navy);width:16px;height:16px}.permission-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}.permission-row-text strong{font-size:12.5px;font-weight:700;color:var(--text);line-height:1.3}.permission-row-text small{font-size:10.5px;color:var(--muted);overflow-wrap:anywhere}@media(max-width:760px){.permission-list{grid-template-columns:1fr}}.report-picker{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px;margin:0 0 24px;box-shadow:0 7px 22px rgba(21,50,88,.045)}.report-picker-title{margin:0 0 10px;font-size:11px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.report-picker-group-title{margin:16px 0 8px;font-size:12px;color:var(--navy);font-weight:800}.report-picker-group-title:first-of-type{margin-top:0}.widget-swap-select{margin-top:10px;width:100%;border:1px solid var(--border);border-radius:8px;padding:6px 8px;font-size:11px;font-family:inherit;background:#fff;color:var(--muted)}.widget-swap-select:focus{outline:none;border-color:var(--navy);color:var(--text)}.widget-cell-has-extra{display:flex;flex-direction:column}.widget-cell-has-extra .widget-cell-inner{height:auto;flex:1 1 auto;min-height:0}.widget-extra-control{flex:0 0 auto}.report-option-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}.report-option{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;border:1px solid var(--border);background:#fff;border-radius:12px;padding:11px 12px;font-family:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.report-option:hover{border-color:var(--navy);background:#f7fafb;transform:translateY(-1px)}.report-option-label{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:12.5px;font-weight:700;color:var(--text);line-height:1.3}.report-option-label small{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.report-option-add{flex:0 0 auto;width:24px;height:24px;border-radius:8px;background:#eef3f6;color:var(--navy);font-size:15px;font-weight:700;line-height:22px;text-align:center}.report-option:hover .report-option-add{background:var(--navy);color:#fff}.domain-chip{transition:background .15s ease,color .15s ease,border-color .15s ease}@media(max-width:760px){.report-option-grid{grid-template-columns:1fr}.report-picker{padding:14px}}.payment-history{display:flex;flex-direction:column}.payment-history-head{padding:0 2px 8px;font-size:10.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.payment-history-head,.payment-history-row{display:grid;grid-template-columns:96px 110px minmax(90px,120px) minmax(0,1fr) 64px;gap:12px}.payment-history-row{align-items:center;border-top:1px solid var(--border);padding:11px 2px}.payment-history-date{font-size:12px;font-weight:700;color:var(--navy);white-space:nowrap}.payment-history-account{font-size:12px;color:var(--muted);min-width:0}.payment-history-amount{font-size:13px;color:var(--text)}.payment-history-note{font-size:12px;color:var(--muted);min-width:0;overflow-wrap:anywhere}.payment-history-action{display:flex;justify-content:flex-end}@media(max-width:760px){.payment-history-head{display:none}.payment-history-row{grid-template-columns:1fr auto;grid-template-areas:"date action" "account account" "amount amount" "note note";gap:4px 10px;padding:10px 0}.payment-history-date{grid-area:date}.payment-history-account{grid-area:account}.payment-history-amount{grid-area:amount}.payment-history-note{grid-area:note;font-size:11px}.payment-history-action{grid-area:action}}.transfer-history{display:flex;flex-direction:column}.transfer-history-head{padding:0 2px 8px;font-size:10.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.transfer-history-head,.transfer-history-row{display:grid;grid-template-columns:90px 1.3fr 110px 1fr 56px;gap:12px}.transfer-history-row{align-items:center;border-top:1px solid var(--border);padding:11px 2px}.transfer-history-row:first-child{border-top:0}.transfer-history-date{font-size:12px;font-weight:700;color:var(--navy);white-space:nowrap}.transfer-history-flow{font-size:12.5px;color:var(--text);min-width:0}.transfer-history-amount{font-size:13px;color:var(--navy)}.transfer-history-desc{font-size:12px;color:var(--muted);min-width:0;overflow-wrap:anywhere}@media(max-width:760px){.transfer-history-head{display:none}.transfer-history-row{grid-template-columns:1fr auto;grid-template-areas:"date action" "flow flow" "amount amount" "desc desc";gap:4px 10px;padding:10px 0}.transfer-history-date{grid-area:date}.transfer-history-flow{grid-area:flow;font-weight:700;color:var(--navy)}.transfer-history-amount{grid-area:amount}.transfer-history-desc{grid-area:desc;font-size:11px}.transfer-history-row .plan-history-pill-btn{grid-area:action;justify-self:end}}.section-card{border:1px solid var(--border);border-radius:14px;overflow:hidden}.section-card+.section-card{margin-top:10px}.section-head{width:100%;display:flex;align-items:center;gap:12px;padding:13px 15px;background:#f7f9fa}.section-head-check{display:flex;flex:0 0 auto;cursor:pointer}.section-head-check input{accent-color:var(--navy);width:16px;height:16px}.section-head-toggle{flex:1 1 auto;display:flex;align-items:center;gap:12px;min-width:0;cursor:pointer}.section-head-toggle:hover{opacity:.85}.section-name-plain{flex:1 1 auto;font-size:13px;font-weight:700;color:var(--navy)}.section-chevron{color:var(--navy);font-size:11px;flex:0 0 auto;transition:transform .15s ease;display:inline-block}.section-card.open .section-chevron{transform:rotate(90deg)}.section-name{font-size:13px;font-weight:700;color:var(--navy);flex:1 1 auto;min-width:0}.section-count{font-size:10.5px;font-weight:700;color:var(--muted);background:#fff;border:1px solid var(--border);border-radius:999px;padding:3px 9px;white-space:nowrap}.section-count.has-on{color:var(--green);border-color:#bfe3d3;background:#eefaf4}.section-bulk{display:flex;gap:4px;flex:0 0 auto}.section-bulk button{border:0;background:#eef3f6;color:var(--navy);font-size:10.5px;font-weight:700;border-radius:999px;padding:5px 10px;cursor:pointer;font-family:inherit;white-space:nowrap}.section-bulk button:hover{background:#e2ebef}.section-bulk button:disabled{opacity:.5;cursor:not-allowed}.section-card.page-off .section-head-toggle{cursor:default;opacity:.5}.section-card.page-off .section-head-toggle:hover{opacity:.5}.section-body-wrap{padding:13px 15px 15px;display:flex;flex-direction:column;gap:14px}.section-subheading{font-size:10.5px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px}.section-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}.tab-row{display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:10px;background:#fff;padding:9px 11px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.tab-row.is-on{border-color:var(--mint);background:#f6fafa}.tab-row input{accent-color:var(--navy);width:15px;height:15px;flex:0 0 auto}.tab-row span{font-size:12.5px;font-weight:600;color:var(--text)}.tab-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}.tab-row-text small{font-size:10.5px;font-weight:500;color:var(--muted);overflow-wrap:anywhere}@media(max-width:760px){.section-body{grid-template-columns:1fr}}.teacher-expense-table-wrap{overflow-x:auto}.teacher-expense-table{width:100%;border-collapse:collapse;table-layout:fixed}.teacher-expense-table th{text-align:left;font-size:10.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:0 8px 8px;line-height:1.3}.teacher-expense-table th:not(:first-child){text-align:right}.teacher-expense-table td{padding:12px 8px;border-top:1px solid var(--border);font-size:12px;vertical-align:middle}.teacher-expense-table td:not(:first-child){text-align:right;font-weight:700}.teacher-expense-row{cursor:pointer}.teacher-expense-row td:first-child strong{font-size:13px;color:var(--navy)}.teacher-expense-foot td{border-top:2px solid var(--navy);background:#f7f9fa}.lesson-detail-tr td{border-top:1px solid var(--border);padding:14px 8px;vertical-align:top}.lesson-detail-main{display:flex;flex-direction:column;gap:4px}.lesson-detail-main strong{font-size:13px}.lesson-detail-main span{font-size:11px;color:var(--muted)}.lesson-detail-amount-cell,.lesson-detail-hours-cell{font-size:12px;font-weight:700;color:var(--navy);text-align:right;white-space:nowrap;vertical-align:top}.lesson-detail-foot td{background:#f7f9fa;border-top:2px solid var(--navy)}@media(max-width:760px){.teacher-expense-table{min-width:640px}}