*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:Inter,sans-serif;font-size:14px;color:#1a1d23;background-color:#f0f2f5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit}ul,ol{list-style:none}button{cursor:pointer;border:none;outline:none;background:none;font-family:inherit}input,textarea,select{font-family:inherit;outline:none}img{max-width:100%;display:block}.fs-xs{font-size:11px}.fs-sm{font-size:12px}.fs-md{font-size:14px}.fs-lg{font-size:16px}.fs-xl{font-size:20px}.text-primary{color:#f5a623}.text-muted{color:#9ba3af}.text-success{color:#22c55e}.text-danger{color:#ef4444}.text-warning{color:#cf8508}.text-info{color:#3b82f6}.text-secondary{color:#4a5568}.fw-400{font-weight:400}.fw-500{font-weight:500}.fw-600{font-weight:600}.fw-700{font-weight:700}.fw-800{font-weight:800}.scrollbar-thin::-webkit-scrollbar{width:4px}.scrollbar-thin::-webkit-scrollbar-track{background:transparent}.scrollbar-thin::-webkit-scrollbar-thumb{background:#f5a6234d;border-radius:2px}.page-header{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:16px}.page-header__title{font-size:24px;font-weight:700;color:#1a1d23;line-height:1.2}.page-header__sub{font-size:14px;color:#9ba3af;margin-top:4px}.page-header__actions{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.hdr-btn{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:5px;height:36px;padding:0 8px;border:1.5px solid #E8ECF0;border-radius:8px;background:#fff;font-family:Inter,sans-serif;font-size:12px;font-weight:600;color:#4a5568;cursor:pointer;transition:all .15s ease;white-space:nowrap}.hdr-btn .material-icons-round{font-size:17px}.hdr-btn__label{font-weight:600}.hdr-btn:hover{border-color:#22c55e;color:#22c55e;background:#22c55e0a}.hdr-btn--pdf:hover{border-color:#ef4444;color:#ef4444;background:#ef44440a}.hdr-btn--icon{padding:0 10px}.hdr-btn--primary{background:#f5a623;color:#fff;border-color:#f5a623;text-decoration:none}.hdr-btn--primary:hover{background:#ef990b;border-color:#ef990b;color:#fff}.card{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;border:1px solid #E8ECF0}.table-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;overflow:hidden}.stat-card,.summary-card{background:#fff;border-radius:12px;padding:16px 24px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:16px;border-left:4px solid transparent;transition:transform .15s ease,box-shadow .15s ease}.stat-card:hover,.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.stat-card--total,.stat-card--primary,.summary-card--total,.summary-card--primary{border-color:#f5a623}.stat-card--paid,.stat-card--success,.stat-card--completed,.summary-card--paid,.summary-card--success,.summary-card--completed{border-color:#22c55e}.stat-card--pending,.stat-card--warning,.stat-card--guest,.summary-card--pending,.summary-card--warning,.summary-card--guest{border-color:#f59e0b}.stat-card--active,.stat-card--info,.stat-card--upcoming,.stat-card--progress,.stat-card--scheduled,.summary-card--active,.summary-card--info,.summary-card--upcoming,.summary-card--progress,.summary-card--scheduled{border-color:#3b82f6}.stat-card--overdue,.stat-card--danger,.stat-card--cancelled,.stat-card--suspended,.stat-card--leave,.stat-card--rejected,.summary-card--overdue,.summary-card--danger,.summary-card--cancelled,.summary-card--suspended,.summary-card--leave,.summary-card--rejected{border-color:#ef4444}.stat-card--inactive,.stat-card--muted,.stat-card--collected,.summary-card--inactive,.summary-card--muted,.summary-card--collected{border-color:#9ba3af}.stat-card--approved,.summary-card--approved{border-color:#22c55e}.stat-card__icon-wrap,.summary-card__icon-wrap{width:46px;height:46px;border-radius:8px;display:flex;flex-direction:row;justify-content:center;align-items:center;flex-shrink:0}.stat-card__icon-wrap .material-icons-round,.summary-card__icon-wrap .material-icons-round{font-size:22px}.stat-card__icon-wrap--total,.stat-card__icon-wrap--primary,.summary-card__icon-wrap--total,.summary-card__icon-wrap--primary{background:#f5a6231f;color:#f5a623}.stat-card__icon-wrap--paid,.stat-card__icon-wrap--success,.stat-card__icon-wrap--completed,.stat-card__icon-wrap--approved,.summary-card__icon-wrap--paid,.summary-card__icon-wrap--success,.summary-card__icon-wrap--completed,.summary-card__icon-wrap--approved{background:#22c55e1f;color:#22c55e}.stat-card__icon-wrap--pending,.stat-card__icon-wrap--warning,.stat-card__icon-wrap--guest,.summary-card__icon-wrap--pending,.summary-card__icon-wrap--warning,.summary-card__icon-wrap--guest{background:#f59e0b1f;color:#cf8508}.stat-card__icon-wrap--active,.stat-card__icon-wrap--info,.stat-card__icon-wrap--upcoming,.stat-card__icon-wrap--progress,.stat-card__icon-wrap--scheduled,.summary-card__icon-wrap--active,.summary-card__icon-wrap--info,.summary-card__icon-wrap--upcoming,.summary-card__icon-wrap--progress,.summary-card__icon-wrap--scheduled{background:#3b82f61f;color:#3b82f6}.stat-card__icon-wrap--overdue,.stat-card__icon-wrap--danger,.stat-card__icon-wrap--cancelled,.stat-card__icon-wrap--suspended,.stat-card__icon-wrap--leave,.stat-card__icon-wrap--rejected,.summary-card__icon-wrap--overdue,.summary-card__icon-wrap--danger,.summary-card__icon-wrap--cancelled,.summary-card__icon-wrap--suspended,.summary-card__icon-wrap--leave,.summary-card__icon-wrap--rejected{background:#ef44441f;color:#ef4444}.stat-card__icon-wrap--inactive,.stat-card__icon-wrap--muted,.stat-card__icon-wrap--collected,.summary-card__icon-wrap--inactive,.summary-card__icon-wrap--muted,.summary-card__icon-wrap--collected{background:#9ba3af1a;color:#9ba3af}.stat-card__body,.summary-card__body{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:2px}.stat-card__value,.summary-card__value{display:block;font-size:24px;font-weight:800;color:#1a1d23;line-height:1}.stat-card__label,.summary-card__label{display:block;font-size:12px;color:#9ba3af;font-weight:500;text-transform:uppercase;letter-spacing:.4px;margin-top:2px}.state-box{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:56px 24px;text-align:center}.state-box>.material-icons-round{font-size:48px;color:#9ba3af;opacity:.5}.state-box>p{font-size:12px;color:#4a5568;margin:0}.state-box>p strong{color:#1a1d23}.state-box__icon{width:64px;height:64px;border-radius:50%;background:#f0f2f5;display:flex;flex-direction:row;justify-content:center;align-items:center}.state-box__icon .material-icons-round{font-size:30px;color:#9ba3af}.state-box__title{font-size:16px;font-weight:600;color:#1a1d23;margin:0}.state-box__sub{font-size:14px;color:#9ba3af;margin:0;max-width:360px;line-height:1.5}.state-box__retry{background:none;border:none;color:#f5a623;font-weight:700;cursor:pointer;text-decoration:underline;font-size:inherit;font-family:inherit}.state-box--error>.material-icons-round{color:#ef4444;opacity:.7}.state-box--error>p{color:#ef4444}.state-box--error .state-box__icon .material-icons-round{color:#ef4444}.state-box--inline{padding:32px 24px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a}.state-box--inline>.material-icons-round{font-size:36px}.data-table{width:100%;border-collapse:collapse}.data-table .col-idx{width:48px;text-align:center}.data-table .col-action{width:56px;text-align:center}.data-table .col-center{text-align:center}.data-table thead tr{background:#f0f2f5;border-bottom:2px solid #E8ECF0}.data-table thead th,.data-table__th{padding:11px 16px;text-align:left;white-space:nowrap;font-size:11px;font-weight:600;color:#9ba3af;text-transform:uppercase;letter-spacing:.4px;background:#f0f2f5;border-bottom:1px solid #E8ECF0}.data-table thead th--num,.data-table__th--num{width:48px;text-align:center}.data-table thead th--actions,.data-table__th--actions{text-align:right;width:60px}.data-table thead th--center,.data-table__th--center{text-align:center}.data-table tbody tr{border-bottom:1px solid #E8ECF0;transition:background .15s ease}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody td,.data-table__td{padding:12px 16px;border-bottom:1px solid #F0F2F5;font-size:12px;color:#4a5568;vertical-align:middle}.data-table tbody td--num,.data-table__td--num{text-align:center;color:#9ba3af;font-size:11px}.data-table tbody td--center,.data-table__td--center{text-align:center}.data-table tbody td--actions,.data-table__td--actions{text-align:right}.data-table--compact thead th,.data-table--compact tbody td{padding:9px 12px}.data-table--sticky thead th,.data-table--sticky .data-table__th,.data-table__head{position:sticky;top:0;z-index:2}.data-table tbody tr:nth-child(2n) td,.data-table tbody tr:nth-child(2n) th{background:#f0f2f58c}.data-table tbody tr:hover td,.data-table tbody tr:hover th{background:#f5a6230a}.data-table tbody tr.row--selected td,.data-table tbody tr.row--selected th{background:#f5a62314!important}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.status-badge--active,.status-badge--paid,.status-badge--approved,.status-badge--present,.status-badge--submitted{background:#22c55e1f;color:#1a9a49}.status-badge--inactive,.status-badge--overdue,.status-badge--rejected,.status-badge--rework,.status-badge--absent{background:#ef44441f;color:#ec1e1e}.status-badge--pending,.status-badge--partial,.status-badge--late{background:#f59e0b26;color:#bb7808}.status-badge--info,.status-badge--holiday,.status-badge--reviewed,.status-badge--guest{background:#3b82f61f;color:#1469f4}.status-badge--neutral{background:#9ba3af1a;color:#9ba3af}@keyframes skShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sk-cell{height:12px;border-radius:4px;background:linear-gradient(90deg,#e8ecf0b3 25%,#e8ecf059,#e8ecf0b3 75%);background-size:200% 100%;animation:skShimmer 1.4s ease infinite}.sk-cell--xs{width:40%}.sk-cell--sm{width:60%}.sk-cell--md{width:80%}.sk-cell--lg{width:100%}.sk-cell--avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0}.sk-cell--badge{width:64px;height:20px;border-radius:99px}.table-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;gap:12px;text-align:center}.table-empty-state__icon{font-size:40px!important;color:#9ba3af}.table-empty-state__title{font-size:15px;font-weight:600;color:#4a5568}.table-empty-state__sub{font-size:13px;color:#9ba3af;max-width:320px}.toolbar{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 24px;border-bottom:1px solid #E8ECF0;gap:8px}.toolbar__search{position:relative;flex:1;min-width:240px;max-width:400px}.toolbar__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:18px;color:#9ba3af;pointer-events:none}.toolbar__search-input{width:100%;height:40px;padding:0 36px 0 40px;border:1.5px solid #E8ECF0;border-radius:8px;font-size:12px;font-family:Inter,sans-serif;background:#f0f2f5;color:#1a1d23;outline:none;transition:border-color .15s ease}.toolbar__search-input:focus{border-color:#f5a623;background:#fff}.toolbar__search-input::placeholder{color:#9ba3af}.toolbar__search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:none;cursor:pointer;padding:2px;color:#9ba3af;display:flex;flex-direction:row;justify-content:center;align-items:center}.toolbar__search-clear .material-icons-round{font-size:16px}.toolbar__search-clear:hover{color:#1a1d23}.toolbar__right{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.toolbar__actions{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:8px;flex-shrink:0}.toolbar__select{height:40px;padding:0 12px;border:1.5px solid #E8ECF0;border-radius:8px;font-size:14px;color:#4a5568;background:#fff;cursor:pointer;outline:none;font-family:Inter,sans-serif;transition:border-color .15s ease}.toolbar__select:focus{border-color:#f5a623}@media (max-width: 640px){.toolbar{flex-direction:column;align-items:stretch}.toolbar__search{min-width:100%}.toolbar__right{justify-content:flex-start}}.toolbar-btn{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:4px;height:38px;padding:0 16px;border:1.5px solid #E8ECF0;border-radius:8px;background:#fff;font-size:12px;font-family:Inter,sans-serif;color:#4a5568;cursor:pointer;transition:all .15s ease;white-space:nowrap}.toolbar-btn .material-icons-round{font-size:16px}.toolbar-btn:hover,.toolbar-btn--active{border-color:#f5a623;color:#f5a623;background:#f5a6230d}.toolbar-btn__badge{min-width:18px;height:18px;padding:0 5px;background:#f5a623;color:#fff;border-radius:20px;font-size:10px;font-weight:700;display:flex;flex-direction:row;justify-content:center;align-items:center}.sort-select{height:38px;padding:0 16px;border:1.5px solid #E8ECF0;border-radius:8px;font-size:12px;font-family:Inter,sans-serif;background:#f0f2f5;color:#4a5568;outline:none;cursor:pointer;transition:border-color .15s ease}.sort-select:focus{border-color:#f5a623}.sort-dir-btn{width:38px;height:38px;border:1.5px solid #E8ECF0;border-radius:8px;background:#f0f2f5;display:flex;flex-direction:row;justify-content:center;align-items:center;cursor:pointer;transition:all .15s ease}.sort-dir-btn .material-icons-round{font-size:16px;color:#9ba3af}.sort-dir-btn:hover{border-color:#f5a623}.sort-dir-btn:hover .material-icons-round{color:#f5a623}.search-box{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px;background:#f0f2f5;border:1.5px solid #E8ECF0;border-radius:8px;padding:0 12px;height:38px;min-width:220px;transition:border-color .15s ease}.search-box:focus-within{border-color:#f5a623}.search-box__icon{font-size:18px;color:#9ba3af;flex-shrink:0;pointer-events:none}.search-box__input{border:none;background:none;font-size:12px;font-family:Inter,sans-serif;color:#1a1d23;width:100%;outline:none}.search-box__input::placeholder{color:#9ba3af}.table-toolbar{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:8px 16px;border-bottom:1px solid #E8ECF0;background:#fff;gap:8px}.table-toolbar__left{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px}.table-toolbar__title{font-size:16px;font-weight:600;color:#1a1d23}.table-toolbar__count{background:#fff3dc;color:#e09415;font-size:11px;font-weight:600;padding:2px 10px;border-radius:20px}.table-toolbar__filters{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px;flex-wrap:wrap}.table-toolbar__actions{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:8px;flex-shrink:0}.table-search-wrap{position:relative;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;height:34px;min-width:200px;flex:1 1 200px;max-width:380px;background:#fff;border:1.5px solid #E8ECF0;border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease}.table-search-wrap:focus-within{border-color:#f5a623;box-shadow:0 0 0 3px #f5a6231a}.table-search-icon{position:absolute;left:9px;font-size:15px;color:#9ba3af;pointer-events:none}.table-search{width:100%;height:100%;padding:0 30px;background:transparent;border:none;outline:none;font-size:12px;font-family:Inter,sans-serif;color:#1a1d23}.table-search::placeholder{color:#9ba3af}.table-search-clear{position:absolute;right:6px;display:flex;flex-direction:row;justify-content:center;align-items:center;width:20px;height:20px;border:none;background:none;cursor:pointer;color:#9ba3af;border-radius:50%;transition:background .15s ease,color .15s ease}.table-search-clear .material-icons-round{font-size:13px}.table-search-clear:hover{background:#f0f2f5;color:#1a1d23}.table-count{font-size:11px;color:#9ba3af;font-weight:500;white-space:nowrap}select{font-family:Inter,sans-serif}select option{background-color:#fff;color:#1a1d23;font-family:Inter,sans-serif;font-size:12px;font-weight:400;padding:8px 12px}select option:checked,select option:focus{background-color:#fff3dc;color:#e09415;font-weight:600}select option[value=""][disabled],select option[value=""]{color:#9ba3af;font-style:italic}select optgroup{background-color:#f0f2f5;color:#9ba3af;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.4px}.hdr-filter{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:4px;position:relative;height:36px;padding:0 6px 0 10px;background:#fff;border:1.5px solid #E8ECF0;border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;cursor:pointer;white-space:nowrap}.hdr-filter:hover{border-color:#cfd8e0;background:#f0f2f5}.hdr-filter:focus-within{border-color:#f5a623;box-shadow:0 0 0 3px #f5a62314;background:#fff}.hdr-filter__icon{font-size:14px;color:#f5a623;flex-shrink:0;pointer-events:none}.hdr-filter__select{appearance:none;-webkit-appearance:none;border:none;background:transparent;font-family:Inter,sans-serif;font-size:12px;font-weight:500;color:#1a1d23;cursor:pointer;outline:none;max-width:140px;min-width:72px;padding-right:2px}.hdr-filter__select option{background-color:#fff;color:#1a1d23;font-weight:400}.hdr-filter__select option:checked{background-color:#fff3dc;color:#e09415;font-weight:600}.hdr-filter__chevron{font-size:15px;color:#9ba3af;pointer-events:none;flex-shrink:0;transition:transform .15s ease}.hdr-filter:focus-within .hdr-filter__chevron{transform:rotate(180deg);color:#f5a623}.sort-select option{background-color:#fff;color:#1a1d23;font-weight:400}.sort-select option:checked{background-color:#fff3dc;color:#e09415;font-weight:600}.hdr-search{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:6px;height:36px;padding:0 12px;background:#fff;border:1.5px solid #E8ECF0;border-radius:8px;min-width:200px;transition:border-color .15s ease,box-shadow .15s ease}.hdr-search:focus-within{border-color:#f5a623;box-shadow:0 0 0 3px #f5a62314}.hdr-search .material-icons-round{font-size:16px;color:#9ba3af;flex-shrink:0;pointer-events:none}.hdr-search input{border:none;background:transparent;font-family:Inter,sans-serif;font-size:12px;color:#1a1d23;outline:none;flex:1;min-width:0}.hdr-search input::placeholder{color:#9ba3af}.hdr-search__clear{display:flex;flex-direction:row;justify-content:center;align-items:center;width:18px;height:18px;border:none;background:none;cursor:pointer;color:#9ba3af;border-radius:50%;flex-shrink:0}.hdr-search__clear .material-icons-round{font-size:13px}.hdr-search__clear:hover{background:#f0f2f5;color:#1a1d23}@media (max-width: 640px){.table-toolbar{flex-direction:column;align-items:stretch}.table-toolbar__filters{flex-wrap:wrap}.hdr-search{min-width:0;flex:1 1 160px}.hdr-filter{flex:1 1 120px}}.row-actions{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:4px}.icon-btn{width:30px;height:30px;border:none;border-radius:8px;display:flex;flex-direction:row;justify-content:center;align-items:center;cursor:pointer;transition:background .15s ease}.icon-btn .material-icons-round{font-size:15px}.icon-btn--view{background:#f5a6231a;color:#f5a623}.icon-btn--view:hover{background:#f5a62333}.icon-btn--edit{background:#3b82f61a;color:#3b82f6}.icon-btn--edit:hover{background:#3b82f633}.icon-btn--delete{background:#ef44441a;color:#ef4444}.icon-btn--delete:hover{background:#ef444433}.icon-btn--refresh{color:#4a5568}.icon-btn--refresh:hover{background:#f5a62314;color:#f5a623}.icon-btn--more{color:#9ba3af}.icon-btn--delete:disabled,.icon-btn--delete[disabled]{opacity:.4;cursor:not-allowed}.filter-clear-btn{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:4px;height:32px;padding:0 16px;border:1.5px solid rgba(239,68,68,.3);border-radius:8px;background:#ef44440f;color:#ef4444;font-size:12px;font-family:Inter,sans-serif;cursor:pointer;transition:all .15s ease}.filter-clear-btn .material-icons-round{font-size:16px}.filter-clear-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}.form-page{display:flex;flex-direction:column;gap:24px;padding-bottom:32px}.form-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;overflow:hidden}.form-card__head{padding:16px 24px;border-bottom:1px solid #E8ECF0;display:flex;flex-direction:row;justify-content:space-between;align-items:center}.form-card__title{font-size:16px;font-weight:600;color:#1a1d23}.form-card__body{padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid--3{grid-template-columns:repeat(3,1fr)}.form-grid--1{grid-template-columns:1fr}@media (max-width: 600px){.form-grid{grid-template-columns:1fr}}.form-field{display:flex;flex-direction:column;gap:6px}.form-field--full{grid-column:1/-1}.form-field__label{font-size:12px;font-weight:500;color:#4a5568}.form-field__hint{font-weight:400;font-size:11px;color:#9ba3af}.form-field__input,.form-field__select,.form-field__textarea{height:40px;padding:0 12px;border:1.5px solid #E8ECF0;border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:#1a1d23;background:#fff;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.form-field__input:focus,.form-field__select:focus,.form-field__textarea:focus{border-color:#f5a623;box-shadow:0 0 0 3px #f5a6231a}.form-field__input.ng-invalid.ng-touched,.form-field__select.ng-invalid.ng-touched,.form-field__textarea.ng-invalid.ng-touched{border-color:#ef4444;box-shadow:0 0 0 3px #ef444414}.form-field__textarea{height:auto;min-height:80px;padding:10px 12px;resize:vertical}.form-field__select{cursor:pointer}.form-field__error{font-size:11px;color:#ef4444;margin-top:2px}.req{color:#ef4444}.form-footer{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:8px;margin-top:24px;padding-top:16px;border-top:1px solid #E8ECF0}@keyframes formSpin{to{transform:rotate(360deg)}}.loading-wrap{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:300px}.loading-wrap .spinner{width:40px;height:40px;border:3px solid #E8ECF0;border-top-color:#f5a623;border-radius:50%;animation:formSpin .8s linear infinite}.loading-wrap p{color:#9ba3af;font-size:14px}.modal-body p{margin:0 0 8px;font-size:14px;color:#4a5568}.modal-body__sub{color:#9ba3af!important;font-size:12px!important}.delete-confirm{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;text-align:center;padding:16px 0}.delete-confirm__icon{font-size:52px;color:#f59e0b}.delete-confirm p{font-size:14px;color:#4a5568;line-height:1.6}.table-footer{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid #E8ECF0;flex-wrap:wrap;gap:8px}.table-footer__range{font-size:11px;color:#9ba3af;font-weight:500}@media (max-width: 640px){.table-footer{justify-content:center}.table-footer__range{width:100%;text-align:center}}.pagination{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 24px;border-top:1px solid #E8ECF0}.pagination__info{font-size:12px;color:#9ba3af}.pagination__pages{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:4px}.page-btn{width:34px;height:34px;border:1.5px solid #E8ECF0;border-radius:8px;background:#fff;font-size:12px;font-family:Inter,sans-serif;color:#4a5568;cursor:pointer;display:flex;flex-direction:row;justify-content:center;align-items:center;transition:all .15s ease}.page-btn .material-icons-round{font-size:16px}.page-btn:hover:not(:disabled){border-color:#f5a623;color:#f5a623}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-btn--active{background:#f5a623;border-color:#f5a623;color:#fff;font-weight:700}.page-ellipsis{width:34px;height:34px;display:flex;flex-direction:row;justify-content:center;align-items:center;font-size:12px;color:#9ba3af}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.data-row{cursor:pointer;transition:background .15s ease}.data-row:last-child td,.data-row:last-child .data-table__td{border-bottom:none}.data-row--no-click{cursor:default}.data-row__idx{color:#9ba3af;font-size:11px;font-weight:600;text-align:center}.filter-panel{padding:16px 24px;border-bottom:1px solid #E8ECF0;background:#f0f2f5}.filter-panel__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px 16px}.filter-panel__footer{margin-top:8px;display:flex;flex-direction:row;justify-content:flex-end;align-items:center}@media (max-width: 640px){.filter-panel__grid{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.filter-panel__grid{grid-template-columns:1fr}}.filter-card{position:sticky;top:0;z-index:100;background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;border:1px solid #E8ECF0}.filter-card__row{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-end;gap:8px;padding:16px 24px;flex-wrap:wrap}@media (max-width: 768px){.filter-card__row{gap:8px;padding:8px 16px}}.filter-card__title{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px}.filter-card__title .material-icons-round{font-size:16px;color:#f5a623}.filter-card__row{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}.filter-card__actions{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:8px;flex-shrink:0;padding-bottom:1px}@media (max-width: 480px){.filter-card__row{flex-direction:column}}.filter-card__field{display:flex;flex-direction:column;gap:4px;min-width:160px;flex:1}.filter-card__field--sm{min-width:130px;flex:0 1 160px}.filter-card__field--xs{min-width:100px;flex:0 1 110px}@media (max-width: 640px){.filter-card__field{min-width:calc(50% - 4px);flex:0 1 calc(50% - 4px)}}.filter-card__label{font-size:11px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.filter-card__select,.filter-card__input{width:100%;height:40px;padding:0 8px;border:1.5px solid #E8ECF0;border-radius:8px;font-size:12px;font-family:Inter,sans-serif;background:#fff;color:#4a5568;outline:none;transition:border-color .15s ease}.filter-card__select:focus,.filter-card__input:focus{border-color:#f5a623}.filter-card__date-wrap{position:relative;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}.filter-card__date__icon{position:absolute;left:10px;font-size:18px;color:#9ba3af;pointer-events:none;z-index:1}.filter-card__date{width:100%;padding:9px 12px 9px 36px;border:1.5px solid #E8ECF0;border-radius:8px;background:#f0f2f5;font-size:12px;color:#1a1d23;font-family:Inter,sans-serif;cursor:pointer;transition:border-color .15s ease}.filter-card__date:focus{outline:none;border-color:#f5a623;box-shadow:0 0 0 3px #f5a6231f}.filter-group{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:6px;min-width:160px;flex:1 1 160px}.filter-group__label{font-size:11px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.filter-group__select,.filter-group__input{width:100%;height:40px;padding:0 8px;border:1.5px solid #E8ECF0;border-radius:8px;font-size:12px;font-family:Inter,sans-serif;background:#fff;color:#4a5568;outline:none;transition:border-color .15s ease}.filter-group__select:focus,.filter-group__input:focus{border-color:#f5a623}.filter-select-wrap{position:relative;height:40px;background:#f0f2f5;border:1.5px solid #E8ECF0;border-radius:8px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;transition:border-color .15s ease,box-shadow .15s ease}.filter-select-wrap:focus-within{border-color:#f5a623;box-shadow:0 0 0 3px #f5a6231f}.filter-select-wrap--disabled{opacity:.5;pointer-events:none}.filter-select{width:100%;height:100%;padding:0 32px 0 12px;background:transparent;border:none;outline:none;font-size:12px;font-family:Inter,sans-serif;color:#1a1d23;cursor:pointer;appearance:none;-webkit-appearance:none}.filter-select option{color:#1a1d23}.filter-select__arrow{position:absolute;right:8px;font-size:18px;color:#9ba3af;pointer-events:none;flex-shrink:0;transition:transform .15s ease,color .15s ease}.filter-select-wrap:focus-within .filter-select__arrow{color:#f5a623;transform:rotate(180deg)}@keyframes filterSpin{to{transform:rotate(360deg)}}.filter-select__spinner{position:absolute;right:10px;width:16px;height:16px;border:2px solid rgba(245,166,35,.2);border-top-color:#f5a623;border-radius:50%;animation:filterSpin .65s linear infinite}.filter-chips{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:4px;flex-wrap:wrap;padding:8px 24px;border-bottom:1px solid #F0F2F5}.chip{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:4px;height:26px;padding:0 8px;background:#f5a6231a;border-radius:20px;font-size:11px}.chip__label{color:#9ba3af;font-weight:500}.chip__value{color:#e09415;font-weight:600}.chip__remove{border:none;background:none;padding:0;cursor:pointer;display:flex;flex-direction:row;justify-content:center;align-items:center}.chip__remove .material-icons-round{font-size:12px;color:#9ba3af}.chip__remove:hover .material-icons-round{color:#ef4444}.chip--clear{background:none;color:#9ba3af;font-size:11px;border:1px solid #E8ECF0;cursor:pointer;font-family:Inter,sans-serif;padding:0 8px;height:26px;border-radius:20px}.chip--clear:hover{border-color:#ef4444;color:#ef4444}.id-tag{display:inline-block;font-size:11px;font-weight:700;font-family:monospace;background:#f5a62312;color:#f5a623;border:1px solid rgba(245,166,35,.18);border-radius:6px;padding:2px 8px;white-space:nowrap}.cell-tag{display:inline-block;font-size:11px;font-weight:600;background:#f5a62314;color:#f5a623;border-radius:20px;padding:2px 10px;white-space:nowrap}.cell-staff{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:2px}.cell-staff__name{font-weight:600;color:#1a1d23;font-size:12px}.cell-staff__id{font-size:11px;color:#9ba3af;font-family:monospace}.cell-title{font-weight:600;color:#1a1d23;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.cell-attachment{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:#3b82f6;text-decoration:none;margin-top:3px;font-weight:500;transition:color .15s ease}.cell-attachment:hover{color:#0b63f3;text-decoration:underline}.cell-attachment .material-icons-round{font-size:13px}.cell-date{color:#4a5568;font-size:11px;white-space:nowrap}.cell-muted{color:#9ba3af;font-size:11px}.cell-code{font-family:monospace;font-size:12px;font-weight:600;color:#4a5568}@keyframes listShimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.sk{background:linear-gradient(90deg,#f0f2f5 25%,#e8ecf0,#f0f2f5 75%);background-size:600px 100%;animation:listShimmer 1.4s ease infinite;border-radius:4px}.sk--avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0}.sk--icon{width:46px;height:46px;border-radius:8px;flex-shrink:0}.sk--name{height:13px;width:120px}.sk--sub{height:10px;width:80px}.sk--xs{height:12px;width:28px}.sk--sm{height:12px;width:60px}.sk--md{height:12px;width:100px}.sk--lg{height:12px;width:140px}.sk--badge{height:20px;width:52px;border-radius:20px}.sk--chip{height:22px;width:90px;border-radius:20px}.sk-row td{padding:14px 16px}.sk-student{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px}.skeleton-cell{background:linear-gradient(90deg,#f0f2f5 25%,#e8ecf0,#f0f2f5 75%);background-size:600px 100%;animation:listShimmer 1.4s ease infinite;border-radius:4px;height:14px;display:block}.skeleton-cell--xs{width:30px}.skeleton-cell--sm{width:60px}.skeleton-cell--md{width:120px}.skeleton-cell--lg{width:180px}.skeleton-cell--name{width:200px}.skeleton-cell--badge{height:22px;width:64px;border-radius:20px}.skeleton-cell--actions{width:70px}.skeleton-row td{padding:14px 16px;border-bottom:1px solid #F0F2F5}.empty-state{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:48px 24px;text-align:center}.empty-state__icon{width:72px;height:72px;border-radius:50%;background:#f0f2f5;display:flex;flex-direction:row;justify-content:center;align-items:center}.empty-state__icon .material-icons-round{font-size:36px;color:#9ba3af}.empty-state__title{font-size:16px;font-weight:600;color:#1a1d23}.empty-state__sub{font-size:14px;color:#9ba3af;line-height:1.5}.sort-icon{font-size:14px!important;vertical-align:middle;opacity:.4;transition:opacity .15s ease,color .15s ease}.sort-icon--asc,.sort-icon--desc{opacity:1;color:#f5a623}.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:24px;border-radius:12px;font-size:12px;font-weight:700;padding:0 8px}.count-pill--success{background:#22c55e1f;color:#22c55e}.count-pill--warning{background:#f59e0b1f;color:#c57f08}.count-pill--danger{background:#ef44441f;color:#ef4444}.count-pill--info{background:#3b82f61f;color:#3b82f6}.state-box__retry{background:none;border:none;color:#f5a623;font-weight:700;cursor:pointer;text-decoration:underline;font-size:inherit;font-family:Inter,sans-serif;padding:0}.state-box__retry:hover{color:#e09415}.no-data{color:#9ba3af;font-style:italic;font-size:12px}@keyframes listSpin{to{transform:rotate(360deg)}}.spin{animation:listSpin .8s linear infinite}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stats-grid--5{grid-template-columns:repeat(5,1fr)}.stats-grid--3{grid-template-columns:repeat(3,1fr)}.stats-grid--2{grid-template-columns:repeat(2,1fr)}@media (max-width: 768px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.stats-grid{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.summary-grid--3{grid-template-columns:repeat(3,1fr)}.summary-grid--5{grid-template-columns:repeat(5,1fr)}@media (max-width: 768px){.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.summary-grid{grid-template-columns:1fr 1fr}}:root{--sidebar-width: 220px;--sidebar-collapsed: 72px}:root{--header-height: 68px}.avatar{width:36px;height:36px;border-radius:50%;font-size:12px;font-weight:700;color:#fff;display:flex;flex-direction:row;justify-content:center;align-items:center;flex-shrink:0;object-fit:cover}.avatar--photo{object-fit:cover}.avatar--sm{width:30px;height:30px;font-size:11px}.avatar--md{width:42px;height:42px;font-size:14px}.avatar--lg{width:52px;height:52px;font-size:16px}.avatar--xl{width:64px;height:64px;font-size:20px}.name-cell{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:10px}.name-cell__avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#f5a623,#c88009);color:#fff;font-size:13px;font-weight:700;display:flex;flex-direction:row;justify-content:center;align-items:center;flex-shrink:0}.name-cell__info{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:1px}.name-cell__name{font-weight:600;color:#1a1d23;font-size:14px}.name-cell__sub{font-size:11px;color:#9ba3af;font-family:monospace}.student-cell{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px}.student-cell__meta{display:flex;flex-direction:column;justify-content:center;min-width:0}.student-cell__top{display:flex;align-items:center;gap:8px;margin-bottom:2px}.student-cell__name{font-size:12px;font-weight:600;color:#1a1d23}.contact-info{display:flex;flex-direction:column;gap:4px}.contact-info .mobile,.contact-info .email-text{display:flex;align-items:center;gap:6px;font-size:13px;line-height:1.4}.contact-info .mobile{font-weight:600;color:#1a1d23}.contact-info .email-text{color:#9ba3af;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-info i{font-size:11px;opacity:.7}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}.badge--paid,.badge--active,.badge--completed{background:#22c55e1f;color:#1a9a49}.badge--guest,.badge--pending{background:#f59e0b1f;color:#ac6f07}.badge--inactive,.badge--unknown{background:#9ba3af1f;color:#9ba3af}.badge--danger,.badge--rejected,.badge--overdue{background:#ef44441f;color:#ec1e1e}.badge--info{background:#3b82f61f;color:#1469f4}.badge--new{background:#f5a62326;color:#e09415;font-size:9px;letter-spacing:.5px;padding:1px 6px}.pill{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600}.pill--board{background:#3b82f61a;color:#3b82f6}.pill--standard{background:#f5a6231a;color:#e09415}.pill--subject{background:#f5a62314;color:#f5a623}.pill--section,.pill--neutral{background:#9ba3af1a;color:#9ba3af}.pill--teaching{background:#22c55e1a;color:#22c55e}.pill--non-teaching{background:#f59e0b1f;color:#c57f08}.code-text{font-size:11px;font-family:monospace;color:#9ba3af;letter-spacing:.5px}.mono-text{font-family:monospace;font-size:12px}.date-text{font-size:11px;color:#9ba3af;white-space:nowrap}.school-text{max-width:160px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-text{max-width:180px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-xs{margin-top:4px}.mt-sm{margin-top:8px}.mt-md{margin-top:16px}.mt-lg{margin-top:24px}.mb-xs{margin-bottom:4px}.mb-sm{margin-bottom:8px}.mb-md{margin-bottom:16px}.mb-lg{margin-bottom:24px}.gap-xs{gap:4px}.gap-sm{gap:8px}.gap-md{gap:16px}.gap-lg{gap:24px}.d-flex{display:flex}.d-inline-flex{display:inline-flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.align-center{align-items:center}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.auth-card{background:#ffffffb8;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;border:1px solid rgba(255,255,255,.88);box-shadow:0 20px 60px #f59e0b1a,0 4px 20px #0000000f,inset 0 1px #fffffff2;padding:40px 36px;width:100%;max-width:440px;position:relative;z-index:1;animation:auth-card-in .52s cubic-bezier(.16,1,.3,1)}@media (max-width: 640px){.auth-card{padding:28px 20px}}.auth-card--wide{max-width:520px}.auth-card__header{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:6px;text-align:center;margin-bottom:28px}.auth-card__logo{width:60px;height:60px;border-radius:16px;background:linear-gradient(135deg,#f5a62326,#f5a6230f);border:1.5px solid rgba(245,166,35,.22);display:flex;flex-direction:row;justify-content:center;align-items:center;margin-bottom:8px}.auth-card__logo .material-icons-round{font-size:28px;color:#f5a623}.auth-card__title{font-size:24px;font-weight:800;color:#1a1a2e;letter-spacing:-.4px}.auth-card__subtitle{font-size:12px;color:#6b7280;line-height:1.5}.auth-card__form{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:18px}.auth-card__footer{text-align:center;font-size:12px;color:#6b7280;margin-top:16px}.auth-card__link{color:#f5a623;font-weight:700;transition:color .15s ease,text-decoration-color .15s ease;text-decoration:underline;text-decoration-color:transparent}.auth-card__link:hover{color:#e09415;text-decoration-color:#e09415}.auth-field{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:6px}.auth-field__wrap{display:flex;align-items:center;gap:10px;background:#ffffff8c;border:1.5px solid #e5e7eb;border-radius:12px;padding:0 14px;height:58px;position:relative;transition:border-color .22s ease,box-shadow .22s ease,background .22s ease}.auth-field__wrap:focus-within{border-color:#f5a623;background:#ffffffe0;box-shadow:0 0 0 3px #f5a62333}.auth-field__wrap--error{border-color:#ef4444!important}.auth-field__wrap--error:focus-within{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef444424!important}.auth-field__icon{font-size:18px;color:#9ca3af;flex-shrink:0;transition:color .22s ease}.auth-field__wrap:focus-within .auth-field__icon{color:#f5a623}.auth-field__wrap--error .auth-field__icon{color:#ef4444}.auth-field__control{flex:1;align-self:stretch;position:relative;display:flex;align-items:center}.auth-field__label{position:absolute;left:0;top:50%;transform:translateY(-50%);font-size:14px;color:#9ca3af;pointer-events:none;transition:top .22s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.4,0,.2,1),font-size .22s cubic-bezier(.4,0,.2,1),color .22s ease;white-space:nowrap;font-weight:400;line-height:1}.auth-field__wrap:focus-within .auth-field__label,.auth-field__wrap.has-value .auth-field__label{top:11px;transform:translateY(0);font-size:10.5px;font-weight:600;color:#f5a623;letter-spacing:.2px}.auth-field__wrap--error:focus-within .auth-field__label,.auth-field__wrap--error.has-value .auth-field__label{color:#ef4444}.auth-field__input{width:100%;border:none;background:none;outline:none;font-size:14px;color:#1a1a2e;font-family:Inter,sans-serif;padding-top:16px}.auth-field__input::placeholder{color:transparent}.auth-field__input:-webkit-autofill,.auth-field__input:-webkit-autofill:hover,.auth-field__input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 30px rgba(255,255,255,0) inset;-webkit-text-fill-color:#1a1a2e;caret-color:#1a1a2e}.auth-field__input--select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-top:16px;padding-right:28px}.auth-field__input--select option{color:#1a1a2e;background:#fff}.auth-field__input--select option[value=""][disabled]{color:#9ca3af}.auth-field__spinner{width:16px;height:16px;border:2px solid rgba(245,166,35,.25);border-top-color:#f5a623;border-radius:50%;animation:auth-spin .65s linear infinite;flex-shrink:0}.auth-field__eye{width:28px;height:28px;display:flex;flex-direction:row;justify-content:center;align-items:center;cursor:pointer;transition:background .15s ease;color:#9ca3af;flex-shrink:0;border-radius:50%;transition:color .15s ease}.auth-field__eye:hover{background:#f0f2f5}.auth-field__eye .material-icons-round{font-size:18px}.auth-field__eye:hover{color:#4b5563;background:#0000000d}.auth-field__error{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:4px;font-size:11px;color:#ef4444;font-weight:500;animation:auth-err-in .18s ease;padding-left:2px}.auth-field__error .material-icons-round{font-size:13px;flex-shrink:0}.auth-field__forgot{font-size:12px;color:#f5a623;font-weight:600;text-align:right;display:block;margin-top:-4px;transition:color .15s ease}.auth-field__forgot:hover{color:#e09415;text-decoration:underline}.auth-btn{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:8px;width:100%;padding:15px;background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#fff;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;letter-spacing:.3px;box-shadow:0 4px 15px #f5a62361;margin-top:4px;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s ease,background .22s ease}.auth-btn .material-icons-round{font-size:20px}.auth-btn:hover:not(:disabled){background:linear-gradient(135deg,#e08e00,#f59e0b);transform:translateY(-2px) scale(1.015);box-shadow:0 8px 28px #f5a6237a}.auth-btn:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:0 3px 10px #f5a6234d}.auth-btn:disabled{opacity:.58;cursor:not-allowed;transform:none}.auth-btn__spinner{width:18px;height:18px;border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:auth-spin .65s linear infinite;flex-shrink:0}.auth-check__label{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.auth-check__input{display:none}.auth-check__input:checked~.auth-check__box{background:#f5a623;border-color:#f5a623;box-shadow:0 0 0 3px #f5a6232e}.auth-check__input:checked~.auth-check__box:after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border:2px solid #fff;border-top:none;border-left:none;transform:rotate(45deg)}.auth-check__box{width:18px;height:18px;border:1.5px solid #d1d5db;border-radius:5px;flex-shrink:0;background:#ffffffb3;position:relative;transition:all .15s ease}.auth-check__text{font-size:12px;color:#6b7280;line-height:1.4}.auth-check__link{color:#f5a623;font-weight:600;text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color .15s ease}.auth-check__link:hover{text-decoration-color:#f5a623}.pwd-meter{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;margin-top:6px}.pwd-meter__bars{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:4px;flex:1}.pwd-meter__bar{flex:1;height:4px;border-radius:3px;transition:background .3s ease}.pwd-meter__label{font-size:11px;font-weight:700;flex-shrink:0;min-width:44px;text-align:right}.signup-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 640px){.signup-row{grid-template-columns:1fr}}.otp-grid{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:10px}.otp-box{width:52px;height:60px;border:1.5px solid #e5e7eb;border-radius:12px;background:#ffffffa6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:20px;font-weight:700;color:#1a1a2e;text-align:center;outline:none;transition:all .15s ease;font-family:Inter,sans-serif;caret-color:#f5a623}.otp-box:focus{border-color:#f5a623;background:#ffffffe6;box-shadow:0 0 0 3px #f5a62333}.otp-box--filled{border-color:#f5a623;background:#f5a6230d}.auth-steps{display:flex;flex-direction:row;justify-content:center;align-items:center;margin-bottom:24px}.auth-step{display:flex;flex-direction:row;justify-content:center;align-items:center}.auth-step__dot{width:32px;height:32px;border-radius:50%;border:2px solid #e5e7eb;background:#fffc;display:flex;flex-direction:row;justify-content:center;align-items:center;font-size:12px;font-weight:700;color:#9ca3af;position:relative;z-index:1;transition:all .25s ease}.auth-step__dot .material-icons-round{font-size:16px}.auth-step__line{width:52px;height:2px;background:#e5e7eb;transition:background .25s ease}.auth-step--active .auth-step__dot{border-color:#f5a623;background:#f5a623;color:#fff}.auth-step--done .auth-step__dot{border-color:#22c55e;background:#22c55e;color:#fff}.auth-success{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:16px;text-align:center;padding:8px 0;animation:auth-card-in .45s cubic-bezier(.16,1,.3,1)}.auth-success__icon{position:relative;width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#f5a6232e,#f5a6230f);border:2px solid rgba(245,166,35,.25);display:flex;flex-direction:row;justify-content:center;align-items:center;margin-bottom:4px}.auth-success__icon .material-icons-round{font-size:32px;color:#f5a623}.auth-success__ring{position:absolute;inset:-8px;border-radius:50%;border:2px dashed rgba(245,166,35,.3);animation:orbit-spin 12s linear infinite}.auth-success__title{font-size:24px;font-weight:800;color:#1a1a2e;letter-spacing:-.4px}.auth-success__body{font-size:12px;color:#6b7280;margin-bottom:-8px}.auth-success__email{font-size:14px;font-weight:700;color:#f5a623;background:#f5a62314;padding:6px 16px;border-radius:12px;border:1px solid rgba(245,166,35,.18)}.auth-success__hint{font-size:12px;color:#9ca3af}.auth-success__retry{color:#f5a623;font-weight:600;font-size:12px;background:none;border:none;cursor:pointer;padding:0;transition:color .15s ease;text-decoration:underline;text-decoration-color:transparent}.auth-success__retry:hover{color:#e09415;text-decoration-color:#e09415}.auth-btn--outline{background:transparent;border:1.5px solid rgba(245,166,35,.45);color:#f5a623;box-shadow:none;text-decoration:none}.auth-btn--outline:hover:not(:disabled){background:#f5a6230f;border-color:#f5a623;box-shadow:none;transform:translateY(-1px) scale(1);color:#e09415}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes auth-card-in{0%{opacity:0;transform:translateY(28px) scale(.96);filter:blur(4px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes auth-err-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
