.dashboard-page{background:#f3f4f6;flex-direction:column;width:100%;height:100dvh;display:flex;overflow:hidden}.dashboard-header{z-index:10;background:#fff;border-bottom:1px solid #e5e5e5;flex:0 0 60px;justify-content:space-between;align-items:center;min-height:60px;padding:0 24px;display:flex;position:relative;box-shadow:0 2px 8px #0000000a}.dashboard-title{letter-spacing:.06em;color:#181818;white-space:nowrap;font-size:17px;font-weight:850}.dashboard-layout{flex:auto;grid-template-columns:250px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.dashboard-sidebar{background:#fff;border-right:1px solid #e5e5e5;min-width:0;height:100%;min-height:0;overflow:hidden}.dashboard-navigation{flex-direction:column;gap:6px;padding:18px 14px;display:flex}.navigation-item{color:#555;letter-spacing:.04em;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:13px;width:100%;height:46px;padding:0 16px;font-size:13px;font-weight:750;transition:background .15s,color .15s;display:flex}.navigation-item:hover{color:#222;background:#f5f5f5}.navigation-item.active{color:#fff;background:#d62828;box-shadow:0 6px 16px #d6282829}.navigation-icon{justify-content:center;align-items:center;width:24px;font-size:19px;line-height:1;display:flex}.dashboard-main{background:#f3f4f6;width:100%;min-width:0;height:100%;min-height:0;padding:20px;overflow:hidden}.dashboard-workspace{background:#fff;border:1px solid #e6e6e6;border-radius:14px;width:100%;min-width:0;height:100%;min-height:0;overflow:auto;box-shadow:0 4px 16px #0000000a}.workspace-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:40px;display:flex}.workspace-placeholder-icon{color:#d62828;background:#f4f4f4;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:18px;font-size:28px;display:flex}.workspace-placeholder h2{color:#222;margin:0 0 8px;font-size:22px;font-weight:800}.workspace-placeholder p{color:#888;margin:0;font-size:14px}.dashboard-workspace::-webkit-scrollbar{width:9px;height:9px}.dashboard-workspace::-webkit-scrollbar-track{background:0 0}.dashboard-workspace::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:10px}.dashboard-workspace::-webkit-scrollbar-thumb:hover{background:#b8b8b8}.confirm-overlay{z-index:9999;background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-modal{text-align:center;background:#fff;border-radius:16px;width:360px;padding:30px;box-shadow:0 20px 60px #00000040}.confirm-modal h3{margin:0 0 12px;font-size:20px}.confirm-modal p{color:#666;margin-bottom:25px}.confirm-actions{justify-content:center;gap:12px;display:flex}.confirm-actions button{cursor:pointer;border:0;border-radius:9px;min-width:110px;height:42px;font-weight:800}.confirm-cancel{background:#eee}.confirm-submit{color:#fff;background:#d62828}.app-notification{z-index:3000;box-sizing:border-box;text-align:center;pointer-events:none;background:#fff;border:1px solid #d9d9d9;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:16px;width:360px;max-width:calc(100vw - 32px);min-height:170px;padding:28px;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 22px 60px #00000038}.app-notification-icon{border:3px solid;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;font-size:30px;font-weight:900;line-height:1;display:flex}.app-notification-text{font-size:15px;font-weight:800;line-height:1.35}.app-notification-success{color:#111}.app-notification-error{color:#b42318}@media (width<=600px){.app-notification{width:calc(100vw - 32px);min-height:150px;padding:22px}}.login-page{background:#f2f3f5;justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex;position:relative;overflow:hidden}.login-glow{display:none}.login-card{z-index:2;background:#fff;border-radius:18px;width:100%;max-width:350px;padding:26px 24px 22px;position:relative;box-shadow:0 18px 45px #0000001a}.login-logo{justify-content:center;align-items:center;width:100%;margin-bottom:20px;display:flex}.login-logo img{object-fit:contain;width:100%;max-width:300px;height:auto;display:block}.login-heading{text-align:center;margin-bottom:22px}.login-heading h1{color:#111827;margin:0;font-size:22px;font-weight:800;line-height:1.2}.login-heading p{color:#6b7280;margin:7px 0 0;font-size:12px}.login-form{flex-direction:column;gap:13px;display:flex}.form-field{flex-direction:column;gap:5px;display:flex}.form-field label{color:#24272d;font-size:11px;font-weight:700}.form-field input{color:#15171c;background:#fff;border:1px solid #d1d5db;border-radius:9px;outline:none;width:100%;height:42px;padding:0 12px;font-size:12px;transition:border-color .2s,box-shadow .2s}.form-field input::placeholder{color:#9ca3af}.form-field input:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261f}.password-wrapper{width:100%;position:relative}.password-wrapper input{padding-right:42px}.password-toggle{color:#777;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:25px;height:25px;margin:0;padding:0;font-size:16px;display:flex;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.password-toggle:hover{color:#333}.login-error{color:#b91c1c;text-align:center;background:#fee2e2;border-radius:8px;padding:9px 10px;font-size:11px}.login-button{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:9px;width:100%;height:43px;margin-top:6px;font-size:13px;font-weight:800;transition:background .2s,transform .1s,box-shadow .2s}.login-button:hover{background:#ef4444;box-shadow:0 7px 18px #dc26262e}.login-button:active{transform:scale(.98)}.login-footer{text-align:center;color:#9ca3af;margin-top:20px;font-size:10px}@media (width<=600px){.login-page{padding:15px}.login-card{border-radius:16px;max-width:350px;padding:24px 20px 20px}.login-logo{margin-bottom:18px}.login-logo img{max-width:280px}.login-heading{margin-bottom:20px}.login-heading h1{font-size:20px}.login-heading p{font-size:11px}}@media (width<=380px){.login-card{max-width:320px;padding:22px 18px 19px}.login-logo img{max-width:250px}.login-heading h1{font-size:18px}}.dashboard-logout-button:hover{color:#d62828;background:#fff0f0;border-color:#d62828}.dashboard-user{align-items:center;gap:14px;display:flex}.dashboard-user-info{flex-direction:column;align-items:flex-end;display:flex}.dashboard-user-name{color:#222;font-size:13px;font-weight:800}.dashboard-user-role{color:#d62828;margin-top:3px;font-size:11px;font-weight:700}.dashboard-logout-button{color:#d62828;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:22px;transition:all .15s;display:flex}.logout-overlay{z-index:9999;background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.logout-modal{text-align:center;background:#fff;border-radius:16px;width:360px;padding:30px;box-shadow:0 20px 60px #00000040}.logout-modal h3{color:#222;margin:0 0 25px;font-size:20px;font-weight:800}.logout-actions{justify-content:center;gap:12px;display:flex}.logout-actions button{cursor:pointer;border:0;border-radius:9px;min-width:110px;height:42px;font-size:13px;font-weight:800}.logout-actions button:first-child{color:#555;background:#eee}.logout-actions button:last-child{color:#fff;background:#d62828}.dashboard-user{align-items:center;gap:16px;height:100%;display:flex}.dashboard-user-info{flex-direction:column;justify-content:center;align-items:flex-end;gap:3px;display:flex}.dashboard-user-name{color:#222;font-size:14px;font-weight:800;line-height:1.1}.dashboard-user-role{color:#d62828;font-size:11px;font-weight:700;line-height:1.1}.dashboard-logout-button{color:#d62828;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:22px;display:flex}.dashboard-logout-button:hover{background:#fff5f5;border-color:#d62828}.dashboard-header{justify-content:space-between;align-items:center;height:60px;padding:0 24px;display:flex}.dashboard-user{gap:12px;height:100%;flex-direction:row!important;align-items:center!important;display:flex!important}.dashboard-user-info{flex-direction:column!important;justify-content:center!important;align-items:flex-end!important;display:flex!important}.dashboard-user-name{line-height:16px;font-size:14px!important;font-weight:800!important}.dashboard-user-role{line-height:14px;color:#d62828!important;font-size:11px!important}.dashboard-logout-button{justify-content:center;align-items:center;width:38px;height:38px;margin-left:10px;font-size:22px;display:flex!important}@media (width<=650px){.dashboard-header{gap:10px;height:60px;min-height:60px;padding:0 14px}.dashboard-title{text-overflow:ellipsis;flex:1;min-width:0;font-size:13px;overflow:hidden}.dashboard-user{flex-direction:row!important;flex:none!important;align-items:center!important;gap:8px!important;height:auto!important;display:flex!important}.dashboard-user-info{min-width:0;max-width:130px;flex-direction:column!important;justify-content:center!important;align-items:flex-end!important;gap:2px!important;display:flex!important}.dashboard-user-name{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden;font-size:12px!important;line-height:15px!important}.dashboard-user-role{white-space:nowrap;margin:0!important;font-size:10px!important;line-height:13px!important}.dashboard-logout-button{flex:0 0 34px;width:34px!important;height:34px!important;margin-left:0!important;font-size:20px!important}}.backup-file-input{display:none}.backup-setting-content .settings-secondary-button:disabled{opacity:.55;cursor:default}@media (width<=600px){.backup-settings-grid{grid-template-columns:1fr}.backup-setting-card{width:100%}.backup-setting-content{min-width:0}.backup-setting-content .settings-secondary-button{max-width:100%}}.user-list-item{width:100%}.user-action-icon{cursor:pointer;background:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;padding:0;transition:background .15s,border-color .15s,color .15s,transform .15s;display:flex}.user-action-icon svg{width:17px;height:17px;display:block}.user-action-icon:hover{transform:translateY(-1px)}.user-edit-button{color:#222;border:1px solid #222}.user-edit-button:hover{color:#fff;background:#222}.user-delete-button{color:#d62828;border:1px solid #d62828}.user-delete-button:hover{color:#fff;background:#d62828}.user-current-label{color:#999;white-space:nowrap;font-size:9px;font-weight:800}.user-edit-form{box-sizing:border-box;background:#fafafa;border:1px solid #d8d8d8;border-radius:12px;width:100%;padding:20px}.user-edit-form-title{margin-bottom:18px;font-size:18px;font-weight:700}.user-edit-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.user-edit-field{flex-direction:column;gap:7px;display:flex}.user-edit-field span{font-size:13px;font-weight:600}.user-edit-field input{box-sizing:border-box;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #cfcfcf;border-radius:8px;padding:0 12px}.user-edit-field input:focus{border-color:#222;outline:none}.user-edit-active{align-items:center;gap:9px;margin-top:16px;font-size:14px;font-weight:600;display:flex}.user-edit-active input{width:17px;height:17px}.user-edit-error{color:#a40000;background:#ffe8e8;border-radius:8px;margin-top:14px;padding:10px 12px;font-size:14px}.user-edit-actions{gap:10px;margin-top:18px;display:flex}.user-edit-save-button,.user-edit-cancel-button{cursor:pointer;border:0;border-radius:8px;min-height:40px;padding:0 18px;font-size:13px;font-weight:700}.user-edit-save-button{color:#fff;background:#222}.user-edit-cancel-button{color:#222;background:#e5e5e5}.user-edit-save-button:hover{opacity:.85}.user-edit-cancel-button:hover{background:#d8d8d8}@media (width<=800px){.users-page{padding:24px}.user-form-grid{grid-template-columns:1fr}.user-role-field{max-width:none}.user-list-row{grid-template-columns:1fr 1fr;gap:10px}.user-list-action{justify-content:flex-start}}@media (width<=700px){.user-edit-form-grid{grid-template-columns:1fr}.user-edit-actions{flex-direction:column}.user-edit-save-button,.user-edit-cancel-button{width:100%}}@media (width<=600px){.users-page{padding:18px}.users-page-header h2{font-size:20px}.user-create-card,.users-list-card{padding:17px}.user-list-row{gap:10px}}.app-confirm-modal{box-sizing:border-box;background:#fff;border-radius:14px;width:450px;max-width:100%;padding:28px;box-shadow:0 22px 60px #00000047}.app-confirm-modal h3{margin:0 0 12px;font-size:20px;font-weight:900}@media (width<=600px){.app-confirm-modal{padding:22px}.app-confirm-actions{flex-direction:column-reverse}.app-confirm-actions button{width:100%}}.app-confirm-overlay{z-index:2900;box-sizing:border-box;background:#00000094;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.app-confirm-modal{box-sizing:border-box;text-align:left;background:#fff;border:1px solid #d9d9d9;border-radius:14px;width:450px;max-width:100%;padding:28px;box-shadow:0 22px 60px #00000047}.app-confirm-modal h3{margin:0 0 12px;font-size:20px;font-weight:900;line-height:1.2}.app-confirm-message{color:#555;margin:0;font-size:15px;line-height:1.45}.app-confirm-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.app-confirm-actions button{min-width:100px;min-height:42px;font:inherit;cursor:pointer;border-radius:8px;padding:0 16px;font-weight:800}.app-confirm-cancel{color:#222;background:#fff;border:1px solid #cfcfcf}.app-confirm-submit{color:#fff;background:#b42318;border:1px solid #b42318}@media (width<=600px){.app-confirm-modal{padding:22px}.app-confirm-actions{flex-direction:column-reverse}.app-confirm-actions button{width:100%}}.branches-page{box-sizing:border-box;width:100%;max-width:1100px;margin:0 auto;padding:28px}.branches-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.branches-header h1{color:#15171c;margin:0;font-size:24px;font-weight:800}.branches-header p{color:#777;margin:6px 0 0;font-size:13px}.branches-count{color:#222;background:#f3f4f6;border-radius:10px;justify-content:center;align-items:center;min-width:42px;height:42px;font-size:15px;font-weight:800;display:flex}.branch-create-card{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:14px;margin-bottom:30px;padding:22px;box-shadow:0 8px 24px #0000000d}.branch-create-card h2{color:#202328;margin:0 0 18px;font-size:16px;font-weight:800}.branch-create-form{grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr) auto;align-items:end;gap:14px;display:grid}.branch-form-field{flex-direction:column;gap:6px;min-width:0;display:flex}.branch-form-field label{color:#36393f;font-size:11px;font-weight:700}.branch-form-field input{box-sizing:border-box;color:#15171c;background:#fff;border:1px solid #d1d5db;border-radius:9px;outline:none;width:100%;height:42px;padding:0 12px;font-size:12px;transition:border-color .2s,box-shadow .2s}.branch-form-field input:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.branches-section{margin-bottom:30px}.branches-section-title{align-items:center;gap:10px;margin-bottom:14px;display:flex}.branches-section-title h2{color:#202328;margin:0;font-size:16px;font-weight:800}.branches-section-title span{color:#555;background:#f3f4f6;border-radius:7px;justify-content:center;align-items:center;min-width:25px;height:25px;padding:0 7px;font-size:11px;font-weight:800;display:flex}.branches-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.branch-card{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;width:100%;min-width:0;padding:18px 20px;display:flex;box-shadow:0 4px 14px #00000009}.branch-info{min-width:0;overflow:hidden}.branch-info h3{color:#17191d;text-overflow:ellipsis;margin:0;font-size:14px;font-weight:800;overflow:hidden}.branch-info p{color:#777;text-overflow:ellipsis;margin:5px 0 0;font-size:12px;overflow:hidden}.branch-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.branch-primary-button,.branch-secondary-button{cursor:pointer;box-sizing:border-box;border-radius:8px;min-height:36px;padding:0 13px;font-size:10px;font-weight:800}.branch-primary-button{color:#fff;background:#dc2626;border:none}.branch-primary-button:hover{background:#b91c1c}.branch-secondary-button{color:#333;background:#fff;border:1px solid #d1d5db}.branch-secondary-button:hover{background:#f5f5f5}.branch-action-icon{cursor:pointer;box-sizing:border-box;background:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:background .15s,border-color .15s,color .15s,transform .15s;display:flex}.branch-action-icon svg{width:17px;height:17px;display:block}.branch-action-icon:hover{transform:translateY(-1px)}.branch-edit-button{color:#222;border:1px solid #222}.branch-edit-button:hover{color:#fff;background:#222}.branch-delete-button{color:#d62828;border:1px solid #d62828}.branch-delete-button:hover{color:#fff;background:#d62828}.branch-edit{box-sizing:border-box;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:12px 14px;width:100%;display:grid}.branch-edit .branch-form-field{width:100%;min-width:0}.branch-edit .branch-form-field input{width:100%}.branch-edit .branch-actions{box-sizing:border-box;grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;width:100%;display:flex}.branch-error{color:#b91c1c;background:#fee2e2;border-radius:8px;margin-top:14px;padding:9px 11px;font-size:11px}.branches-empty{color:#888;text-align:center;background:#fafafa;border:1px dashed #d1d5db;border-radius:12px;padding:30px 20px;font-size:12px}@media (width<=760px){.branches-page{padding:18px 14px}.branches-list,.branch-create-form{grid-template-columns:1fr}.branch-create-form .branch-primary-button{width:100%}.branch-card{flex-direction:column;align-items:stretch;padding:16px}.branch-actions{width:100%}.branch-actions button{flex:1}.branch-edit{grid-template-columns:1fr}.branch-edit .branch-actions{grid-column:auto;width:100%}}.groups-page{width:100%;max-width:1100px;margin:0 auto;padding:28px}.groups-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.groups-header h1{color:#15171c;margin:0;font-size:24px;font-weight:800}.groups-header p{color:#777;margin:6px 0 0;font-size:13px}.groups-count{color:#222;background:#f3f4f6;border-radius:10px;justify-content:center;align-items:center;min-width:42px;height:42px;font-size:15px;font-weight:800;display:flex}.group-create-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;margin-bottom:30px;padding:22px;box-shadow:0 8px 24px #0000000d}.group-create-card h2{color:#202328;margin:0 0 18px;font-size:16px;font-weight:800}.group-create-form{grid-template-columns:minmax(170px,.7fr) minmax(180px,1fr) minmax(180px,1fr) auto;align-items:end;gap:14px;display:grid}.group-form-field{flex-direction:column;gap:6px;min-width:0;display:flex}.group-form-field label{color:#36393f;font-size:11px;font-weight:700}.group-form-field input,.group-form-field select{box-sizing:border-box;color:#15171c;background:#fff;border:1px solid #d1d5db;border-radius:9px;outline:none;width:100%;height:42px;padding:0 12px;font-size:12px;transition:border-color .2s,box-shadow .2s}.group-form-field input:focus,.group-form-field select:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.group-time-fields{align-items:center;gap:6px;min-width:0;display:flex}.group-time-fields select{flex:1;min-width:0}.group-time-fields span{color:#555;font-size:14px;font-weight:800}.groups-section{margin-bottom:30px}.groups-section-title{align-items:center;gap:10px;margin-bottom:14px;display:flex}.groups-section-title h2{color:#202328;margin:0;font-size:16px;font-weight:800}.branches-groups-list{column-count:2;column-gap:14px}.branch-groups-block{break-inside:avoid;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:14px;overflow:hidden;box-shadow:0 4px 14px #00000009}.branch-groups-header{color:#17191d;cursor:pointer;text-align:left;background:#fff;border:none;justify-content:space-between;align-items:center;width:100%;min-height:54px;padding:0 18px;display:flex}.branch-groups-header:hover{background:#fafafa}.branch-groups-title{align-items:center;gap:10px;font-size:14px;font-weight:800;display:flex}.branch-chevron{color:#666;justify-content:center;align-items:center;width:20px;height:20px;font-size:18px;font-weight:800;display:flex}.branch-groups-count{color:#555;background:#f3f4f6;border-radius:7px;justify-content:center;align-items:center;min-width:26px;height:26px;padding:0 7px;font-size:11px;font-weight:800;display:flex}.branch-groups-content{border-top:1px solid #f0f0f0;flex-direction:column;gap:8px;padding:0 10px 10px;display:flex}.branch-no-groups{color:#999;text-align:center;padding:18px;font-size:12px}.group-card{background:#fff;border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;gap:20px;padding:15px 10px 7px;display:flex}.group-card:last-child{border-bottom:none}.group-info{min-width:0}.group-info h3{color:#17191d;margin:0 0 6px;font-size:15px;font-weight:800}.group-info p{color:#777;margin:3px 0;font-size:12px}.group-info strong{color:#444}.group-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.group-action-icon{cursor:pointer;background:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:background .15s,border-color .15s,color .15s,transform .15s;display:flex}.group-action-icon svg{width:17px;height:17px;display:block}.group-action-icon:hover{transform:translateY(-1px)}.group-edit-button{color:#222;border:1px solid #222}.group-edit-button:hover{color:#fff;background:#222}.group-delete-button{color:#d62828;border:1px solid #d62828}.group-delete-button:hover{color:#fff;background:#d62828}.group-primary-button,.group-secondary-button{cursor:pointer;border-radius:8px;min-height:36px;padding:0 13px;font-size:10px;font-weight:800}.group-primary-button{color:#fff;background:#dc2626;border:none}.group-primary-button:hover{background:#b91c1c}.group-primary-button:disabled{opacity:.45;cursor:not-allowed}.group-secondary-button{color:#333;background:#fff;border:1px solid #d1d5db}.group-secondary-button:hover{background:#f5f5f5}.group-edit .group-form-field{min-width:0}.group-edit .group-time-fields{align-items:center;gap:6px;width:140px;display:flex}.group-edit>.group-form-field:nth-child(2) select{width:100%}.group-edit .group-actions{grid-column:2;justify-content:flex-start;align-items:center;gap:8px;width:100%;padding-top:0;display:flex}.group-edit{box-sizing:border-box;grid-template-columns:1fr 1fr;align-items:end;gap:12px 14px;width:100%;padding-bottom:8px;display:grid}.group-edit .group-form-field{width:100%;min-width:0}.group-edit .group-time-fields{box-sizing:border-box;align-items:center;gap:6px;width:100%;display:flex}.group-edit .group-time-fields select{box-sizing:border-box;flex:1;width:100%;min-width:0;height:42px;padding:0 8px}.group-edit .group-time-fields span{color:#555;flex:none;font-size:14px;font-weight:800}.group-edit>.group-form-field:nth-child(2),.group-edit>.group-form-field:nth-child(2) select{width:100%}.group-edit>.group-form-field:nth-child(3){grid-column:1;width:100%}.group-edit>.group-form-field:nth-child(3) select{width:100%}.group-edit .group-actions{box-sizing:border-box;grid-column:2;justify-content:flex-start;align-items:center;gap:8px;width:100%;padding:0;display:flex}.group-edit .group-actions button{flex:none}@media (width<=900px){.group-edit{grid-template-columns:1fr 1fr}.group-edit .group-actions{grid-column:2}}@media (width<=650px){.group-edit{grid-template-columns:1fr}.group-edit>.group-form-field:nth-child(3){grid-column:auto}.group-edit .group-actions{grid-column:auto;width:100%}}.groups-warning{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:9px;margin-bottom:14px;padding:12px 14px;font-size:12px}.group-error{color:#b91c1c;background:#fee2e2;border-radius:8px;margin-top:14px;padding:10px 12px;font-size:11px}.groups-empty{color:#888;text-align:center;background:#fafafa;border:1px dashed #d1d5db;border-radius:12px;padding:30px 20px;font-size:12px}.delete-group-description{color:#777;text-align:center;margin:-8px 0 22px;font-size:12px}@media (width<=900px){.groups-page{padding:22px 18px}.group-create-form{grid-template-columns:1fr 1fr}.group-create-form .group-primary-button{width:100%}.group-edit{grid-template-columns:1fr 1fr}.group-edit .group-actions{grid-column:1/-1}}@media (width<=650px){.groups-page{padding:18px 14px}.group-create-form{grid-template-columns:1fr}.group-card{flex-direction:column;align-items:stretch;gap:12px;padding:14px 8px}.group-actions{width:100%}.group-actions button{flex:1}.group-edit{grid-template-columns:1fr}.group-edit .group-actions{grid-column:auto}.branch-groups-header{padding:0 14px}.branch-groups-content{padding-left:8px;padding-right:8px}}.group-save-success{z-index:1000;box-sizing:border-box;text-align:center;background:#fff;border:1px solid #d9d9d9;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:190px;min-height:150px;padding:24px;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 50px #0000002e}.group-save-success-icon{border:3px solid;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:30px;font-weight:900;line-height:1;display:flex}.group-save-success-text{font-size:14px;font-weight:800}.students-page{box-sizing:border-box;width:100%;min-height:100%;padding:28px}.students-search input{box-sizing:border-box;color:#222;background:#fff;border:1px solid #ddd;border-radius:9px;outline:none;width:100%;min-height:44px;padding:0 14px;font-family:inherit;font-size:13px}.students-search input:focus{border-color:#d62828;box-shadow:0 0 0 3px #d6282814}.student-hierarchy{flex-direction:column;gap:0;display:flex}.student-selector-row{flex-direction:column;gap:14px;width:100%;max-width:620px;margin-bottom:24px;display:flex}.student-selector-field{flex-direction:column;gap:6px;display:flex}.student-selector-field label{color:#222;font-size:12px;font-weight:700}.student-selector-field select{box-sizing:border-box;color:#222;background:#fff;border:1px solid #d9d9d9;border-radius:10px;outline:none;width:100%;min-height:44px;padding:0 12px;font-family:inherit;font-size:13px}.student-selector-field select:focus{border-color:#d62828;box-shadow:0 0 0 3px #d6282814}.student-selector-field select:disabled{color:#999;cursor:not-allowed;background:#f3f3f3}.student-hierarchy-card{width:100%}.student-card{box-sizing:border-box;background:#fff;border:1px solid #e7e7e7;border-radius:12px;width:100%;overflow:hidden;box-shadow:0 5px 16px #00000009}.student-card-header{box-sizing:border-box;color:#222;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;width:100%;min-height:58px;padding:10px 16px;font-family:inherit;transition:background .15s;display:flex}.student-card-header:hover{background:#fafafa}.student-card-header-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.student-card-name{color:#222;text-overflow:ellipsis;font-size:14px;font-weight:700;line-height:1.25;overflow:hidden}.student-card-birth-date{color:#666;flex-shrink:0;font-size:12px;font-weight:400}.student-card-arrow{color:#555;flex-shrink:0;font-size:13px;transition:transform .2s}.student-card-content{border-top:1px solid #eee;padding:0 16px 16px}.student-card-row{flex-direction:column;gap:4px;padding-top:12px;display:flex}.student-card-row-label{color:#999;text-transform:uppercase;font-size:10px;font-weight:700}.student-card-row-value{color:#333;font-size:13px;line-height:1.35}.student-card-edit-button{color:#555;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:7px;align-self:flex-start;min-height:30px;margin-top:4px;padding:0 10px;font-family:inherit;font-size:10px;font-weight:800;transition:background .15s,border-color .15s,color .15s}.student-card-edit-button:hover{color:#222;background:#f5f5f5;border-color:#ccc}.student-card-description{margin-top:14px}.student-card-description-text{color:#555;white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f2f4;border-radius:9px;margin-top:5px;padding:10px 12px;font-size:12px;font-style:italic;line-height:1.4}.student-group-assignment{flex-direction:column;gap:10px;margin-top:14px;display:flex}.student-group-edit-button{box-sizing:border-box;color:#333;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;min-height:38px;padding:0 12px;font-family:inherit;font-size:11px;font-weight:700;transition:background .15s,border-color .15s}.student-group-edit-button:hover{background:#f5f5f5;border-color:#aaa}.student-group-edit{flex-direction:column;gap:10px;display:flex}.student-group-edit .student-card-detail{flex-direction:column;gap:5px;display:flex}.student-group-edit select,.student-group-edit input[type=date]{box-sizing:border-box;color:#222;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;min-height:40px;padding:0 10px;font-family:inherit;font-size:12px}.student-group-edit select:focus,.student-group-edit input[type=date]:focus{border-color:#d62828;box-shadow:0 0 0 3px #d6282814}.student-group-edit-actions{gap:8px;display:flex}.student-group-save-button,.student-group-cancel-button{cursor:pointer;border-radius:8px;flex:1;min-height:38px;font-family:inherit;font-size:11px;font-weight:700}.student-group-save-button{color:#fff;background:#d62828;border:0}.student-group-save-button:hover{background:#c51f1f}.student-group-cancel-button{color:#333;background:#fff;border:1px solid #d1d5db}.student-group-cancel-button:hover{background:#f5f5f5}.student-card-statistics-button-wrapper{margin-top:12px}.student-card-statistics-button{color:#fff;cursor:pointer;background:#222;border:0;border-radius:8px;width:100%;min-height:40px;padding:0 12px;font-family:inherit;font-size:11px;font-weight:800;transition:opacity .15s}.student-card-statistics-button:hover{opacity:.9}.student-card-footer{margin-top:8px}.student-card-archive-button{color:#555;cursor:pointer;background:#eee;border:0;border-radius:8px;width:100%;min-height:40px;padding:0 12px;font-family:inherit;font-size:10px;font-weight:800;transition:background .15s,color .15s}.student-card-archive-button:hover{color:#222;background:#e5e5e5}.student-card-edit-form{flex-direction:column;gap:10px;padding-top:14px;display:flex}.student-card-edit-form label{flex-direction:column;gap:6px;display:flex}.student-card-edit-form label>span{color:#555;font-size:11px;font-weight:700}.student-card-edit-form input,.student-card-edit-form textarea{box-sizing:border-box;color:#222;background:#fff;border:1px solid #ddd;border-radius:8px;outline:none;width:100%;padding:0 12px;font-family:inherit;font-size:13px}.student-card-edit-form input{min-height:40px}.student-card-edit-form textarea{resize:vertical;min-height:90px;padding-top:10px;padding-bottom:10px;font-style:italic;line-height:1.4}.student-card-edit-form input:focus,.student-card-edit-form textarea:focus{border-color:#d62828;box-shadow:0 0 0 3px #d6282814}.student-card-edit-form small{color:#888;text-align:right;margin-top:-3px;font-size:10px;display:block}.student-card-edit-title{color:#222;font-size:13px;font-weight:800}.student-card-error{color:#d62828;background:#fff0f0;border-radius:7px;padding:9px 10px;font-size:11px;font-weight:600}.student-card-edit-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:2px;display:grid}.student-card-save-button,.student-card-cancel-button{cursor:pointer;border-radius:8px;min-height:38px;font-family:inherit;font-size:10px;font-weight:800}.student-card-save-button{color:#fff;background:#d62828;border:0}.student-card-save-button:hover{background:#c51f1f}.student-card-cancel-button{color:#555;background:#eee;border:0}.student-card-cancel-button:hover{color:#222;background:#e5e5e5}.student-create-form{box-sizing:border-box;background:#fff;border:1px solid #e8e8e8;border-radius:14px;width:100%;max-width:620px;padding:24px;box-shadow:0 8px 24px #0000000a}.student-form-field input,.student-form-field textarea{box-sizing:border-box;color:#222;background:#fff;border:1px solid #ddd;border-radius:9px;outline:none;width:100%;font-family:inherit;font-size:13px}.student-form-field input{min-height:44px;padding:0 13px}.student-form-field textarea{resize:vertical;min-height:100px;padding:12px;font-style:italic;line-height:1.4}.student-form-field input:focus,.student-form-field textarea:focus{border-color:#d62828;box-shadow:0 0 0 3px #d6282814}.student-form-date-input{min-height:44px;padding:0 12px}.student-form-description{min-height:100px;padding:12px;font-style:italic}.student-description-counter{color:#888;text-align:right;margin-top:5px;font-size:12px;display:block}.student-statistics-day-number{box-sizing:border-box;color:#000;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.student-modal-overlay{z-index:10000;box-sizing:border-box;background:#00000059;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.student-modal{box-sizing:border-box;text-align:center;background:#fff;border-radius:16px;width:min(360px,100%);padding:28px;box-shadow:0 20px 60px #00000040}.student-modal-title{color:#222;margin-bottom:12px;font-size:18px;font-weight:800}.student-modal-text{color:#666;margin-bottom:22px;font-size:13px}.student-modal-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.student-modal-actions button{cursor:pointer;border:0;border-radius:8px;min-height:40px;font-family:inherit;font-size:11px;font-weight:800}.student-modal-cancel{color:#555;background:#eee}.student-modal-cancel:hover{background:#e5e5e5}.student-modal-confirm{color:#fff;background:#d62828}.student-modal-confirm:hover{background:#c51f1f}@media (width<=800px){.student-statistics-overlay{padding:10px}.student-statistics-modal{max-height:calc(100vh - 20px);padding:16px}.student-statistics-content{grid-template-columns:1fr}.student-statistics-filters{flex-direction:column}.student-statistics-filters select{width:100%}.student-statistics-period{flex-wrap:wrap}.student-statistics-period input{width:135px}.student-statistics-calendar-day{min-height:38px}}@media (width<=700px){.students-page{padding:18px}.students-grid,.student-card-edit-actions{grid-template-columns:1fr}}.student-create-form{box-sizing:border-box;background:#fff;border:1px solid #e3e3e3;border-radius:16px;flex-direction:column;gap:18px;width:min(100%,620px);padding:28px;display:flex;box-shadow:0 8px 24px #0000000d}.student-form-field{flex-direction:column;gap:7px;display:flex}.student-form-field label{color:#222;font-size:12px;font-weight:700;line-height:1.2}.student-form-field input,.student-form-field select,.student-form-field textarea{box-sizing:border-box;color:#171717;background:#fff;border:1px solid #d9d9d9;border-radius:10px;outline:none;width:100%;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.student-form-field input,.student-form-field select{height:40px;padding:0 13px}.student-form-field textarea{resize:vertical;min-height:96px;padding:11px 13px;line-height:1.45}.student-form-field input::placeholder,.student-form-field textarea::placeholder{color:#9b9b9b}.student-form-field input:focus,.student-form-field select:focus,.student-form-field textarea:focus{border-color:#bdbdbd;box-shadow:0 0 0 3px #dc222714}.student-form-field select{cursor:pointer;appearance:auto}.student-form-field select:disabled{color:#999;cursor:not-allowed;background:#f1f1f1}.student-form-date-input{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.student-form-description{font-style:italic}.student-description-counter{color:#999;align-self:flex-end;margin-top:-2px;font-size:11px}.student-form-error{color:#c92127;background:#fff3f3;border:1px solid #f0b9bb;border-radius:9px;padding:11px 13px;font-size:13px;font-weight:600}.student-primary-button{color:#fff;cursor:pointer;background:#df2429;border:0;border-radius:9px;align-self:flex-start;min-height:40px;padding:0 18px;font-family:inherit;font-size:12px;font-weight:800;transition:background .15s,transform .15s}.student-primary-button:hover{background:#c91f24}.student-primary-button:active{transform:translateY(1px)}#student-branch,#student-group{appearance:auto}@media (width<=650px){.student-create-form{border-radius:14px;width:100%;padding:20px}.student-primary-button{width:100%}}.attendance-student-payment-overdue{color:#d62828!important;font-weight:900!important}@media (width<=600px){.student-statistics-share-row{justify-content:stretch}.student-statistics-share-button{width:100%;height:42px;font-size:11px}}.student-statistics-share-row{justify-content:flex-end;margin:0 0 14px;display:flex}.student-statistics-share-button{color:#fff;letter-spacing:.03em;cursor:pointer;background:#d62828;border:0;border-radius:8px;min-width:150px;height:38px;padding:0 16px;font-family:inherit;font-size:10px;font-weight:800;transition:background .15s,transform .1s}.student-statistics-share-button:hover{background:#b91c1c}.student-statistics-share-button:active{transform:scale(.98)}.student-statistics-share-button:disabled{opacity:.55;cursor:wait}.student-statistics-share-error{color:#b91c1c;text-align:center;background:#fee2e2;border-radius:7px;margin:-4px 0 14px;padding:9px 10px;font-size:10px;font-weight:700}@media (width<=600px){.student-statistics-share-row{justify-content:stretch}.student-statistics-share-button{width:100%;height:42px;font-size:11px}}.attendance-filters{align-items:flex-end;gap:14px;margin-bottom:18px;display:flex}.attendance-filter{flex-direction:column;gap:6px;min-width:190px;display:flex}.attendance-filter label{color:#777;font-size:10px;font-weight:800}.attendance-filter select{color:#222;cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #dedede;border-radius:8px;outline:none;width:100%;min-height:40px;padding:0 34px 0 12px;font-family:inherit;font-size:12px;font-weight:700}.attendance-filter select:focus{border-color:#bbb}.attendance-filter select:disabled{color:#aaa;cursor:default;background:#f5f5f5}.attendance-group-info{box-sizing:border-box;background:#fafafa;border:1px solid #e5e5e5;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;padding:12px 14px;display:flex}.attendance-group-name{color:#222;font-size:13px;font-weight:800}.attendance-trainer{color:#777;font-size:12px}.attendance-trainer strong{color:#222}.attendance-empty-state{color:#999;background:#fff;border:1px solid #e5e5e5;border-radius:12px;justify-content:center;align-items:center;min-height:120px;font-size:13px;display:flex}.attendance-student-header,.attendance-student-cell{box-sizing:border-box;text-align:left;width:170px;min-width:170px;max-width:170px;position:sticky;left:0;padding:0 14px!important}.attendance-student-header{z-index:5;color:#222;background:#f7f7f7;font-size:12px;font-weight:800;border-right:1px solid #c4c4c4!important}.attendance-student-cell{z-index:3;color:#222;background:#fff;font-size:12px;font-weight:700;border-right:1px solid #c4c4c4!important}.attendance-day-header{color:#222;text-align:center;white-space:nowrap;background:#f7f7f7;width:44px;min-width:44px;max-width:44px;font-size:11px;font-weight:800;border-bottom:1px solid #c4c4c4!important;border-right:1px solid #cfcfcf!important}.attendance-cell{box-sizing:border-box;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;width:44px;min-width:44px;max-width:44px;height:44px;position:relative;border-bottom:1px solid #d0d0d0!important;border-right:1px solid #d0d0d0!important}.attendance-cell-content{color:#222;justify-content:center;align-items:center;width:100%;height:100%;font-size:14px;font-weight:800;display:flex}.attendance-cell-disabled{cursor:default!important;background:#eee!important;border-bottom:1px solid #d0d0d0!important;border-right:1px solid #d0d0d0!important}@keyframes attendance-menu-show{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.attendance-empty-cell{color:#999;text-align:center;font-size:12px;font-weight:600;height:70px!important;padding:0 16px!important}@media (width<=700px){.attendance-page{padding:18px}.attendance-filters{flex-direction:column;align-items:stretch}.attendance-filter{width:100%;min-width:0}.attendance-group-info{flex-direction:column;align-items:flex-start;gap:6px}.attendance-student-header,.attendance-student-cell{width:145px;min-width:145px;max-width:145px;padding:0 10px!important}.attendance-day-header,.attendance-cell{width:40px;min-width:40px;max-width:40px}.attendance-cell,.attendance-cell-disabled{height:40px}.attendance-menu{width:170px;position:fixed;top:auto;left:50%;transform:translate(-50%)}}.payments-page{box-sizing:border-box;width:100%;min-height:100%}.payments-page-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.payments-page-header h1{color:#171717;letter-spacing:-.03em;margin:0;font-size:24px;font-weight:900;line-height:1.1}.payments-page-header p{color:#777;margin:7px 0 0;font-size:13px;line-height:1.4}.payments-list{flex-direction:column;gap:12px;display:flex}.payment-date-group{box-sizing:border-box;background:#fff;border:1px solid #e4e4e4;border-radius:12px;width:100%;padding:15px 16px 16px;box-shadow:0 3px 12px #00000009}.payment-date-header{justify-content:space-between;align-items:center;min-height:38px;margin-bottom:12px;display:flex}.payment-date-badge{align-items:baseline;gap:6px;display:inline-flex}.payment-date-day{color:#171717;letter-spacing:-.02em;font-size:18px;font-weight:900;line-height:1}.payment-date-month{color:#777;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800;line-height:1}.payment-date-count{color:#a0a0a0;font-size:11px;font-weight:700;line-height:1}.payment-date-students{flex-wrap:wrap;gap:8px;display:flex}.payment-student-button{color:#222;cursor:pointer;background:#fafafa;border:1px solid #ddd;border-radius:8px;align-items:center;gap:9px;min-height:38px;padding:0 12px 0 14px;font-family:inherit;font-size:12px;font-weight:800;line-height:1;transition:background .15s,border-color .15s,box-shadow .15s,transform .1s;display:inline-flex}.payment-student-button:hover{background:#fff;border-color:#c8c8c8;transform:translateY(-1px);box-shadow:0 4px 10px #0000000f}.payment-student-button:active{transform:translateY(0)}.payment-student-button-name{white-space:nowrap;display:block}.payment-student-button-arrow{color:#999;justify-content:center;align-items:center;width:16px;height:16px;font-size:16px;font-weight:400;line-height:1;transition:color .15s,transform .15s;display:inline-flex}.payment-student-button:hover .payment-student-button-arrow{color:#222;transform:translate(2px)}.payment-student-button.overdue{color:#d62828;background:#fff7f7;border-color:#f0c4c4}.payment-student-button.overdue:hover{background:#fff1f1;border-color:#e5a4a4;box-shadow:0 4px 12px #d6282814}.payment-student-button.overdue .payment-student-button-arrow{color:#d62828}.payments-empty{box-sizing:border-box;color:#999;text-align:center;background:#fff;border:1px solid #e4e4e4;border-radius:12px;justify-content:center;align-items:center;min-height:180px;padding:30px;font-size:13px;font-weight:700;display:flex}.payment-modal-overlay{z-index:1000;box-sizing:border-box;-webkit-backdrop-filter:blur(3px);background:#1414146b;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.payment-modal{box-sizing:border-box;background:#fff;border:1px solid #e2e2e2;border-radius:16px;width:min(460px,100%);max-height:calc(100vh - 48px);animation:.16s ease-out payment-modal-appear;overflow-y:auto;box-shadow:0 20px 60px #0000002e}@keyframes payment-modal-appear{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.payment-modal-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 20px 17px;display:flex}.payment-modal-title{color:#171717;font-size:17px;font-weight:900;line-height:1.3}.payment-modal-status{color:#777;letter-spacing:.06em;margin-top:6px;font-size:10px;font-weight:800;line-height:1.2}.payment-modal-status.today{color:#c88700}.payment-modal-status.overdue{color:#d62828}.payment-modal-close{color:#555;cursor:pointer;background:#f3f3f3;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-family:inherit;font-size:22px;font-weight:400;line-height:1;transition:background .15s,color .15s;display:flex}.payment-modal-close:hover{color:#171717;background:#e9e9e9}.payment-modal-content{padding:20px}.payment-modal-field{flex-direction:column;gap:7px;display:flex}.payment-modal-field label{color:#666;letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:800;line-height:1.2}.payment-modal-field input{box-sizing:border-box;color:#222;background:#fff;border:1px solid #d9d9d9;border-radius:9px;outline:none;width:100%;height:44px;padding:0 13px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .15s,box-shadow .15s}.payment-modal-field input:focus{border-color:#d62828;box-shadow:0 0 0 3px #d6282814}.payment-modal-hint{color:#999;font-size:10px;line-height:1.3}.payment-modal-current{color:#777;background:#f5f5f5;border-radius:8px;margin-top:14px;padding:11px 12px;font-size:11px;line-height:1.4}.payment-modal-current strong{color:#222;font-weight:800}.payment-modal-error{color:#d62828;background:#fff2f2;border-radius:8px;margin-top:12px;padding:10px 12px;font-size:11px;font-weight:700;line-height:1.4}.payment-modal-actions{flex-direction:column;gap:8px;margin-top:18px;display:flex}.payment-modal-actions button{letter-spacing:.04em;cursor:pointer;border-radius:8px;width:100%;min-height:42px;font-family:inherit;font-size:10px;font-weight:900;line-height:1;transition:background .15s,border-color .15s,color .15s,transform .1s}.payment-modal-actions button:active{transform:translateY(1px)}.payment-modal-actions button:disabled{opacity:.55;cursor:default;transform:none}.payment-modal-save-button{color:#fff;background:#d62828;border:1px solid #d62828}.payment-modal-save-button:hover:not(:disabled){background:#c51f2f;border-color:#c51f2f}.payment-modal-paid-button{color:#fff;background:#222;border:1px solid #222}.payment-modal-paid-button:hover:not(:disabled){background:#111;border-color:#111}.payment-modal-cancel-button{color:#555;background:#f3f3f3;border:1px solid #ddd}.payment-modal-cancel-button:hover:not(:disabled){color:#222;background:#e9e9e9}@media (width<=700px){.payments-page-header{margin-bottom:18px}.payments-page-header h1{font-size:22px}.payment-date-group{padding:13px}.payment-date-header{margin-bottom:10px}.payment-date-day{font-size:17px}.payment-date-students{gap:7px}.payment-student-button{min-height:36px;padding-left:12px;padding-right:10px;font-size:11px}.payment-modal-overlay{align-items:flex-end;padding:12px}.payment-modal{border-radius:14px;width:100%;max-height:calc(100vh - 24px)}.payment-modal-header{padding:17px 16px 15px}.payment-modal-content{padding:16px}.payment-modal-title{font-size:15px}}@media (width<=800px){.student-statistics-overlay{padding:10px}.student-statistics-modal{max-height:calc(100vh - 20px);padding:16px}.student-statistics-content{grid-template-columns:1fr}.student-statistics-filters{flex-direction:column}.student-statistics-filters select{width:100%}.student-statistics-period{flex-wrap:wrap}.student-statistics-period input{width:135px}.student-statistics-calendar-day{min-height:38px}}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0}body{color:#151515;background:#f3f4f6;height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}@media (width<=380px){.dashboard-header{padding:0 8px}.dashboard-title{font-size:10px}.dashboard-user{min-width:75px}.dashboard-user-role{font-size:7px}.dashboard-user-name{max-width:80px;font-size:9px}.dashboard-layout{grid-template-columns:68px minmax(0,1fr)}.navigation-item{font-size:8px}}.settings-layout{background:#fff;width:100%;min-height:100%}.settings-content{background:#fff;width:100%;min-width:0;min-height:100%}.settings-content-page{width:100%;min-height:100%;padding:32px}.settings-content-header{margin-bottom:26px}.settings-content-header h2{color:#202020;margin:0 0 7px;font-size:24px;font-weight:800}.settings-content-header p{color:#888;margin:0;font-size:13px}.settings-sidebar-menu{width:100%}.settings-navigation{position:relative}.settings-navigation-title{flex:1}.settings-arrow{margin-left:auto;font-size:11px;transition:transform .2s}.settings-arrow.open{transform:rotate(180deg)}.settings-sidebar-submenu{flex-direction:column;gap:4px;margin-top:4px;padding-left:20px;display:flex}.settings-sidebar-submenu-item{color:#666;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;min-height:36px;padding:8px 12px;font-family:inherit;font-size:11px;font-weight:700;line-height:1.2;transition:background .15s,color .15s}.settings-sidebar-submenu-item:hover{color:#222;background:#f3f3f3}.settings-sidebar-submenu-item.active{color:#fff;background:#d62828;box-shadow:0 4px 10px #d6282824}.settings-form-card{background:#fff;border:1px solid #e7e7e7;border-radius:14px;width:min(620px,100%);padding:26px;box-shadow:0 4px 14px #00000009}.settings-form-field{flex-direction:column;gap:7px;margin-bottom:18px;display:flex}.settings-form-field label{color:#444;font-size:12px;font-weight:750}.settings-form-field input{color:#222;background:#fff;border:1px solid #dcdcdc;border-radius:9px;outline:none;width:100%;height:44px;padding:0 13px}.settings-form-field input:focus{border-color:#d62828;box-shadow:0 0 0 3px #d6282814}.settings-form-field input::placeholder{color:#aaa}.settings-primary-button{color:#fff;letter-spacing:.05em;cursor:pointer;background:#d62828;border:0;border-radius:9px;height:44px;padding:0 22px;font-size:11px;font-weight:800;transition:background .15s,transform .15s}.settings-primary-button:hover{background:#c51f1f}.settings-primary-button:active{transform:translateY(1px)}.settings-message{border-radius:8px;margin-bottom:18px;padding:10px 12px;font-size:12px}.settings-message.success{color:#27853f;background:#edf8f0}.settings-message.error{color:#c62828;background:#fff0f0}.attendance-status-setting{border-bottom:1px solid #eee;align-items:center;gap:16px;padding:17px 0;display:flex}.attendance-status-setting:first-child{padding-top:0}.attendance-status-symbol{background:#f5f5f5;border-radius:10px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;font-weight:800;display:flex}.attendance-status-symbol.present{color:#27853f}.attendance-status-symbol.absent{color:#d62828}.attendance-status-symbol.sick{color:#d08a00}.attendance-status-name{color:#222;margin-bottom:3px;font-size:14px;font-weight:750}.attendance-status-description{color:#888;font-size:12px;line-height:1.4}.attendance-empty-status{color:#888;align-items:center;gap:16px;padding-top:18px;display:flex}.attendance-empty-status>span{text-align:center;flex:0 0 44px;font-size:18px}.backup-settings-grid{grid-template-columns:repeat(2,minmax(260px,1fr));gap:18px;width:100%;display:grid}.backup-setting-card{background:#fff;border:1px solid #e6e6e6;border-radius:14px;align-items:flex-start;gap:16px;min-width:0;padding:22px;display:flex;box-shadow:0 4px 14px #00000009}.backup-setting-icon{background:#f4f4f4;border-radius:11px;flex:0 0 46px;justify-content:center;align-items:center;width:46px;height:46px;font-size:21px;display:flex}.backup-setting-content{min-width:0}.backup-setting-content h3{color:#222;margin:0 0 7px;font-size:14px;font-weight:800;line-height:1.35}.backup-setting-content p{color:#888;margin:0 0 16px;font-size:12px;line-height:1.45}@media (width<=800px){.settings-content-page{padding:24px}.backup-settings-grid{grid-template-columns:1fr}}@media (width<=600px){.settings-content-page{padding:18px}.settings-content-header h2{font-size:20px}.backup-setting-card{padding:17px}.settings-sidebar-submenu{padding-left:4px}}.users-page{width:100%;min-height:100%;padding:32px}.users-page-header{margin-bottom:26px}.users-page-header h2{color:#202020;margin:0 0 7px;font-size:24px;font-weight:800}.users-page-header p{color:#888;margin:0;font-size:13px}.user-create-card{background:#fff;border:1px solid #e7e7e7;border-radius:14px;width:100%;margin-bottom:24px;padding:24px;box-shadow:0 4px 14px #00000009}.user-section-header{margin-bottom:20px}.user-section-header h3{color:#222;margin:0 0 6px;font-size:16px;font-weight:800}.user-section-header p{color:#888;margin:0;font-size:12px}.user-form-grid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:16px;margin-bottom:18px;display:grid}.user-role-field{max-width:calc(50% - 8px)}.user-form-field{flex-direction:column;gap:7px;display:flex}.user-form-field label{color:#444;font-size:12px;font-weight:750}.user-form-field input,.user-form-field select{color:#222;background:#fff;border:1px solid #dcdcdc;border-radius:9px;outline:none;width:100%;height:44px;padding:0 13px}.user-form-field input:focus,.user-form-field select:focus{border-color:#d62828;box-shadow:0 0 0 3px #d6282814}.user-form-message{border-radius:8px;margin-bottom:16px;padding:10px 12px;font-size:12px}.user-form-message.success{color:#27853f;background:#edf8f0}.user-form-message.error{color:#c62828;background:#fff0f0}.users-list-card{background:#fff;border:1px solid #e7e7e7;border-radius:14px;width:100%;padding:24px;box-shadow:0 4px 14px #00000009}.users-list{border-top:1px solid #eee;flex-direction:column;display:flex}.user-list-row{border-bottom:1px solid #eee;grid-template-columns:minmax(180px,1.5fr) minmax(130px,1fr) 120px 170px;align-items:center;gap:18px;min-height:72px;padding:12px 0;display:grid}.user-list-main{min-width:0}.user-list-name{color:#222;margin-bottom:4px;font-size:14px;font-weight:750}.user-list-login{color:#999;font-size:11px}.user-list-role{color:#555;font-size:12px;font-weight:650}.user-list-status{font-size:11px;font-weight:750}.user-list-status.active{color:#27853f}.user-list-status.blocked{color:#c62828}.user-list-action{justify-content:flex-end;display:flex}.user-block-button,.user-unblock-button{letter-spacing:.02em;cursor:pointer;border-radius:7px;min-height:34px;padding:0 11px;font-size:9px;font-weight:800}.user-block-button{color:#d62828;background:#fff;border:1px solid #d62828}.user-block-button:hover{color:#fff;background:#d62828}.user-unblock-button{color:#27853f;background:#fff;border:1px solid #27853f}.user-unblock-button:hover{color:#fff;background:#27853f}.user-current-label{color:#999;font-size:9px;font-weight:800}@media (width<=800px){.users-page{padding:24px}.user-form-grid{grid-template-columns:1fr}.user-list-row{grid-template-columns:1fr 1fr}.user-list-action{justify-content:flex-start}}@media (width<=600px){.users-page{padding:18px}.users-page-header h2{font-size:20px}.user-create-card,.users-list-card{padding:17px}.user-list-row{gap:10px}}.user-list-action{justify-content:flex-end;align-items:center;gap:8px;display:flex}.user-delete-button{color:#000;cursor:pointer;background:#fff;border:1px solid #d62828;border-radius:7px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:15px;transition:background .15s,border-color .15s,color .15s;display:flex}.user-delete-button:hover{color:#d62828;background:#fff0f0;border-color:#d62828}.students-sidebar-menu{width:100%}.students-navigation{position:relative}.students-navigation-title{flex:1}.students-arrow{margin-left:auto;font-size:11px;transition:transform .2s}.students-arrow.open{transform:rotate(180deg)}.students-sidebar-submenu{flex-direction:column;gap:4px;margin-top:4px;padding-left:20px;display:flex}.students-sidebar-submenu-item{color:#666;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;min-height:36px;padding:8px 12px;font-family:inherit;font-size:11px;font-weight:700;line-height:1.2;transition:background .15s,color .15s}.students-sidebar-submenu-item:hover{color:#222;background:#f3f3f3}.students-sidebar-submenu-item.active{color:#fff;background:#d62828;box-shadow:0 4px 10px #d6282824}.students-page{width:100%;min-height:100%;padding:28px}.students-page-header{margin-bottom:24px}.students-page-header h1{color:#222;margin:0 0 6px;font-size:24px;font-weight:800}.students-page-header p{color:#888;margin:0;font-size:13px}.student-create-form{background:#fff;border:1px solid #e8e8e8;border-radius:14px;width:100%;max-width:620px;padding:24px;box-shadow:0 8px 24px #0000000a}.student-form-field{flex-direction:column;gap:7px;margin-bottom:18px;display:flex}.student-form-field label{color:#333;font-size:12px;font-weight:700}.student-form-field input{color:#222;box-sizing:border-box;background:#fff;border:1px solid #ddd;border-radius:9px;outline:none;width:100%;min-height:44px;padding:0 13px;font-family:inherit;font-size:13px}.student-form-field input:focus{border-color:#d62828}.student-form-error{color:#d62828;margin-bottom:16px;font-size:12px;font-weight:600}.student-primary-button{color:#fff;cursor:pointer;background:#d62828;border:0;border-radius:9px;min-height:44px;padding:0 20px;font-family:inherit;font-size:12px;font-weight:800}.student-primary-button:hover{opacity:.92}.students-search{width:100%;max-width:620px;margin-bottom:20px}.students-search input{color:#222;box-sizing:border-box;background:#fff;border:1px solid #ddd;border-radius:9px;outline:none;width:100%;min-height:44px;padding:0 14px;font-family:inherit;font-size:13px}.students-search input:focus{border-color:#d62828}.students-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.students-column{flex-direction:column;gap:12px;min-width:0;display:flex}.student-card{background:#fff;border:1px solid #e7e7e7;border-radius:12px;overflow:hidden;box-shadow:0 5px 16px #00000009}.student-card-open{border-color:#ddd}.student-card-header{color:#222;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:58px;padding:0 16px;font-family:inherit;display:flex}.student-card-name{font-size:14px;font-weight:700}.student-card-arrow{font-size:11px;transition:transform .2s}.student-card-arrow.open{transform:rotate(180deg)}.student-card-details{border-top:1px solid #eee;padding:0 16px 16px}.student-card-detail{flex-direction:column;gap:4px;padding:12px 0;display:flex}.student-card-detail span{color:#999;text-transform:uppercase;font-size:10px;font-weight:700}.student-card-detail strong{color:#333;font-size:13px}.student-statistics-button{color:#fff;cursor:pointer;background:#222;border:0;border-radius:8px;width:100%;min-height:40px;margin-top:4px;font-family:inherit;font-size:11px;font-weight:800}.student-statistics-button:hover{opacity:.9}.students-empty{color:#999;text-align:center;border:1px dashed #ddd;border-radius:12px;padding:50px 20px;font-size:13px}.student-card-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:4px;display:grid}.student-card-actions .student-statistics-button{margin-top:0}.student-archive-button,.student-restore-button{color:#555;cursor:pointer;background:#eee;border:0;border-radius:8px;width:100%;min-height:40px;font-family:inherit;font-size:10px;font-weight:800}.student-archive-button:hover,.student-restore-button:hover{color:#222;background:#e5e5e5}@media (width<=700px){.students-grid,.student-card-actions{grid-template-columns:1fr}}.attendance-sidebar-menu{width:100%}.attendance-navigation{position:relative}.attendance-navigation-title{flex:1}.attendance-arrow{margin-left:auto;font-size:11px;transition:transform .2s}.attendance-arrow.open{transform:rotate(180deg)}.attendance-sidebar-submenu{flex-direction:column;gap:4px;margin-top:4px;padding-left:20px;display:flex}.attendance-year-block{width:100%}.attendance-year-item{color:#555;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;width:100%;min-height:34px;padding:7px 12px;font-family:inherit;font-size:11px;font-weight:800;display:flex}.attendance-year-item:hover{color:#222;background:#f3f3f3}.attendance-year-item.active{color:#222}.attendance-month-list{flex-direction:column;gap:2px;padding:2px 0 4px 16px;display:flex}.attendance-month-item{color:#777;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;width:100%;min-height:32px;padding:7px 10px;font-family:inherit;font-size:10px;font-weight:700}.attendance-month-item:hover{color:#222;background:#f3f3f3}.attendance-month-item.active{color:#fff;background:#d62828;box-shadow:0 4px 10px #d6282824}.attendance-page{box-sizing:border-box;width:100%;min-height:100%;padding:28px}.attendance-page-header{margin-bottom:20px}.attendance-page-header h1{color:#222;margin:0 0 6px;font-size:24px;font-weight:800}.attendance-page-header p{color:#888;margin:0;font-size:13px}.attendance-table-wrapper{background:#fff;border:1px solid #e5e5e5;border-radius:12px;width:100%;overflow:auto visible}.attendance-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.attendance-table th,.attendance-table td{box-sizing:border-box;border-bottom:1px solid #e8e8e8;border-right:1px solid #e8e8e8;height:44px;padding:0}.attendance-table th:last-child,.attendance-table td:last-child{border-right:0}.attendance-table tbody tr:last-child td{border-bottom:0}.attendance-student-column{z-index:3;text-align:left;background:#fff;width:170px;min-width:170px;max-width:170px;position:sticky;left:0;padding:0 14px!important}.attendance-table thead .attendance-student-column{z-index:5;background:#f7f7f7}.attendance-day-column{color:#555;text-align:center;background:#f7f7f7;width:44px;min-width:44px;font-size:11px;font-weight:800}.attendance-student-last-name{color:#222;font-size:12px;font-weight:700;display:inline}.attendance-student-initials{color:#555;margin-left:4px;font-size:12px;font-weight:700;display:inline}.attendance-cell{text-align:center;background:#fff;width:44px;min-width:44px}@media (width<=700px){.attendance-page{padding:18px}.attendance-student-column{width:145px;min-width:145px;max-width:145px;padding:0 10px!important}.attendance-day-column,.attendance-cell{width:40px;min-width:40px}}.attendance-cell{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.attendance-cell:hover{background:#f7f7f7}.attendance-cell-content{color:#222;justify-content:center;align-items:center;width:100%;height:100%;font-size:14px;font-weight:800;display:flex;position:relative}.attendance-status-present{background:#f0f8f0}.attendance-status-absent{background:#fff5f5}.attendance-status-sick{background:#fffaf0}.attendance-status-present .attendance-cell-content{color:#248a3d}.attendance-status-absent .attendance-cell-content{color:#d62828}.attendance-status-sick .attendance-cell-content{color:#d28a00}.attendance-menu{z-index:9999;box-sizing:border-box;background:#fff;border:1px solid #e5e5e5;border-radius:12px;width:150px;padding:8px;animation:.12s ease-out attendance-menu-show;position:fixed;box-shadow:0 12px 35px #00000029}.attendance-menu button{color:#333;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:38px;padding:7px 9px;font-family:inherit;font-size:10px;font-weight:800;display:flex}.attendance-menu button:hover{background:#f5f5f5}.attendance-menu-mark{background:#f3f3f3;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:900;display:flex}.attendance-menu-mark.present{color:#248a3d}.attendance-menu-mark.absent{color:#d62828}.attendance-menu-mark.sick{color:#d28a00}.attendance-menu-mark.clear{color:#777}.attendance-menu-present{color:#248a3d!important}.attendance-menu-absent{color:#d62828!important}.attendance-menu-sick{color:#d28a00!important}.attendance-menu-cancel{margin-top:5px;color:#888!important;border-top:1px solid #eee!important;border-radius:0!important;justify-content:center!important}@media (width<=700px){.attendance-menu{width:170px;position:fixed;top:auto;left:50%;transform:translate(-50%)}}.attendance-today-column{border-left:3px solid #d62828!important;border-right:3px solid #d62828!important}.attendance-table thead .attendance-today-column{border-top:3px solid #d62828!important}.attendance-table tbody tr:last-child .attendance-today-column{border-bottom:3px solid #d62828!important}.attendance-cell-disabled{color:#b5b5b5;cursor:default!important;background:#eee!important}.attendance-cell-disabled:hover{background:#eee!important}.attendance-cell-disabled .attendance-cell-content{color:#b5b5b5;cursor:default}.student-statistics-overlay{z-index:10000;box-sizing:border-box;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1414146b;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.student-statistics-modal{box-sizing:border-box;background:#fff;border-radius:12px;width:min(760px,100%);max-height:calc(100vh - 32px);padding:20px;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0003}.student-statistics-close{color:#555;cursor:pointer;background:0 0;border:0;border-radius:50%;width:30px;height:30px;font-family:inherit;font-size:24px;font-weight:300;position:absolute;top:12px;right:14px}.student-statistics-close:hover{background:#f3f3f3}.student-statistics-header{margin-bottom:16px;padding-right:35px}.student-statistics-header h2{color:#222;margin:0 0 6px;font-size:20px;font-weight:800}.student-statistics-student-name{color:#222;font-size:14px;font-weight:800}.student-statistics-filters{gap:10px;margin-bottom:10px;display:flex}.student-statistics-filters select{color:#333;cursor:pointer;background:#fff;border:1px solid #dcdcdc;border-radius:7px;width:180px;height:36px;padding:0 10px;font-family:inherit;font-size:11px;font-weight:700}.student-statistics-period{color:#555;align-items:center;gap:8px;margin-bottom:18px;font-size:11px;font-weight:700;display:flex}.student-statistics-period input{box-sizing:border-box;color:#333;background:#fff;border:1px solid #dcdcdc;border-radius:7px;width:125px;height:34px;padding:0 8px;font-family:inherit;font-size:10px}.student-statistics-content{grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);gap:12px;display:grid}.student-statistics-calendar-section{border:1px solid #e5e5e5;border-radius:9px;padding:12px}.student-statistics-calendar-title{color:#222;text-align:center;margin-bottom:12px;font-size:16px;font-weight:800}.student-statistics-calendar-weekdays{color:#888;text-align:center;grid-template-columns:repeat(7,1fr);margin-bottom:4px;font-size:8px;font-weight:800;display:grid}.student-statistics-calendar{border-top:1px solid #e5e5e5;border-left:1px solid #e5e5e5;grid-template-columns:repeat(7,1fr);display:grid}.student-statistics-calendar-day{color:#222;border-bottom:1px solid #e5e5e5;border-right:1px solid #e5e5e5;justify-content:center;align-items:center;min-height:36px;font-size:10px;font-weight:800;display:flex}.student-statistics-calendar-day.empty{background:#fff}.student-statistics-calendar-day.present{background:#dff2d8}.student-statistics-calendar-day.sick{background:#fff0bd}.student-statistics-calendar-day.absent{background:#ffd2d2}.student-statistics-calendar-day.inactive{color:#b8b8b8;background:#eee}.student-statistics-legend{color:#555;flex-wrap:wrap;gap:10px;margin-top:12px;font-size:8px;font-weight:700;display:flex}.student-statistics-legend div{align-items:center;gap:5px;display:flex}.legend-color{border-radius:3px;width:11px;height:11px}.legend-color.present{background:#dff2d8}.legend-color.sick{background:#fff0bd}.legend-color.absent{background:#ffd2d2}.legend-color.empty{background:#fff;border:1px solid #ddd}.student-statistics-summary{border:1px solid #e5e5e5;border-radius:9px;padding:15px}.student-statistics-summary h3{color:#222;margin:0 0 15px;font-size:12px;font-weight:800}.student-statistics-row{color:#333;border-bottom:1px solid #eee;justify-content:space-between;align-items:center;min-height:34px;font-size:10px;display:flex}.student-statistics-row strong{font-size:15px}.student-statistics-row.present strong{color:#248a3d}.student-statistics-row.absent strong{color:#d62828}.student-statistics-row.sick strong{color:#d28a00}.student-statistics-row.missed strong{color:#d62828}.student-statistics-attendance{color:#222;border-top:2px solid #e5e5e5;justify-content:space-between;align-items:center;margin-top:15px;padding-top:13px;font-size:11px;font-weight:800;display:flex}.student-statistics-attendance strong{color:#1d55a5;font-size:23px}.student-statistics-period-view{box-sizing:border-box;border:1px solid #e5e5e5;border-radius:9px;min-height:100%;padding:15px}.student-statistics-period-title{color:#222;margin-bottom:10px;font-size:13px;font-weight:800}.student-statistics-period-dates{color:#777;font-size:10px}@media (width<=800px){.student-statistics-overlay{padding:10px}.student-statistics-modal{max-height:calc(100vh - 20px);padding:16px}.student-statistics-content{grid-template-columns:1fr}.student-statistics-filters{flex-direction:column}.student-statistics-filters select{width:100%}.student-statistics-period{flex-wrap:wrap}.student-statistics-period input{width:135px}.student-statistics-calendar-day{min-height:38px}}.student-statistics-calendar-day{color:#000!important}.student-statistics-day-number{box-sizing:border-box;justify-content:center;align-items:center;width:26px;height:26px;display:flex;color:#000!important}.student-statistics-today .student-statistics-day-number{background:0 0;border:2px solid #222;border-radius:5px;color:#000!important}.mobile-menu-button{display:none}.mobile-navigation-overlay{z-index:20000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000006b;align-items:stretch;display:flex;position:fixed;inset:0}.mobile-navigation{background:#fff;border-right:1px solid #e5e5e5;width:300px;max-width:calc(100vw - 40px);height:100%;animation:.18s ease-out mobile-navigation-show;overflow-y:auto;box-shadow:12px 0 35px #0000002e}@keyframes mobile-navigation-show{0%{transform:translate(-100%)}to{transform:translate(0)}}.mobile-navigation-header{z-index:2;background:#fff;border-bottom:1px solid #eee;justify-content:space-between;align-items:center;min-height:58px;padding:0 16px;display:flex;position:sticky;top:0}.mobile-navigation-title{color:#222;letter-spacing:.06em;font-size:15px;font-weight:850}.mobile-navigation-close{color:#555;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-family:inherit;font-size:25px;font-weight:300;display:flex}.mobile-navigation-close:hover{background:#f3f3f3}.mobile-navigation-list{flex-direction:column;gap:6px;padding:14px;display:flex}.mobile-navigation-group{width:100%}.mobile-navigation-item{color:#555;letter-spacing:.04em;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 14px;font-family:inherit;font-size:12px;font-weight:800;transition:background .15s,color .15s;display:flex}.mobile-navigation-item:hover{color:#222;background:#f5f5f5}.mobile-navigation-item.active{color:#fff;background:#d62828;box-shadow:0 6px 16px #d6282829}.mobile-navigation-item .navigation-icon{flex:0 0 24px;justify-content:center;align-items:center;width:24px;font-size:19px;line-height:1;display:flex}.mobile-navigation-item-title{flex:1;min-width:0}.mobile-navigation-arrow{margin-left:auto;font-size:10px;transition:transform .2s}.mobile-navigation-arrow.open{transform:rotate(180deg)}.mobile-navigation-submenu{flex-direction:column;gap:4px;margin-top:5px;padding:4px 0 4px 20px;display:flex}.mobile-navigation-subitem{color:#666;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;min-height:40px;padding:8px 12px;font-family:inherit;font-size:10px;font-weight:750;line-height:1.25;transition:background .15s,color .15s}.mobile-navigation-subitem:hover{color:#222;background:#f3f3f3}.mobile-navigation-subitem.active{color:#fff;background:#d62828;box-shadow:0 4px 10px #d6282824}.mobile-journal-months{flex-direction:column;gap:4px;margin-top:5px;padding:4px 0 4px 20px;display:flex}.mobile-journal-year{width:100%}.mobile-journal-year-title{color:#555;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;width:100%;min-height:38px;padding:8px 12px;font-family:inherit;font-size:11px;font-weight:800;display:flex}.mobile-journal-year-title:hover{background:#f3f3f3}.mobile-journal-year-title.active{color:#222}.mobile-journal-month-list{flex-direction:column;gap:3px;padding:3px 0 5px 12px;display:flex}@media (width<=600px){.mobile-menu-button{cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;flex:0 0 36px;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;padding:0;display:flex}.mobile-menu-button:hover{background:#f3f3f3}.mobile-menu-button span{background:#333;border-radius:2px;width:19px;height:2px;display:block}.dashboard-header{gap:8px;padding:0 10px}.dashboard-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dashboard-user{flex:none;min-width:90px}.dashboard-layout{grid-template-columns:minmax(0,1fr);width:100%;display:grid}.dashboard-sidebar{display:none}.dashboard-main{width:100%;min-width:0;padding:10px}.dashboard-workspace{border-radius:12px;width:100%;min-width:0}}@media (width<=380px){.mobile-navigation{width:290px;max-width:calc(100vw - 30px)}.mobile-navigation-list{padding:12px}.dashboard-header{gap:6px;padding:0 8px}.mobile-menu-button{flex-basis:34px;width:34px;height:34px}.dashboard-title{font-size:10px}.dashboard-user{min-width:75px}.dashboard-user-role{font-size:7px}.dashboard-user-name{max-width:80px;font-size:9px}.dashboard-main{padding:8px}}.student-card-fio-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.student-edit-button{color:#888;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;font-size:16px;transition:background .15s,color .15s;display:flex;transform:scaleX(-1)}.student-edit-button:hover{color:#d62828;background:#f3f3f3}.public-journal-page{box-sizing:border-box;background:#f5f6f8;height:100vh;min-height:100vh;padding:20px;overflow:hidden auto}.public-journal-topbar{justify-content:space-between;align-items:center;gap:20px;width:100%;max-width:1400px;margin:0 auto 16px;display:flex}.public-journal-page-title{margin:0;font-size:24px;font-weight:900}.public-journal-page-subtitle{color:#777;margin:4px 0 0;font-size:14px}.public-journal-back{cursor:pointer;background:#fff;border:1px solid #d9d9d9;border-radius:10px;flex:none;padding:10px 18px;font-size:15px;font-weight:800}.public-journal-card{box-sizing:border-box;background:#fff;border-radius:18px;width:100%;max-width:1400px;margin:0 auto 30px;padding:25px;box-shadow:0 10px 30px #00000014}.public-journal-logo{text-align:center}.public-journal-logo img{width:90px;height:auto}.public-journal-card h2{text-align:center;margin:10px 0;font-size:30px}.public-journal-mode{text-align:center;color:#777;margin:0 0 24px}.public-journal-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.public-journal-filter{min-width:0}.public-journal-filter label{text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:900;display:block}.public-journal-filter select{box-sizing:border-box;width:100%;height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d2d7df;border-radius:9px;padding:0 12px}.public-journal-filter select:disabled{cursor:not-allowed;background:#f2f2f2}.public-journal-info{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.public-journal-info>div{background:#fafafa;border:1px solid #e1e1e1;border-radius:12px;min-width:0;padding:14px 16px}.public-journal-info span{color:#888;margin-bottom:5px;font-size:11px;font-weight:900;display:block}.public-journal-info strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;display:block;overflow:hidden}.public-journal-table{-webkit-overflow-scrolling:touch;width:100%;overflow:auto visible}.public-journal-table .attendance-table-wrapper{min-width:max-content}.public-journal-empty{text-align:center;color:#777;border:1px solid #e1e1e1;border-radius:12px;padding:35px 20px}.public-journal-footer{text-align:center;color:#888;margin-top:20px;font-size:14px}@media (width<=900px){.public-journal-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.public-journal-info{grid-template-columns:1fr}}@media (width<=600px){.public-journal-page{padding:12px}.public-journal-topbar{align-items:flex-start}.public-journal-page-title{font-size:20px}.public-journal-card{border-radius:14px;padding:16px}.public-journal-card h2{font-size:24px}.public-journal-filters{grid-template-columns:1fr}.public-journal-logo img{width:75px}}
