.auth-bg{height:100vh;background:linear-gradient(135deg,#5b7cff,#7f9cff);display:flex;justify-content:center;align-items:center}.auth-box{background:#fff;padding:40px;width:320px;border-radius:14px;text-align:center;box-shadow:0 10px 30px #00000026}.auth-box h2{margin-bottom:20px}.auth-box input{width:100%;padding:10px;margin-bottom:12px;border-radius:8px;border:1px solid #ddd}.auth-box button{width:100%;padding:10px;background:#5b7cff;color:#fff;border:none;border-radius:8px;font-weight:700;cursor:pointer}.auth-box p{margin-top:14px;font-size:14px;color:#555;cursor:pointer}.section{margin-top:25px;text-align:left}.allergy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.allergy-item{padding:5px;border:1px solid #ddd;border-radius:5px;text-align:center;cursor:pointer;font-size:12px}.allergy-item.active{background:#ff4d4f;color:#fff;border-color:#ff4d4f}.menu-input{display:flex;gap:10px;margin-top:10px;width:100%}.menu-input input{flex:3;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:16px}.menu-input button{flex:1;padding:12px;background-color:#5c7cfa;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:700}.btn-save{background-color:#5c7cfa;color:#fff;width:100%;padding:15px;border:none;border-radius:8px;margin-top:40px;cursor:pointer;font-size:16px;font-weight:700}.btn-logout{background-color:transparent;color:#5c7cfa;width:100%;padding:12px;border:1px solid #5c7cfa;border-radius:8px;margin-top:15px;cursor:pointer;font-size:15px}.btn-logout:hover{background-color:#f1f3f5}.user-profile-section{display:flex;align-items:center;gap:20px;padding:10px 0;margin-bottom:10px}.user-avatar{width:70px;height:70px;border-radius:50%;object-fit:cover;border:2px solid #5c7cfa}.user-text-info{text-align:left}.user-name{margin:0;font-size:1.2rem;color:#333}.user-email{margin:5px 0 0;font-size:.9rem;color:#666}.divider{border:0;height:1px;background:#eee;margin:20px 0}.btn-save{margin-top:30px}.login-loading-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#ffffffe6;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:10000;backdrop-filter:blur(5px)}.login-loading-overlay p{margin-top:20px;font-size:1.1rem;color:#333;font-weight:600;text-align:center;line-height:1.6}.spinner{width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Pretendard,sans-serif;background-color:#f4f6fa;color:#222}button{cursor:pointer;border-style:none;outline-style:none}.hero .container{max-width:95%;margin-top:0;margin-bottom:0;padding-left:40px;padding-right:40px}.container{width:100%;max-width:100%!important;margin:0!important;padding:0!important;display:flex;align-items:center;flex-direction:column;position:relative;z-index:10}.navbar{position:fixed;top:0;left:0;width:100%;height:64px;background-color:#fff;display:flex;align-items:center;justify-content:space-between;padding-left:32px;padding-right:32px;box-shadow:0 2px 10px #00000014;z-index:9999!important}.nav-left{display:flex;align-items:center;z-index:9998}.menu-item{background:none;border:none;font-size:1rem;font-weight:600;color:#64748b;cursor:pointer;padding:8px 16px;transition-property:all;transition-duration:.2s;border-radius:8px}.menu-item:hover{color:#3b82f6;background-color:#f1f5f9}.menu-item.active{color:#3b82f6;background-color:#eff6ff;font-weight:800}.nav-right{display:flex;align-items:center;gap:12px;z-index:10}.nav-date-input{padding:7px 10px;border-radius:8px;border-width:1px;border-style:solid;border-color:#ddd;font-size:14px}.nav-buttons{display:flex;align-items:center;gap:10px}.nav-report-btn{padding:8px 14px;border-radius:8px;background-color:#fff1f0;color:#ff4d4f;font-weight:700;border-width:1px;border-style:solid;border-color:#ffccc7;font-size:14px;transition-property:all;transition-duration:.2s}.nav-report-btn:hover{background-color:#ff4d4f;color:#fff;transform:translateY(-2px)}.nav-btn{padding:8px 14px;border-radius:8px;background-color:#5b7cff;color:#fff;font-weight:600}.hero{margin-top:64px;background-image:linear-gradient(135deg,#5b7cff,#7f9cff);color:#fff;padding-top:80px;padding-bottom:140px;text-align:center;max-width:100%}.tt-hero{padding-bottom:50px!important;margin-bottom:20px}.hero h1{font-size:42px;margin-bottom:25px;font-weight:900}.search-bar{display:flex;justify-content:center;width:90%;max-width:500px;margin-left:auto;margin-right:auto;gap:8px}.search-bar input{flex:1;width:90%;padding:12px 20px;border-radius:12px;border-style:none;font-size:16px;box-shadow:0 4px 12px #0000001a}.search-bar button{width:15%;padding-left:24px;padding-right:24px;border-radius:12px;background-color:#222;color:#fff;font-weight:700}main.container{display:flex!important;flex-direction:column;align-items:center;position:relative;z-index:10}.main-card{width:95%;max-width:1200px!important;height:auto;background-color:#fff;border-radius:24px;padding:60px 40px;margin-left:auto!important;margin-right:auto!important;box-shadow:0 20px 45px #0000001f;transform:translateY(-80px)!important;margin-bottom:-80px;position:relative!important;z-index:9999!important;display:flex;flex-direction:column;align-items:center}.selected-day-info{width:100%;position:relative;display:flex;justify-content:flex-end;align-items:center;margin-bottom:30px}.date-nav{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;white-space:nowrap}.date-nav h2{margin:0!important;display:flex;align-items:center!important;justify-content:center;gap:8px}.date-nav-btn{background:none;border:1.5px solid #e2e8f0;border-radius:8px;padding:4px 12px;font-size:.9rem;color:#64748b;cursor:pointer;transition:all .15s;line-height:1}.date-nav-btn:hover{background:#f1f5f9;border-color:#94a3b8;color:#1e293b}.today-badge-meal{display:inline-block;font-size:.65rem;font-weight:600;background:#6366f1;color:#fff;border-radius:5px;padding:2px 7px;vertical-align:middle}.meal-grid{width:100%;display:grid;grid-template-columns:repeat(3,1fr)!important;gap:10px!important}.meal-card-wrapper{height:420px!important}.card-inner{position:relative;width:100%;height:100%;transition-property:transform;transition-duration:.6s;transition-timing-function:cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}.meal-card-wrapper.flipped .card-inner{transform:rotateY(180deg)}.card-front,.card-back{position:absolute;width:100%;max-width:400px;height:100%;backface-visibility:hidden;border-radius:15px;padding:24px;display:flex;flex-direction:column;border-width:1px;border-style:solid;border-color:#edf0f7}.card-front{background-color:#f8faff}.card-back{background-color:#fffef2;transform:rotateY(180deg);align-items:center;justify-content:center;text-align:center}.meal-type{font-weight:900;color:#5b7cff;font-size:18px;margin-bottom:15px;display:block}.menu-line{font-size:18px;line-height:1.8}.ranking-section{margin-top:100px;padding-top:60px;padding-bottom:60px;border-top-width:2px;border-top-style:dashed;border-top-color:#e0e6ed}.ranking-header{display:flex;flex-direction:column;align-items:center;margin-bottom:50px}.ranking-section h3{font-size:32px;font-weight:900;color:#333}.ranking-list{display:grid;gap:20px;width:100%}.ranking-item{display:flex;align-items:center;background-color:#fff;padding:20px 30px;border-radius:20px;box-shadow:0 4px 15px #0000000a;margin:0 200px;width:auto;gap:16px}.rank-num{font-size:1.6rem;min-width:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rank-num-badge{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background-color:#e2e8f0;color:#475569;font-size:1rem;font-weight:700}.rank-info{flex:1}.rank-name{font-size:1.05rem;font-weight:600;color:#1e293b}.rank-count{font-size:.95rem;color:#64748b;white-space:nowrap}.ranking-list .status-msg{text-align:center}.click-info-text{font-size:.75rem;color:#888;margin-top:10px;font-style:italic;opacity:.8;transition-property:opacity;transition-duration:.3s}.meal-card-wrapper:hover .click-info-text{opacity:1;color:#666}.noti-request-btn{padding:8px 14px;border-radius:8px;background-color:#5b7cff;color:#fff;font-weight:600}.comment-icon-btn{background:none;border:none;font-size:22px;cursor:pointer;margin-right:12px;transition-property:all;transition-duration:.2s;transition-timing-function:ease-in-out;display:flex;align-items:center;justify-content:center;padding:5px;border-radius:50%}.comment-icon-btn:hover{transform:scale(1.25);background-color:#0000000d}.comment-icon-btn:active{transform:scale(.9)}.card-header-right{display:flex;align-items:center}.comment-badge{position:absolute;top:-2px;right:-2px;background-color:#ff4757;color:#fff;font-size:10px;padding:2px 5px;border-radius:10px;font-weight:700}.desktop-only{display:block}.mobile-only{display:none}.mobile-date-selector{padding:1rem;width:92%}.mobile-date-input{width:100%;height:32px;padding:0 1rem 0 4px;color:#333;border:2px solid #fff;border-radius:12px;background:#fff;box-shadow:0 4px 12px #0000001a;cursor:pointer;transition:all .3s ease;text-align:left;font-weight:800}.mobile-date-input:focus{outline:none;border-color:#667eea;box-shadow:0 6px 20px #667eea4d}.tt-container{padding:0 40px;margin-bottom:30px!important}.tt-setting{gap:4px;display:flex;flex-direction:row}.tt-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border-radius:14px;padding:.85rem 1.25rem;box-shadow:0 2px 10px #0000000f;margin-bottom:1rem;position:relative}.tt-selector-group{display:flex;align-items:center;gap:.75rem}.tt-selector-group label{font-weight:600;color:#555;font-size:.9rem;min-width:2rem}.tt-btn-group{display:flex;gap:.4rem;flex-wrap:wrap}.tt-selector-btn{padding:.4rem .9rem;border:2px solid #e0e0e0;border-radius:10px;background:#fafafa;color:#555;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .18s}.tt-selector-btn:hover{border-color:#4f8ef7;color:#4f8ef7;background:#eef4ff}.tt-selector-btn.active{background:#4f8ef7;border-color:#4f8ef7;color:#fff;box-shadow:0 2px 8px #4f8ef74d}.tt-week-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border-radius:14px;padding:.85rem 1.25rem;box-shadow:0 2px 10px #0000000f;margin-bottom:1rem;position:relative}.tt-week-label{font-size:.95rem;font-weight:700;color:#333;text-align:center}.tt-cal-trigger{padding:.4rem 1rem;border:2px solid #e0e0e0;border-radius:10px;background:#fafafa;color:#444;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.tt-cal-trigger:hover{background:#4f8ef7;border-color:#4f8ef7;color:#fff}.tt-cal-popup{position:absolute;top:calc(100% + 8px);right:0;z-index:100;background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000026;padding:1rem;min-width:280px;animation:cal-fade-in .15s ease}@keyframes cal-fade-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.tt-cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.tt-cal-title{font-size:.95rem;font-weight:700;color:#333}.tt-cal-nav{background:none;border:none;font-size:.9rem;color:#888;cursor:pointer;padding:.2rem .5rem;border-radius:6px;transition:background .15s,color .15s}.tt-cal-nav:hover{background:#eef4ff;color:#4f8ef7}.tt-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.tt-cal-day-name{text-align:center;font-size:.72rem;font-weight:700;color:#aaa;padding:.2rem 0}.tt-cal-cell{text-align:center;font-size:.82rem;padding:.4rem 0;border-radius:6px;cursor:pointer;transition:background .12s,color .12s;color:#333}.tt-cal-cell:hover:not(.empty){background:#eef4ff;color:#4f8ef7}.tt-cal-cell.empty{cursor:default}.tt-cal-cell.selected-week{background:#eef4ff;color:#4f8ef7;font-weight:700}.tt-cal-cell.today{background:#4f8ef7;color:#fff;font-weight:700}.tt-cal-cell.today.selected-week{background:#4f8ef7;color:#fff}.tt-class-popup{min-width:300px}.tt-class-popup-title{font-size:.78rem;font-weight:700;color:#aaa;margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.05em}.tt-class-grid{display:flex;gap:.4rem;flex-wrap:wrap}.tt-class-cell{flex:1;min-width:48px;padding:.45rem .5rem;border:2px solid #e0e0e0;border-radius:10px;background:#fafafa;color:#555;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s;text-align:center}.tt-class-cell:hover{border-color:#4f8ef7;color:#4f8ef7;background:#eef4ff}.tt-class-cell.active{background:#4f8ef7;border-color:#4f8ef7;color:#fff;box-shadow:0 2px 8px #4f8ef74d}.tt-card{background:#fff;border-radius:18px;box-shadow:0 4px 20px #00000014;overflow:hidden}.tt-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:10px;background-color:#fff;border-radius:8px}.tt-table{width:100%;min-width:600px;border-collapse:collapse}.tt-table th,.tt-table td{padding:15px;text-align:center;border:1px solid #f0f0f0}.tt-period-header{background:#f8f9fb;color:#999;font-size:.78rem;font-weight:700;padding:.7rem .5rem;width:60px}.tt-day-header{background:#f8f9fb;padding:.6rem .5rem .5rem;position:relative}.tt-day-header.today{background:#eef4ff}.tt-day-name{display:block;font-size:1rem;font-weight:800;color:#333}.tt-day-date{display:block;font-size:.72rem;color:#999;margin-top:1px}.tt-today-badge{display:inline-block;background:#4f8ef7;color:#fff;font-size:.62rem;font-weight:700;border-radius:20px;padding:1px 6px;margin-top:2px}.tt-row.even td{background:#fbfbfb}.tt-period-cell{font-size:.75rem;color:#bbb;font-weight:700;padding:.55rem .3rem;white-space:nowrap;background:#f8f9fb}.tt-subject-cell{padding:.4rem .35rem;min-width:80px}.tt-subject-cell.today-col{background:#4f8ef70a}.tt-subject-chip{border-radius:8px;padding:.35rem .4rem;font-size:.82rem;font-weight:700;line-height:1.3;text-align:center;transition:transform .15s,box-shadow .15s;cursor:default}.tt-subject-chip:hover{transform:translateY(-1px);box-shadow:0 3px 8px #0000001a}.tt-subject-chip.changed{background:#fff8c5;border:1.5px solid #f5c518;color:#7a5800}.tt-subject-chip.changed:hover{box-shadow:0 3px 8px #f5c5184d}.tt-subject-chip.changed{position:relative}.tt-change-tooltip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1e293b;color:#f1f5f9;border-radius:8px;padding:6px 10px;white-space:nowrap;font-size:.72rem;font-weight:500;line-height:1.5;text-align:center;z-index:100;pointer-events:none;box-shadow:0 4px 12px #0003}.tt-change-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1e293b}.tt-change-teacher{display:block;font-weight:700;color:#fde68a}.tt-change-diff{display:block;color:#94a3b8;font-size:.68rem}.tt-subject-chip.changed:hover .tt-change-tooltip{display:block}.tt-subject-chip.base-only{background:#f1f5f9;border:1.5px dashed #94a3b8;color:#64748b}.tt-teacher-name{display:block;font-size:.68rem;color:#64748b;font-weight:400;margin-top:2px;line-height:1.2}.tt-teacher-unknown{color:#f59e0b;font-style:italic}.tt-legend{display:flex;flex-wrap:wrap;gap:6px 16px;padding:10px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:12px;font-size:.78rem;color:#64748b}.tt-legend-item{display:flex;align-items:center;gap:5px}.tt-legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.tt-legend-dot.base-only{background:#94a3b8;border:1.5px solid #cbd5e1}.tt-teacher{padding:6px 14px;border:1.5px solid #4f8ef7;border-radius:8px;background:#fff;color:#4f8ef7;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.tt-teacher:hover{background:#4f8ef7;color:#fff}.tt-teacher-modal{max-width:720px;width:95vw;max-height:85vh;overflow-y:auto}.tt-teacher-modal-body{padding:16px 0 0}.tt-teacher-select-row{margin-bottom:8px}.tt-teacher-slot{display:flex;flex-direction:column;align-items:center;gap:2px}.tt-teacher-slot-class{font-size:.75rem;font-weight:700;color:#4f8ef7;background:#eff6ff;border-radius:4px;padding:1px 5px}.tt-teacher-slot-subject{font-size:.78rem;color:#334155}.tt-changed-badge{display:inline-block;margin-left:4px;padding:1px 5px;border-radius:4px;background:#f5c518;color:#7a5800;font-size:.62rem;font-weight:700;vertical-align:middle;line-height:1.4}.tt-mobile-slot.changed{background:#fffbeb;border-left:3px solid #f5c518}.tt-server-error{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:10px 16px;border-radius:10px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:.85rem;font-weight:600}.tt-mobile-change-teacher{display:block;font-size:.65rem;font-weight:600;color:#92400e;margin-top:2px;opacity:.85}.tt-empty{color:#ddd;font-size:.85rem}.tt-mobile-view{display:none}@media screen and (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:block}.mobile-date-selector{top:0;z-index:1999}.navbar{height:40px;padding:0 10px!important;gap:1px!important}.nav-logo img{height:20px;width:auto;cursor:pointer}.nav-logo h2{font-size:9px!important;letter-spacing:-1px;white-space:nowrap}.nav-menu{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:6px!important}.menu-item{font-size:8px!important;color:#64748b;padding:1px!important;transition:all .2s;border-radius:8px}.nav-right{display:flex;align-items:center;gap:3px!important;z-index:10}.nav-date-input.desktop-only{display:none!important}.nav-buttons{display:flex;gap:2px!important}.nav-report-btn,.nav-btn,.noti-request-btn{padding:2px 4px!important;font-size:8px!important;border-radius:1px;line-height:1;min-width:fit-content}.hero{margin-top:64px!important;padding:30px 0 60px}.hero h1{font-size:18px!important;letter-spacing:-1px}.search-bar{max-width:92%!important;padding:0 10px!important}.search-bar input{height:32px!important;font-size:11px!important;padding:0 10px!important}.search-bar button{height:32px!important;padding:0 10px!important;font-size:11px!important}.main-card{padding:15px 10px;border-radius:15px;width:96%;margin-left:auto!important;margin-right:auto!important;transform:translateY(-40px)!important;margin-bottom:-40px!important;position:relative!important;z-index:9999!important}.selected-day-info{justify-content:flex-end!important}.selected-day-info h2{font-size:15px!important}.date-nav{gap:6px}.date-nav-btn{padding:3px 9px;font-size:.8rem}.meal-grid{width:100%}.status-msg{font-size:12px!important}.meal-card-wrapper{height:auto!important;min-height:220px}.meal-card-wrapper .menu-line{font-size:12px!important}.allergy-row{height:15px;width:auto}.allergy-detail-item{font-size:9px!important}.comment-icon-btn,.like-btn{font-size:11px!important;transition:all .2s ease-in-out;display:flex;border-radius:50%}.click-info-text{font-size:7px!important}.card-front,.card-back{padding:12px}.meal-type{font-size:13px;margin-bottom:5px}.menu-line{font-size:8px!important;line-height:1.4}.ranking-section{margin-top:24px!important;padding:24px 16px!important;background-color:#fff;border-radius:20px;width:calc(100% - 32px);margin-left:auto;margin-right:auto;margin-bottom:20px;box-shadow:0 2px 10px #0000000d}.ranking-section h3{font-size:18px!important}.ranking-list{grid-template-columns:1fr!important}.ranking-list .status-msg{text-align:center}.ranking-item{padding:10px 15px!important;font-size:12px!important;margin:0!important}.comment-icon-btn{font-size:16px;margin-right:5px}.comment-badge{font-size:7px;padding:1px 3px}.tt-container{padding:0 5px!important}.tt-setting{flex-direction:column;gap:8px}.tt-controls,.tt-week-nav{padding:.6rem 1rem;margin-bottom:0;width:100%;box-sizing:border-box}.tt-card{display:block!important;height:auto;width:auto;margin-top:10px;border-radius:12px}.tt-table-wrapper{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;background:#fff;border-radius:10px}.tt-table{min-width:360px;table-layout:fixed}.tt-day-header{padding:6px 2px!important}.tt-day-header{padding:8px 4px}.tt-day-name{font-size:12px!important}.tt-day-date{font-size:9px!important}.tt-subject-cell{padding:6px 4px}.tt-subject-chip{font-size:10px!important;line-height:1.2!important;padding:0!important;min-height:35px;display:flex;align-items:center;justify-content:center;word-break:keep-all}.tt-changed-badge{font-size:8px;padding:1px 3px;margin-left:2px}.tt-today-badge{font-size:8px!important;padding:0 3px!important}.tt-cal-popup,.tt-class-popup{width:90vw;left:50%;transform:translate(-50%);min-width:unset}.tt-period-header,.tt-period-cell{width:35px!important;font-size:10px!important;padding:5px 2px!important}.tt-subject-cell{padding:2px 1px!important;height:45px;vertical-align:middle}}.tt-teacher-map-table th,.tt-teacher-map-table td{padding:7px 8px;font-size:.83rem;vertical-align:middle}.tt-teacher-map-table input.tt-admin-select{min-width:90px;font-size:.81rem;padding:4px 7px}.tt-teacher-page-select{padding:8px 14px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.92rem;font-weight:600;color:#334155;background:#fff;cursor:pointer;min-width:180px;outline:none;transition:border-color .15s}.tt-teacher-page-select:focus{border-color:#4f8ef7}.tt-teacher-class-badge{display:inline-block;padding:1px 6px;background:#eff6ff;color:#3b82f6;border-radius:5px;font-size:.72rem;font-weight:700;margin-right:4px;vertical-align:middle}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999!important}.report-modal,.notice-modal-content{background-color:#fff;padding:30px;border-radius:16px;width:90%;max-width:400px;box-shadow:0 10px 25px #0000001a}.notice-modal-content{animation-name:modalFadeIn;animation-duration:.3s;animation-timing-function:ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.report-modal h2{margin-bottom:10px;font-size:1.5rem}.target-info{color:#666;margin-bottom:20px;font-size:.9rem;background-color:#f8f9fa;padding:8px;border-radius:6px}.report-modal label{font-weight:600;font-size:.9rem}.report-modal select,.report-modal textarea{width:100%;padding:10px;border-width:1px;border-style:solid;border-color:#ddd;border-radius:8px}.report-modal textarea{height:100px;resize:none}.modal-btns{display:flex;gap:10px;margin-top:20px}.close-btn,.confirm-btn{background-color:#4e73df;color:#fff;padding:2px 6px;border-radius:6px;font-weight:700}.submit-btn,.cancel-btn,.notice-confirm-btn{flex:1;padding-top:12px;padding-bottom:12px;border-radius:8px;font-weight:700}.submit-btn{background-color:#ff4d4f;color:#fff}.cancel-btn{background-color:#eee;color:#444}.notice-confirm-btn{background-color:#4e73df;color:#fff;width:100%}@media screen and (max-width:768px){.report-modal,.notice-modal-content{padding:20px;width:95%;border-radius:12px}.report-modal h2{font-size:1.25rem!important;margin-bottom:8px}.target-info{font-size:.8rem;margin-bottom:15px;padding:6px}.report-modal label{font-size:.85rem}.report-modal select,.report-modal textarea{padding:8px;font-size:14px}.report-modal textarea{height:120px}.modal-btns{gap:8px;margin-top:15px}.submit-btn,.cancel-btn,.notice-confirm-btn{padding-top:14px;padding-bottom:14px;font-size:.95rem}}footer{background-color:#f9f9f9;padding:50px 25px;border-top:1px solid #e1e1e1;color:#666;font-size:13px}.footer-content{display:flex;justify-content:space-between;flex-direction:row;max-width:1200px;margin:0 auto;padding:0 20px}.footer-left{display:flex;flex-direction:column;text-align:left}.footer-logo{font-size:22px;font-weight:800;color:#444;margin-bottom:20px;letter-spacing:-1px}.footer-info p{margin:6px 0;line-height:1.5}.footer-right{display:flex;flex-direction:column;align-items:flex-end;gap:15px}.footer-icons{display:flex;align-items:center;gap:12px}.footer-icon-img{width:24px;height:24px;object-fit:contain;filter:grayscale(1);transition:all .2s;cursor:pointer}.footer-icon-img:hover{filter:grayscale(0);transform:scale(1.1)}.icon-btn{background-color:#fff;border:1px solid #ccc;border-radius:4px;padding:6px 10px;font-size:12px;color:#666;cursor:pointer;display:flex;align-items:center;gap:5px;transition:background .2s}.icon-btn:hover{background-color:#f0f0f0}.footer-links{display:flex;gap:8px}.link-btn{background-color:#fff;border:1px solid #ccc;border-radius:4px;padding:6px 12px;font-size:12px;color:#666;cursor:pointer;transition:all .2s}.link-btn:hover{background-color:#444;color:#fff;border-color:#444}.copyright{margin-top:15px!important;color:#aaa}.Privacy:hover{cursor:pointer;text-decoration:underline}@media screen and (max-width:768px){footer{padding:30px 15px;font-size:11px}.footer-content{flex-direction:column;align-items:center;text-align:center;gap:25px;padding:0 10px!important}.footer-left{align-items:center}.footer-logo{font-size:18px!important;margin-bottom:10px}.footer-right{align-items:center;gap:12px}.footer-icons{gap:8px}.footer-icon-img{width:20px;height:20px}.icon-btn{padding:5px 8px;font-size:10px!important}.footer-links{flex-wrap:wrap;justify-content:center}.link-btn{padding:5px 10px;font-size:10px}}.navbar{position:fixed;top:0;left:0;width:100%;height:64px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 32px;box-shadow:0 2px 10px #00000014;z-index:9999!important}.nav-logo{display:flex;align-items:center;gap:10px}.nav-logo img{height:36px;width:auto;cursor:pointer}.navbar h2{font-size:20px;font-weight:800;cursor:pointer;margin:0}.nav-buttons{display:flex;gap:10px}.nav-btn{padding:8px 16px;border-radius:8px;background:#5b7cff;color:#fff;font-weight:600;border:none;cursor:pointer;transition:opacity .2s}.nav-btn:hover{opacity:.9}.nav-btn.logout{background:#ff6b6b}.mypage-wrapper{position:relative;z-index:700;min-height:100vh;padding-top:110px;padding-bottom:160px;background:#f0f2f5}.main-card{max-width:85%;margin:0 auto!important;background:#fff!important;border-radius:24px!important;padding:40px!important;box-shadow:0 10px 30px #0000000d!important;z-index:1999!important}.main-card h2{font-size:28px;font-weight:900;margin-bottom:30px;text-align:center;color:#1a1a1a}.info-section{background:#f8faff;border-radius:16px;padding:24px;margin-bottom:32px;border:1px solid #eef2ff}.info-item{display:flex;justify-content:space-between;padding:8px 0;font-size:16px}.info-label{color:#666;font-weight:600}.info-value{color:#1a1a1a;font-weight:700}.allergy-section{margin-top:20px}.allergy-section h3{font-size:18px;font-weight:800;margin-bottom:8px}.allergy-desc{font-size:14px;color:#888;margin-bottom:20px}.allergy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:30px}@media(min-width:480px){.allergy-grid{grid-template-columns:repeat(3,1fr)}}.allergy-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1px solid #eee;border-radius:12px;cursor:pointer;transition:all .2s}.allergy-item:hover{border-color:#5b7cff;background:#f0f4ff}.allergy-item input[type=checkbox]{width:18px;height:18px;cursor:pointer}.mypage-actions{display:flex;gap:12px;margin-top:20px}.btn-save{flex:2;background:#5b7cff;color:#fff;padding:14px;border-radius:12px;font-weight:700;border:none;cursor:pointer}.btn-logout-outline{flex:1;background:#fff;color:#ff6b6b;border:1px solid #ff6b6b;padding:14px;border-radius:12px;font-weight:700;cursor:pointer}.btn-logout-outline:hover{background:#fff5f5}.profile-section{background:#f8f9fa;padding:20px;border-radius:12px;margin-bottom:30px}.allergy-option{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;align-items:center;cursor:pointer;padding:5px}.favorite-input{width:100%;padding:14px;font-size:15px;border-radius:12px;border:1px solid #eee;background:#fff}.switch{position:relative;display:inline-block;width:46px;height:24px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.4s;border-radius:34px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}.save-btn{margin-top:25px;width:100%;padding:12px;font-size:16px;background-color:#5b7cff;color:#fff;font-weight:800;border-radius:8px}.danger-btn{margin-top:10px;width:100%;padding:12px;font-size:16px;background-color:#ff5b5b;color:#fff;font-weight:800;border-radius:8px}.profile-section{padding:16px;width:100%;box-sizing:border-box;font-size:16px!important}.settings-section{padding:10px;width:100%!important;box-sizing:border-box;margin-bottom:5px}input:checked+.slider{background-color:#5b7cff}input:checked+.slider:before{transform:translate(22px)}.set-class{width:20%;display:flex;gap:15px;margin-top:10px;flex-direction:row;box-sizing:border-box}.set-class input{width:40px;padding:2px;margin-right:1px;font-size:14px;border-radius:8px;border:1px solid #5b7cff}.profile-under-btns{display:flex;flex-direction:row;gap:5px;align-items:center;justify-content:center}@media(max-width:768px){.navbar{padding:0 16px;height:56px}.navbar h2{font-size:18px}.nav-btn{padding:6px 12px;font-size:14px}.container,.mypage-wrapper{padding-left:0!important;padding-right:0!important;width:100%!important;max-width:100%!important;display:flex;justify-content:center}.main-card{display:flex;flex-direction:column;align-items:center;padding:30px 24px;border-radius:24px;height:auto!important;width:100%!important;max-width:100%!important;margin:0 10px!important;box-shadow:0 8px 30px #00000014;box-sizing:border-box}.main-card h2{font-size:22px;margin-bottom:20px;width:100%;text-align:center}.main-card hr{margin:0!important}.profile-section{padding:16px;width:100%;box-sizing:border-box;font-size:12px!important}.info-item{font-size:14px;flex-direction:column;gap:4px}.info-label{font-size:12px}.settings-section-allergy{padding:10px;width:100%!important;box-sizing:border-box}.settings-section-allergy h3{font-size:16px;font-weight:800;margin-bottom:5px}.settings-section-allergy p{font-size:12px!important;color:#888;margin-bottom:15px}.settings-section{padding:10px;width:100%!important;box-sizing:border-box}.settings-section h3{font-size:16px;font-weight:800;margin-bottom:5px}.settings-section p{font-size:12px!important;color:#888;margin-bottom:15px}.allergy-option{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;width:100%}.allergy-item{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:10px;background:#fff;border:1px solid #eee;border-radius:10px;font-size:13px;transition:all .2s ease}.favorite-input{width:100%;padding:14px;font-size:10px!important;border-radius:12px;border:1px solid #eee;background:#fff}.mypage-actions{width:100%;flex-direction:column;gap:8px}.btn-logout-outline{width:100%;padding:12px;font-size:16px}.save-btn{width:100%;padding:12px;font-size:16px;background-color:#5b7cff;color:#ddd;font-weight:800;border-radius:8px}.switch{width:40px;height:20px}.slider:before{height:14px;width:14px;bottom:3px}input:checked+.slider:before{transform:translate(20px)}}:root{--scale: 1;--admin-bg: #f3f4f7;--card-white: #ffffff;--primary-blue: #6366f1;--primary-hover: #4f46e5;--success-green: #10b981;--danger-red: #ef4444;--warning-yellow: #f59e0b;--text-main: #1e293b;--text-muted: #64748b;--sidebar-dark: #0f172a;--border-light: #e2e8f0}@media(max-width:1200px){:root{--scale: .85}}@media(max-width:768px){:root{--scale: .75}}*{box-sizing:border-box}body{margin:0;padding:0}.admin-container{padding:calc(40px * var(--scale));background-color:var(--admin-bg);color:var(--text-main);font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,sans-serif}.admin-layout{display:flex;height:100vh;overflow:hidden;background-color:var(--admin-bg)}.admin-sidebar{width:calc(260px * var(--scale));background:var(--sidebar-dark);color:#f1f5f9;height:100vh;padding:calc(1.5rem * var(--scale));display:flex;flex-direction:column;flex-shrink:0;box-shadow:4px 0 10px #0000001a}.admin-main{flex:1;overflow-y:auto;background:var(--admin-bg);padding:calc(40px * var(--scale))}.admin-main::-webkit-scrollbar{width:8px}.admin-main::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.stats-error-banner{background:#fef2f2;border:1.5px solid #fca5a5;color:#b91c1c;border-radius:10px;padding:14px 20px;margin-bottom:20px;font-size:.92rem;font-weight:500}.admin-header{margin-bottom:calc(35px * var(--scale))}.admin-header h1{font-size:calc(1.85rem * var(--scale));font-weight:800;color:var(--text-main);margin:0;letter-spacing:-.025em}.admin-header p{color:var(--text-muted);margin-top:calc(8px * var(--scale));font-size:calc(.95rem * var(--scale))}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(calc(250px * var(--scale)),1fr));gap:calc(24px * var(--scale));margin-bottom:calc(40px * var(--scale))}.stat-card{background:var(--card-white);padding:calc(26px * var(--scale));border-radius:calc(20px * var(--scale));display:flex;align-items:center;box-shadow:0 4px 15px #00000008;transition:all .3s ease;border:1px solid rgba(0,0,0,.05)}.stat-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #00000014}.stat-card .icon{font-size:calc(2.5rem * var(--scale));margin-right:calc(20px * var(--scale))}.stat-card.blue{border-left:calc(6px * var(--scale)) solid var(--primary-blue)}.stat-card.pink{border-left:calc(6px * var(--scale)) solid var(--success-green)}.stat-card.yellow{border-left:calc(6px * var(--scale)) solid var(--warning-yellow)}.stat-info h3{font-size:calc(.85rem * var(--scale));color:var(--text-muted);margin:0;text-transform:uppercase;font-weight:600}.stat-info .count{font-size:calc(1.75rem * var(--scale));font-weight:800;margin-top:calc(5px * var(--scale));color:var(--text-main)}.admin-main-content{display:grid;gap:calc(30px * var(--scale))}.admin-section,.admin-section-full-width{background:var(--card-white);padding:calc(30px * var(--scale));border-radius:calc(20px * var(--scale));box-shadow:0 4px 15px #00000008;border:1px solid var(--border-light)}.admin-section h3{margin-bottom:calc(25px * var(--scale));font-weight:800;border-bottom:2px solid var(--admin-bg);padding-bottom:calc(12px * var(--scale));color:var(--text-main);font-size:calc(1.25rem * var(--scale))}.admin-section .form-group{margin-bottom:calc(20px * var(--scale))}.admin-section input[type=text],.admin-section textarea{width:100%;padding:calc(14px * var(--scale)) calc(18px * var(--scale));border:1px solid #e2e8f0;border-radius:calc(12px * var(--scale));font-size:calc(15px * var(--scale));background-color:#f8fafc;transition:all .2s ease;outline:none}.admin-section input[type=text]:focus,.admin-section textarea:focus{border-color:var(--primary-blue);background-color:#fff;box-shadow:0 0 0 4px #6366f11a}.admin-section input[type=file]{display:block;width:100%;padding:calc(10px * var(--scale));background:#f1f5f9;border-radius:calc(10px * var(--scale));border:1px dashed #cbd5e1;margin:calc(10px * var(--scale)) 0;cursor:pointer}.admin-section .btn-submit{width:100%;padding:calc(16px * var(--scale));background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;border-radius:calc(14px * var(--scale));font-weight:800;font-size:calc(1.1rem * var(--scale));cursor:pointer;box-shadow:0 4px 12px #6366f133;transition:transform .2s,box-shadow .2s}.admin-section .btn-submit:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6366f14d}.admin-table-wrapper{overflow-x:auto;border-radius:calc(12px * var(--scale));border:1px solid var(--border-light)}.admin-table{width:100%;border-collapse:collapse;table-layout:fixed!important;width:100%!important}.admin-table th{text-align:left;padding:16px;color:var(--text-muted);font-weight:700;background-color:#f8fafc;border-bottom:2px solid var(--admin-bg);font-size:.85rem;text-transform:uppercase}.admin-table td{padding:18px 16px;border-bottom:1px solid #f1f5f9;font-size:.9rem;vertical-align:middle}.admin-table tbody tr:hover{background-color:#f8faff}.admin-table tbody tr.active{background-color:#f0f4ff!important}.user-detail-panel{animation:fadeIn .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.profile-card{display:flex;flex-direction:column;align-items:center;padding:35px 25px;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:20px;margin-bottom:25px;border:1px solid #f1f2f6;box-shadow:0 10px 20px #00000005}.profile-img-large{width:110px;height:110px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 10px 25px #6366f133;margin-bottom:20px}.info-group{margin-bottom:22px}.info-group label{display:block;font-size:11px;font-weight:800;color:var(--text-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.info-group p{margin:0;font-size:calc(.95rem * var(--scale));color:var(--text-main);font-weight:500;word-break:break-all}.ban-info{background-color:#fff5f5;padding:calc(18px * var(--scale));border-radius:calc(12px * var(--scale));border-left:calc(5px * var(--scale)) solid var(--danger-red);margin-top:calc(10px * var(--scale))}.badge{padding:calc(6px * var(--scale)) calc(10px * var(--scale));border-radius:calc(30px * var(--scale));font-size:calc(.7rem * var(--scale));font-weight:800;text-transform:uppercase}.badge.success{background-color:#d1fae5;color:#065f46}.badge.danger{background-color:#fee2e2;color:#991b1b}.badge.warning{background-color:#fef3c7;color:#92400e}.action-process{padding:calc(6px * var(--scale)) calc(8px * var(--scale));border-radius:calc(8px * var(--scale));background:#5b7cff;color:#fff;font-weight:600;font-size:calc(12px * var(--scale));border:none;cursor:pointer}.tag-item{background:#f1f5f9;color:#475569;padding:calc(5px * var(--scale)) calc(12px * var(--scale));border-radius:calc(8px * var(--scale));font-size:calc(12px * var(--scale));display:inline-block;margin:3px;font-weight:600}.tag-item-fav{background:#fef9c3;color:#854d0e;padding:calc(5px * var(--scale)) calc(12px * var(--scale));border-radius:calc(8px * var(--scale));font-size:calc(12px * var(--scale));border:1px solid #fde047;display:inline-block;margin:3px}.sidebar-logo{margin-bottom:calc(45px * var(--scale));text-align:center;font-size:calc(1.35rem * var(--scale));font-weight:900;letter-spacing:-1px;color:#fff}.sidebar-nav button{width:100%;padding:calc(14px * var(--scale)) calc(18px * var(--scale));text-align:left;background:none;border:none;color:#94a3b8;font-size:calc(15px * var(--scale));cursor:pointer;transition:all .25s;border-radius:calc(12px * var(--scale));margin-bottom:calc(8px * var(--scale));font-weight:500}.sidebar-nav button:hover{color:#fff;background-color:#1e293b}.sidebar-nav button.active{color:#fff;background-color:var(--primary-blue);font-weight:700;box-shadow:0 4px 12px #6366f166}.sub-menu-list{background-color:#0f172a;padding:calc(8px * var(--scale)) 0;border-radius:calc(12px * var(--scale));margin-bottom:calc(15px * var(--scale));border:1px solid #1e293b}.sub-menu-list button{padding:calc(10px * var(--scale)) calc(20px * var(--scale)) calc(10px * var(--scale)) calc(45px * var(--scale))!important;font-size:calc(13px * var(--scale))!important;color:#64748b!important;margin-bottom:2px}.sub-menu-list button.active{color:#818cf8!important;background-color:transparent!important;font-weight:700}.admin-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f172abf;backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:center;z-index:9999}.admin-modal{background:#fff;padding:calc(40px * var(--scale));border-radius:calc(24px * var(--scale));width:calc(520px * var(--scale));max-width:90%;box-shadow:0 25px 50px -12px #0006;animation:modalPop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modalPop{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.form-group{display:flex;flex-direction:column;gap:calc(10px * var(--scale));margin-bottom:calc(25px * var(--scale));text-align:left}.form-group label{font-size:calc(.95rem * var(--scale));font-weight:700;color:var(--text-main);margin-left:4px}.admin-file-input-wrapper{background-color:#f8fafc;padding:calc(20px * var(--scale));border-radius:calc(16px * var(--scale));border:2px dashed #cbd5e1;display:flex;align-items:center;gap:calc(15px * var(--scale));transition:all .2s ease;cursor:pointer}.file-label{padding:calc(8px * var(--scale)) calc(16px * var(--scale));background-color:var(--primary-blue);color:#fff;border-radius:calc(8px * var(--scale));font-size:calc(13px * var(--scale));font-weight:700;white-space:nowrap}.file-name-display{font-size:calc(14px * var(--scale));color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-container{position:relative;display:inline-block;margin-top:calc(15px * var(--scale));padding:calc(8px * var(--scale));background:#fff;border-radius:calc(12px * var(--scale));box-shadow:0 4px 12px #00000014;border:1px solid var(--border-light)}.image-preview-img{display:block;max-width:calc(250px * var(--scale));max-height:calc(150px * var(--scale));border-radius:calc(8px * var(--scale));object-fit:cover}.remove-img-btn{position:absolute;top:-10px;right:-10px;width:calc(26px * var(--scale));height:calc(26px * var(--scale));background-color:var(--danger-red);color:#fff;border:2px solid white;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:calc(12px * var(--scale))}.btn-submit{background:linear-gradient(135deg,var(--primary-blue) 0%,#4f46e5 100%);color:#fff;border:none;padding:calc(18px * var(--scale));border-radius:calc(16px * var(--scale));font-weight:800;font-size:calc(16px * var(--scale));cursor:pointer;box-shadow:0 8px 20px #6366f133;margin-top:calc(10px * var(--scale));transition:all .2s}.btn-submit:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 12px 25px #6366f14d}.btn-submit:disabled{background:#cbd5e1;cursor:not-allowed}.editor-wrapper .rc-md-editor{border:2px solid #e2e8f0!important}button{transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-refresh{background:#fff;border:1px solid var(--border-light);padding:7.5px 15px;border-radius:7.5px;font-size:14.4px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:7.5px;box-shadow:0 2px 4px #00000005;text-align:center}.btn-refresh:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px)}.edit-btn{background:#eef2ff;color:var(--primary-blue);border:1px solid #e0e7ff;padding:calc(6px * var(--scale)) calc(14px * var(--scale));border-radius:calc(8px * var(--scale));font-weight:700;margin-right:calc(8px * var(--scale));border:none;cursor:pointer}.edit-btn:hover{background:var(--primary-blue);color:#fff}.delete-btn{background:#fff1f2;color:var(--danger-red);border:1px solid #ffe4e6;padding:calc(6px * var(--scale)) calc(14px * var(--scale));border-radius:calc(8px * var(--scale));font-weight:700;border:none;cursor:pointer}.delete-btn:hover{background:var(--danger-red);color:#fff}.notice-type-badge{display:inline-block;padding:3px 8px;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap}.notice-type-badge.alarm{background:#fff3cd;color:#856404;border:1px solid #ffc107}.notice-type-badge.notice{background:#e8f4fd;color:#1565c0;border:1px solid #90caf9}.td-author{color:#64748b;font-size:.85rem;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-resolve{background:var(--success-green);color:#fff;border:none;padding:calc(14px * var(--scale)) calc(24px * var(--scale));border-radius:calc(12px * var(--scale));cursor:pointer;font-weight:700}.btn-reject{background:var(--danger-red);color:#fff;border:none;padding:calc(14px * var(--scale)) calc(24px * var(--scale));border-radius:calc(12px * var(--scale));cursor:pointer;font-weight:700}.btn-close{background:#64748b;color:#fff;border:none;padding:calc(14px * var(--scale)) calc(24px * var(--scale));border-radius:calc(12px * var(--scale));cursor:pointer;font-weight:700}.admin-loading{display:flex;justify-content:center;align-items:center;height:calc(300px * var(--scale));font-weight:700;color:var(--primary-blue)}.admin-loading:after{content:"";width:calc(28px * var(--scale));height:calc(28px * var(--scale));margin-left:calc(15px * var(--scale));border:calc(4px * var(--scale)) solid #f1f5f9;border-top:calc(4px * var(--scale)) solid var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite}.user-detail-panel .info-actions{margin-top:auto;padding-top:20px;display:flex;flex-direction:column;gap:12px}.btn-force-logout{width:100%;padding:12px;background-color:#636e72;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-force-logout:hover{background-color:#2d3436;transform:translateY(-1px)}.btn-force-logout:active{transform:translateY(0)}.btn-reject,.btn-resolve{width:100%;padding:12px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.btn-modal-cancel{color:#636e72;background-color:#f1f2f6;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer}.btn-modal-cancel:hover{background-color:#dfe4ea}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1200px){.admin-layout{flex-direction:column!important;height:auto!important;overflow-y:auto!important}.admin-sidebar{width:100%!important;height:auto!important;padding:1rem!important}.admin-main{width:100%!important;padding:20px 15px!important;display:block!important;overflow-x:hidden}.admin-table-wrapper{width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;background:#fff;margin-top:15px}.admin-table{min-width:500px}.admin-table td,.admin-table th{padding:12px 8px!important;font-size:12px!important}.stats-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important}.stat-card{width:100%!important;max-width:none!important;margin:0!important}.admin-section{width:100%!important;padding:15px!important;margin-bottom:20px!important}.admin-input-premium,.admin-textarea-premium{font-size:16px!important}.edit-btn,.delete-btn{padding:6px 10px!important;font-size:11px!important}}.admin-form{display:flex;flex-direction:column;gap:calc(20px * var(--scale))}.admin-file-input-wrapper{background-color:#f8fafc;padding:calc(30px * var(--scale));border-radius:calc(16px * var(--scale));border:2px dashed #cbd5e1;display:flex;flex-direction:column;align-items:center;gap:calc(15px * var(--scale));transition:all .2s}.admin-file-input-wrapper:hover{border-color:var(--primary-blue);background-color:#f1f5ff}.file-label{display:inline-block;padding:calc(12px * var(--scale)) calc(24px * var(--scale));background-color:var(--primary-blue);color:#fff;border-radius:calc(10px * var(--scale));cursor:pointer;font-size:calc(14px * var(--scale));font-weight:700;box-shadow:0 4px 10px #6366f133}#notice-image{display:none}.preview-container{position:relative;display:inline-block;margin-top:calc(15px * var(--scale));padding:calc(8px * var(--scale));background:#fff;border-radius:calc(16px * var(--scale));box-shadow:0 10px 20px #0000001a;border:1px solid var(--border-light)}.image-preview-img{display:block;max-width:calc(200px * var(--scale));border-radius:calc(10px * var(--scale));object-fit:cover}.remove-img-btn{position:absolute;top:-12px;right:-12px;width:calc(28px * var(--scale));height:calc(28px * var(--scale));background-color:var(--danger-red)!important;color:#fff!important;border:3px solid white;border-radius:50%;font-size:calc(14px * var(--scale));font-weight:900;cursor:pointer;box-shadow:0 2px 8px #0003}.admin-form button[type=submit]{background:linear-gradient(135deg,var(--primary-blue) 0%,#4f46e5 100%);color:#fff;border:none;padding:calc(18px * var(--scale));border-radius:calc(16px * var(--scale));font-weight:800;font-size:calc(17px * var(--scale));cursor:pointer;box-shadow:0 8px 15px #6366f140;margin-top:calc(10px * var(--scale))}.admin-form button[type=submit]:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 20px #6366f159;filter:brightness(1.1)}.admin-form button[type=submit]:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed}.admin-form .form-group{display:flex;flex-direction:column;gap:calc(12px * var(--scale));margin-bottom:calc(24px * var(--scale))}.admin-form label{font-size:calc(.9rem * var(--scale));font-weight:800;color:var(--text-main);letter-spacing:-.5px}.admin-input-premium{width:100%;padding:calc(16px * var(--scale)) calc(20px * var(--scale));border:2px solid #eef2f6;border-radius:calc(14px * var(--scale));background-color:#fcfdfe;font-size:calc(15px * var(--scale));color:var(--text-main);transition:all .3s cubic-bezier(.4,0,.2,1)}.admin-input-premium:focus{outline:none;border-color:var(--primary-blue);background-color:#fff;box-shadow:0 10px 20px #6366f11a;transform:translateY(-1px)}.admin-textarea-premium{width:100%;padding:calc(16px * var(--scale)) calc(20px * var(--scale));border:2px solid #eef2f6;border-radius:calc(14px * var(--scale));background-color:#fcfdfe;font-size:calc(15px * var(--scale));color:var(--text-main);resize:none;line-height:1.6;transition:all .3s cubic-bezier(.4,0,.2,1)}.admin-textarea-premium:focus{outline:none;border-color:var(--primary-blue);background-color:#fff;box-shadow:0 10px 20px #6366f11a;transform:translateY(-1px)}.admin-file-box{display:flex;align-items:center;padding:calc(15px * var(--scale)) calc(20px * var(--scale));background:#f8fafc;border:2px dashed #cbd5e1;border-radius:calc(14px * var(--scale));cursor:pointer;gap:calc(12px * var(--scale));transition:.2s}.admin-file-box:hover{background:#f1f5ff;border-color:var(--primary-blue)}.admin-file-box .upload-icon{font-size:calc(1.2rem * var(--scale))}.admin-file-box .file-msg{font-size:calc(14px * var(--scale));color:var(--text-muted);font-weight:500}.preview-container-mini{position:relative;width:fit-content;margin-top:calc(10px * var(--scale))}.preview-container-mini img{width:calc(120px * var(--scale));height:calc(120px * var(--scale));object-fit:cover;border-radius:calc(12px * var(--scale));border:1px solid var(--border-light)}.preview-container-mini button{position:absolute;top:-8px;right:-8px;width:calc(24px * var(--scale));height:calc(24px * var(--scale));background:var(--danger-red);color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:calc(10px * var(--scale))}.btn-push-submit{width:100%;padding:calc(18px * var(--scale));background:linear-gradient(135deg,var(--primary-blue) 0%,#4f46e5 100%);color:#fff;border:none;border-radius:calc(16px * var(--scale));font-weight:800;font-size:calc(1.05rem * var(--scale));cursor:pointer;box-shadow:0 8px 25px #6366f14d;transition:.3s}.btn-push-submit:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 12px 30px #6366f166}.form-group{display:flex;flex-direction:column;align-items:flex-start;width:100%}.admin-input-premium,.admin-textarea-premium{width:100%!important;box-sizing:border-box}.admin-header-inline{margin-bottom:calc(20px * var(--scale))}.admin-header-inline p{font-size:calc(.85rem * var(--scale));color:var(--text-muted);margin-top:calc(-15px * var(--scale))}.admin-form{display:flex;flex-direction:column;gap:calc(10px * var(--scale));margin-bottom:calc(25px * var(--scale));text-align:left}.admin-form{display:flex;flex-direction:column;gap:calc(10px * var(--scale));padding:calc(10px * var(--scale)) calc(5px * var(--scale))}.admin-form label{display:block;font-size:calc(14px * var(--scale));font-weight:700;color:var(--text-main);margin-bottom:calc(4px * var(--scale));margin-top:calc(10px * var(--scale))}.admin-select{width:100%;padding:calc(12px * var(--scale)) calc(15px * var(--scale));border:1px solid #e2e8f0;border-radius:calc(10px * var(--scale));background-color:#fff;font-size:calc(14px * var(--scale));color:var(--text-main);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(15px * var(--scale)) center;background-size:calc(16px * var(--scale));transition:all .2s ease}.admin-select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #4e73df26}.admin-textarea{width:100%;height:calc(120px * var(--scale));padding:calc(15px * var(--scale));border:1px solid #e2e8f0;border-radius:calc(10px * var(--scale));font-size:calc(14px * var(--scale));font-family:inherit;resize:none;transition:all .2s ease;line-height:1.6}.admin-textarea:focus{outline:none;border-color:var(--danger-red);box-shadow:0 0 0 3px #e74a3b1a}.admin-textarea::placeholder{color:#cbd5e1}.unban-confirm-text{text-align:center;padding:calc(30px * var(--scale)) 0;font-size:calc(16px * var(--scale));font-weight:600;color:var(--text-main);background:#f8fafc;border-radius:calc(12px * var(--scale));margin:calc(10px * var(--scale)) 0}.dashboard-middle-row{display:grid;grid-template-columns:1fr 1fr;gap:calc(20px * var(--scale));margin-bottom:calc(20px * var(--scale))}.ranking-vertical-group{display:flex;flex-direction:column;gap:calc(20px * var(--scale))}.rank-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.rank-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#f8fafc;border-radius:10px;font-size:.95rem;color:#1e293b}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-weight:700;font-size:.85rem;flex-shrink:0}.rank-badge.rank-1{background:#fef9c3;color:#854d0e;font-size:1.2rem;background:none}.rank-badge.rank-2{background:#f1f5f9;color:#475569;font-size:1.2rem;background:none}.rank-badge.rank-3{background:#fff7ed;color:#9a3412;font-size:1.2rem;background:none}.rank-badge.rank-4,.rank-badge.rank-5{background:#e2e8f0;color:#475569}.admin-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.chart-container-main{background:var(--card-white);padding:calc(30px * var(--scale));border-radius:calc(20px * var(--scale))}.custom-bar-chart{width:100%;height:calc(250px * var(--scale));display:flex;justify-content:space-around;align-items:flex-end;padding:calc(20px * var(--scale)) calc(10px * var(--scale));box-sizing:border-box;border-bottom:2px solid var(--admin-bg)}.chart-bar-group{display:flex;flex-direction:column;align-items:center;flex:1;height:100%;justify-content:flex-end}.bars-wrapper{display:flex;align-items:flex-end;gap:calc(6px * var(--scale));height:100%;width:100%;justify-content:center;margin-bottom:calc(15px * var(--scale))}.bar-like,.bar-comment{width:calc(14px * var(--scale));min-height:4px;border-radius:calc(4px * var(--scale)) calc(4px * var(--scale)) 0 0;transition:all .5s ease-out}.bar-like{background-color:#3b82f6}.bar-comment{background-color:#10b981}.bar-label{font-size:calc(13px * var(--scale));color:var(--text-muted);font-weight:700;white-space:nowrap}.legend-item{display:flex;align-items:center;gap:calc(6px * var(--scale));font-size:calc(.85rem * var(--scale));font-weight:600}.chart-container-main{background:#fff;padding:calc(25px * var(--scale));border-radius:calc(20px * var(--scale));margin-bottom:calc(30px * var(--scale));box-shadow:0 4px 15px #0000000d}.chart-legend-top{display:flex;gap:calc(15px * var(--scale))}.dot-blue{width:calc(10px * var(--scale));height:calc(10px * var(--scale));background:#6366f1;border-radius:50%;display:inline-block}.dot-green{width:calc(10px * var(--scale));height:calc(10px * var(--scale));background:#10b981;border-radius:50%;display:inline-block}.btn-refresh.active{border-color:var(--primary-blue);color:var(--primary-blue);animation:bounce 1s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.admin-table tr.just-unbanned{animation:highlight-green 3s ease-out}@keyframes highlight-green{0%{background-color:#d1fae5}to{background-color:transparent}}.role-badge{display:inline-block;padding:2px 8px;border-radius:8px;font-size:10px;font-weight:600;margin-left:8px}.role-badge.admin-only{background-color:#e677001a;color:#e67700;border:1px solid rgba(230,119,0,.3)}.access-denied{text-align:center;padding:60px 20px;color:#868e96}.access-denied-icon{font-size:48px;margin-bottom:20px}.access-denied h2{color:#495057;margin-bottom:10px;font-size:24px}.access-denied p{color:#868e96;font-size:16px}.sidebar-logo p{display:flex;align-items:center;justify-content:center;gap:8px}.group-title{display:flex;align-items:center;justify-content:space-between;width:100%}.group-title .role-badge{margin-left:auto;margin-right:8px}.group-title .arrow{margin-left:auto}.menu-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.badge-admin{background-color:#e67700;color:#fff}.badge-moderator{background-color:#4c6ef5;color:#fff}.badge-user{background-color:#868e96;color:#fff}@media(max-width:768px){.admin-layout{display:flex!important;flex-direction:column!important;height:auto!important;min-height:100vh;padding:0!important;gap:20px!important;overflow-y:auto!important}.admin-container{display:flex;gap:24px;align-items:flex-start;padding:0!important;height:calc(100vh - 100px)}.admin-sidebar{width:100%!important;height:auto!important;padding:1rem!important;box-sizing:border-box}.admin-main{width:100%!important;padding:20px 15px!important;display:block!important;overflow-x:hidden;box-sizing:border-box}.admin-section{background-color:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 12px #0000000d;margin:0;height:100%;box-sizing:border-box}.admin-header,.admin-section h3{width:100%!important;text-align:center!important;margin-bottom:0;padding-bottom:0;font-size:1.25rem;font-weight:700}.admin-header p{word-break:keep-all;font-size:.85rem!important;text-align:center}.stats-grid{width:100%!important;display:flex!important;flex-direction:column!important;gap:12px!important;align-items:center!important}.stat-card{width:90%!important;max-width:350px!important;padding:15px 20px!important;margin:0 auto!important;text-align:center!important;justify-content:center!important}.stat-info{display:flex;flex-direction:column;align-items:center}.admin-section{width:100%!important;padding:10px!important;margin-bottom:20px!important;box-sizing:border-box!important;flex:none!important}.dashboard-middle-row{display:flex!important;flex-direction:column!important;gap:20px!important}.btn-refresh{background:#fff;padding:7.5px 15px;border-radius:7.5px;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;box-shadow:0 2px 4px #00000005;height:40px!important;width:120px!important}.admin-table-wrapper{width:100%!important;overflow-x:hidden!important;background:#fff;margin-top:15px;border-radius:8px}.admin-table{min-width:100%!important;table-layout:fixed!important;width:100%!important}.admin-table th:nth-child(1),.admin-table td:nth-child(1){width:45%!important;white-space:nowrap}.nmandem{flex:1;min-width:0;display:flex;flex-direction:column!important;overflow:hidden}.nmandem div{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;width:100%}.user-mgmt-page{flex-direction:column;overflow:hidden}.admin-table th:nth-child(2),.admin-table td:nth-child(2){width:14%!important;font-size:10px!important}.admin-table th:nth-child(3),.admin-table td:nth-child(3){width:14%!important}.btn-view-small{font-size:10px!important}.user-detail-panel{display:flex!important;flex-direction:column!important;align-items:center!important;gap:3.5px!important}.profile-card{display:flex;flex-direction:column;align-items:center;padding:20px 25px 10px;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:20px;margin-bottom:0;border:.6px solid #f1f2f6;box-shadow:0 10px 20px #00000005}.profile-card img{margin:0}.info-group{margin-bottom:1px}.info-group label{margin-bottom:0;text-align:center}.user-detail-panel div{padding-top:10px!important}.admin-table th:nth-child(4),.admin-table td:nth-child(4){width:13%!important}.admin-table th:nth-child(5),.admin-table td:nth-child(5){width:14%!important}.admin-table td,.admin-table th{padding:8px 4px!important;font-size:11px!important;white-space:normal!important;word-break:break-all!important;text-align:center;vertical-align:middle}.admin-table td:first-child{text-align:left;display:flex;align-items:center;gap:5px}.admin-table td img{width:24px!important;height:24px!important;min-width:24px}.badge{padding:2px 4px!important;font-size:9px!important}.user-detail-panel{display:flex!important;flex-direction:column!important;align-items:center!important;gap:15px}.info-group div{justify-content:center!important}.admin-input-premium,.admin-textarea-premium,.admin-section input[type=text],.admin-section textarea{width:100%!important;max-width:100%!important;font-size:16px!important;padding:12px!important;margin-bottom:10px!important;box-sizing:border-box}.btn-submit,.btn-push-submit{width:100%!important;padding:14px!important;font-size:1rem!important}.edit-btn,.delete-btn{padding:3px 5px!important;font-size:10px!important;align-items:center}.admin-file-box,.admin-file-input-wrapper{width:100%!important;padding:15px!important;flex-direction:column!important;gap:10px!important;text-align:center}.admin-table2{min-width:100%!important;table-layout:fixed!important;width:100%!important}.admin-table2 th:nth-child(1),.admin-table2 td:nth-child(1){width:7%!important}.admin-table2 th:nth-child(2),.admin-table2 td:nth-child(2){width:14%!important}.admin-table2 th:nth-child(3),.admin-table2 td:nth-child(3){width:30%!important}.admin-table2 th:nth-child(4),.admin-table2 td:nth-child(4){width:20%!important}.admin-table2 th:nth-child(5),.admin-table2 td:nth-child(5){width:13%!important}.admin-table2 th:nth-child(6),.admin-table2 td:nth-child(6){width:16%!important}.td-action{justify-items:center}}.tt-admin-selector{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.tt-admin-selector-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tt-admin-selector-label{font-size:.82rem;font-weight:700;color:#64748b;margin-right:4px}.tt-admin-dept-badge{display:inline-block;padding:4px 12px;border-radius:999px;background:#eff6ff;color:#2563eb;font-size:.82rem;font-weight:600;border:1px solid #bfdbfe}.tt-admin-cls-btn{padding:6px 14px;border-radius:8px;border:1.5px solid #e2e8f0;background:#f8fafc;color:#475569;font-size:.83rem;font-weight:600;cursor:pointer;transition:all .15s}.tt-admin-cls-btn:hover{border-color:#6366f1;color:#6366f1}.tt-admin-cls-btn.active{background:#6366f1;border-color:#6366f1;color:#fff}.tt-admin-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid #e2e8f0;margin-bottom:16px}.tt-admin-table{width:100%;border-collapse:collapse;min-width:480px}.tt-admin-table thead tr{background:#f1f5f9}.tt-admin-period-header,.tt-admin-day-header{padding:10px 8px;font-size:.82rem;font-weight:700;color:#475569;text-align:center;border-bottom:2px solid #e2e8f0}.tt-admin-period-header{width:68px;color:#94a3b8}.tt-admin-table tbody tr:hover{background:#f8fafc}.tt-admin-table tbody tr.even{background:#fafbfc}.tt-admin-period-cell{padding:8px 10px;font-size:.78rem;font-weight:700;color:#94a3b8;text-align:center;border-right:1px solid #f1f5f9;white-space:nowrap}.tt-admin-subject-cell{padding:5px 6px;border-bottom:1px solid #f1f5f9}.tt-admin-cell-with-teacher{display:flex;flex-direction:column;gap:3px}.tt-admin-teacher-select{font-size:.76rem!important;color:#64748b!important;background:#f8fafc!important;padding:3px 6px!important;border-color:#e2e8f0!important}.tt-admin-teacher-select:disabled{opacity:.45;cursor:not-allowed}.tt-admin-teacher-select:focus{border-color:#818cf8!important;background:#fff!important}.tt-admin-input{width:100%;padding:7px 10px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.83rem;font-weight:600;color:#334155;background:#fff;text-align:center;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.tt-admin-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.tt-admin-input::placeholder{color:#cbd5e1;font-weight:400}.tt-admin-msg{padding:12px 16px;border-radius:10px;font-size:.88rem;font-weight:600;margin-top:12px}.tt-admin-msg.success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.tt-admin-msg.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.tt-admin-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.tt-admin-btn-clear{padding:10px 20px;border-radius:10px;border:1.5px solid #e2e8f0;background:#f8fafc;color:#64748b;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .15s}.tt-admin-btn-clear:hover:not(:disabled){border-color:#f87171;color:#dc2626;background:#fff5f5}.tt-admin-btn-clear:disabled{opacity:.5;cursor:not-allowed}.tt-admin-btn-save{padding:10px 28px;font-size:.9rem}.tt-admin-input.dirty{border-color:#f59e0b;background:#fffbeb}.tt-admin-select{width:100%;padding:6px 20px 6px 4px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.8rem;font-weight:600;color:#334155;background:#fff;text-align:center;outline:none;cursor:pointer;transition:border-color .15s,box-shadow .15s;box-sizing:border-box;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%2394a3b8' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}.tt-admin-select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.tt-admin-select.dirty{border-color:#f59e0b;background-color:#fffbeb;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23f59e0b' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E")}.tt-log-table td,.tt-log-table th{font-size:.82rem;padding:8px 10px;white-space:nowrap}.tt-log-date{color:#64748b;font-size:.78rem!important}.tt-log-before{display:inline-block;padding:2px 8px;border-radius:6px;background:#fee2e2;color:#991b1b;font-weight:600;font-size:.8rem}.tt-log-after{display:inline-block;padding:2px 8px;border-radius:6px;background:#dcfce7;color:#166534;font-weight:600;font-size:.8rem}.tt-log-admin{font-weight:700;color:#4f46e5}@media(max-width:600px){.tt-admin-selector{gap:10px}.tt-admin-input{padding:6px 4px;font-size:.75rem}.tt-admin-period-header{width:50px}}.tm-tag-wrap{position:relative;min-width:160px}.tm-tags{display:flex;flex-wrap:wrap;gap:4px;align-items:center;min-height:34px;padding:4px 8px;border:1.5px solid #e2e8f0;border-radius:8px;background:#fff;cursor:text;transition:border-color .15s}.tm-tags:focus-within{border-color:#818cf8;box-shadow:0 0 0 2px #818cf826}.tm-tag{display:inline-flex;align-items:center;gap:3px;padding:2px 8px 2px 9px;background:#eef2ff;color:#4338ca;border-radius:99px;font-size:.78rem;font-weight:600;white-space:nowrap}.tm-tag-remove{background:none;border:none;padding:0;margin:0;cursor:pointer;font-size:.9rem;color:#818cf8;line-height:1;display:flex;align-items:center}.tm-tag-remove:hover{color:#ef4444}.tm-tag-input{flex:1;min-width:80px;border:none;outline:none;background:transparent;font-size:.82rem;color:#334155;padding:2px 0}.tm-tag-input::placeholder{color:#94a3b8}.tm-dropdown{background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 28px #00000021;z-index:9999;overflow:hidden;max-height:220px;overflow-y:auto}.tm-dropdown-item{padding:8px 14px;font-size:.83rem;color:#334155;cursor:pointer;transition:background .1s}.tm-dropdown-item:hover{background:#f1f5f9}.tm-dropdown-new{color:#6366f1;font-weight:600;border-top:1px solid #f1f5f9}.tm-dropdown-new:hover{background:#eef2ff}.tm-remove-subject{background:none;border:none;cursor:pointer;font-size:1rem;opacity:.4;transition:opacity .15s;padding:4px}.tm-remove-subject:hover{opacity:1}.ov-badge-changed{display:inline-block;padding:1px 7px;background:#fef3c7;color:#b45309;border-radius:99px;font-size:.72rem;font-weight:700;border:1px solid #fde68a;white-space:nowrap}.ov-guide{display:flex;flex-direction:column;gap:6px;padding:12px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:16px;font-size:.82rem;color:#475569}.ov-guide-item{display:flex;align-items:center;gap:10px}.ov-guide-saved{display:inline-block;font-size:.74rem;color:#10b981;font-weight:600;background:#f0fdf4;border:1.5px solid #10b981;border-radius:6px;padding:1px 8px;white-space:nowrap}.ov-empty-state{text-align:center;padding:48px 24px;color:#64748b;font-size:.9rem;display:flex;flex-direction:column;align-items:center;gap:6px}.ov-list{display:flex;flex-direction:column;gap:12px}.ov-row{display:grid;grid-template-columns:100px 1fr 280px;align-items:start;gap:16px;padding:16px 20px;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;transition:border-color .15s,box-shadow .15s}.ov-row-saved{border-color:#6ee7b7;background:#f0fdf4}.ov-row-today{border-color:#c7d2fe}.ov-row-meta{display:flex;flex-direction:column;align-items:center;gap:2px;padding-top:2px}.ov-row-day{font-size:1.1rem;font-weight:800;color:#334155}.ov-row-day.today{color:#4338ca}.ov-row-date{font-size:.78rem;color:#94a3b8}.ov-row-period{font-size:.8rem;font-weight:600;color:#64748b;background:#f1f5f9;border-radius:6px;padding:2px 8px;margin-top:4px}.ov-row-change{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:4px}.ov-row-before{font-size:.85rem;color:#94a3b8;text-decoration:line-through}.ov-row-arrow{color:#cbd5e1;font-size:.9rem}.ov-row-after{font-size:.95rem;font-weight:700;color:#1e293b}.ov-row-teacher{display:flex;flex-direction:column;gap:6px}.ov-row-teacher-label{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.ov-input-row{display:flex;gap:6px;align-items:center}.ov-teacher-input{flex:1;padding:7px 10px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.85rem;color:#334155;background:#fff;outline:none;min-width:0;transition:border-color .15s}.ov-teacher-input:focus{border-color:#818cf8}.ov-teacher-input.ov-saved{border-color:#10b981;background:#f0fdf4}.ov-save-btn{padding:7px 14px;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.82rem;font-weight:600;background:#f8fafc;color:#475569;cursor:pointer;white-space:nowrap;transition:all .15s}.ov-save-btn:hover:not(:disabled){background:#eef2ff;border-color:#818cf8;color:#4338ca}.ov-save-btn.saved{background:#f0fdf4;border-color:#10b981;color:#059669}.ov-save-btn:disabled{opacity:.5;cursor:not-allowed}.ov-row-saved-info{font-size:.76rem;color:#059669}.ov-base-preset-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ov-preset-btn{padding:5px 12px;border-radius:6px;border:1.5px solid #e2e8f0;background:#f8fafc;color:#475569;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.ov-preset-btn:hover:not(:disabled){border-color:#6366f1;color:#6366f1;background:#eef2ff}.ov-preset-btn.active{background:#6366f1;color:#fff;border-color:#6366f1}.ov-preset-btn:disabled{opacity:.5;cursor:not-allowed}.ov-reset-btn{padding:3px 10px;border-radius:5px;border:1px solid #e2e8f0;background:#f8fafc;color:#94a3b8;font-size:.75rem;cursor:pointer;transition:all .15s}.ov-reset-btn:hover:not(:disabled){border-color:#ef4444;color:#ef4444;background:#fef2f2}.ov-reset-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.ov-row{grid-template-columns:1fr;gap:10px}.ov-row-meta{flex-direction:row;align-items:center;gap:8px}}@font-face{font-family:rmel-iconfont;src:url(data:application/vnd.ms-fontobject;base64,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NS4BJyMOAd0VGwEBGxWRFRsbFWEcFBQcYRUbGxWRFRsBARsCK2EVGxsVkRUbAQEbKRySARsVYRwpGwEBGxWRFRsBHwEbFZEVGwEBGykcYRUbwwEbFWEcKRsBARsVkRUb/qscKRsBARsVkRUbGxUBtRQcYRUbGxWRFRsBARsAAAAAAAASAN4AAQAAAAAAAAAVAAAAAQAAAAAAAQANABUAAQAAAAAAAgAHACIAAQAAAAAAAwANACkAAQAAAAAABAANADYAAQAAAAAABQALAEMAAQAAAAAABgANAE4AAQAAAAAACgArAFsAAQAAAAAACwATAIYAAwABBAkAAAAqAJkAAwABBAkAAQAaAMMAAwABBAkAAgAOAN0AAwABBAkAAwAaAOsAAwABBAkABAAaAQUAAwABBAkABQAWAR8AAwABBAkABgAaATUAAwABBAkACgBWAU8AAwABBAkACwAmAaUKQ3JlYXRlZCBieSBpY29uZm9udApybWVsLWljb25mb250UmVndWxhcnJtZWwtaWNvbmZvbnRybWVsLWljb25mb250VmVyc2lvbiAxLjBybWVsLWljb25mb250R2VuZXJhdGVkIGJ5IHN2ZzJ0dGYgZnJvbSBGb250ZWxsbyBwcm9qZWN0Lmh0dHA6Ly9mb250ZWxsby5jb20ACgBDAHIAZQBhAHQAZQBkACAAYgB5ACAAaQBjAG8AbgBmAG8AbgB0AAoAcgBtAGUAbAAtAGkAYwBvAG4AZgBvAG4AdABSAGUAZwB1AGwAYQByAHIAbQBlAGwALQBpAGMAbwBuAGYAbwBuAHQAcgBtAGUAbAAtAGkAYwBvAG4AZgBvAG4AdABWAGUAcgBzAGkAbwBuACAAMQAuADAAcgBtAGUAbAAtAGkAYwBvAG4AZgBvAG4AdABHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAAAAgAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAQIBAwEEAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgETARQBFQEWARcBGAEZARoBGwADdGFiCGtleWJvYXJkBmRlbGV0ZQpjb2RlLWJsb2NrBGNvZGUKdmlzaWJpbGl0eQp2aWV3LXNwbGl0BGxpbmsEcmVkbwR1bmRvBGJvbGQGaXRhbGljDGxpc3Qtb3JkZXJlZA5saXN0LXVub3JkZXJlZAVxdW90ZQ1zdHJpa2V0aHJvdWdoCXVuZGVybGluZQR3cmFwCWZvbnQtc2l6ZQRncmlkBWltYWdlC2V4cGFuZC1sZXNzC2V4cGFuZC1tb3JlD2Z1bGxzY3JlZW4tZXhpdApmdWxsc2NyZWVuAAAAAAA=);src:url(data:font/ttf;base64,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)format("truetype")}.rmel-iconfont{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;font-style:normal;font-family:rmel-iconfont!important}.rmel-icon-tab:before{content:""}.rmel-icon-keyboard:before{content:""}.rmel-icon-delete:before{content:""}.rmel-icon-code-block:before{content:""}.rmel-icon-code:before{content:""}.rmel-icon-visibility:before{content:""}.rmel-icon-view-split:before{content:""}.rmel-icon-link:before{content:""}.rmel-icon-redo:before{content:""}.rmel-icon-undo:before{content:""}.rmel-icon-bold:before{content:""}.rmel-icon-italic:before{content:""}.rmel-icon-list-ordered:before{content:""}.rmel-icon-list-unordered:before{content:""}.rmel-icon-quote:before{content:""}.rmel-icon-strikethrough:before{content:""}.rmel-icon-underline:before{content:""}.rmel-icon-wrap:before{content:""}.rmel-icon-font-size:before{content:""}.rmel-icon-grid:before{content:""}.rmel-icon-image:before{content:""}.rmel-icon-expand-less:before{content:""}.rmel-icon-expand-more:before{content:""}.rmel-icon-fullscreen-exit:before{content:""}.rmel-icon-fullscreen:before{content:""}.rc-md-editor{box-sizing:border-box;background:#fff;border:1px solid #e0e0e0;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding-bottom:1px;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.rc-md-editor.full{z-index:1000;width:100%;position:fixed;top:0;left:0;height:100%!important}.rc-md-editor .editor-container{-webkit-flex:1;-ms-flex:1;flex:1;width:100%;min-height:0;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.rc-md-editor .editor-container>.section{border-right:1px solid #e0e0e0;-webkit-flex:1px;-ms-flex:1px;flex:1px}.rc-md-editor .editor-container>.section.in-visible{display:none}.rc-md-editor .editor-container>.section>.section-container{padding:10px 15px 15px}.rc-md-editor .editor-container>.section:last-child{border-radius:none}.rc-md-editor .editor-container .sec-md{min-width:0;min-height:0}.rc-md-editor .editor-container .sec-md .input{box-sizing:border-box;resize:none;color:#333;background:#fff;border:none;outline:none;width:100%;height:100%;min-height:0;font-size:14px;line-height:1.7;display:block;overflow-y:scroll}.rc-md-editor .editor-container .sec-html{min-width:0;min-height:0}.rc-md-editor .editor-container .sec-html .html-wrap{box-sizing:border-box;height:100%;overflow:auto}.custom-html-style{color:#333}.custom-html-style h1{border:none;margin:32px 0;padding:0;font-size:32px;font-weight:700;line-height:1.2}.custom-html-style h2{border:none;margin:24px 0;padding:0;font-size:24px;font-weight:700;line-height:1.7}.custom-html-style h3{border:none;margin:18px 0;padding:0;font-size:18px;line-height:1.7}.custom-html-style p{margin:8px 0;font-size:14px;line-height:1.7}.custom-html-style a{color:#0052d9}.custom-html-style a:hover{text-decoration:none}.custom-html-style strong{font-weight:700}.custom-html-style ol,.custom-html-style ul{padding-left:36px;font-size:14px;line-height:28px}.custom-html-style li{margin-bottom:8px;line-height:1.7}.custom-html-style hr{border:0;border-top:1px solid #eee;margin-top:20px;margin-bottom:20px}.custom-html-style pre{word-break:break-word;background-color:#f5f5f5;border-radius:0;padding:20px;font-size:14px;line-height:28px;display:block;overflow-x:auto}.custom-html-style code{word-break:normal;background-color:#f5f5f5;border-radius:0;margin:0;padding:3px 0;font-size:14px;overflow-x:auto}.custom-html-style code:after,.custom-html-style code:before{letter-spacing:0}.custom-html-style blockquote{color:#333;background:#6680990d;border:none;border-left:10px solid #d6dbdf;margin:16px 0;padding:5px 8px 5px 30px;position:relative}.custom-html-style img,.custom-html-style video{max-width:100%}.custom-html-style table{border-collapse:collapse;border-spacing:0;box-sizing:border-box;border:1px solid #f6f6f6;max-width:100%;font-size:14px;line-height:1.7;overflow:auto}.custom-html-style table td,.custom-html-style table th{word-break:break-all;word-wrap:break-word;white-space:normal}.custom-html-style table tr{border:1px solid #efefef}.custom-html-style table tr:nth-child(2n){background-color:transparent}.custom-html-style table th{text-align:center;word-break:break-word;background-color:#f5f7fa;border:1px solid #efefef;padding:10px 6px;font-weight:700}.custom-html-style table td{text-align:left;word-break:break-word;border:1px solid #efefef;min-width:60px;padding:10px 15px}.rc-md-editor .drop-wrap{z-index:2;text-align:center;background-color:#fff;border:1px solid #ddd;border-color:#f1f1f1 #ddd #ddd #f1f1f1;min-width:20px;padding:10px 0;display:block;position:absolute;top:28px;left:0}.rc-md-editor .drop-wrap.hidden{display:none!important}.rc-md-editor .rc-md-navigation{box-sizing:border-box;-webkit-user-select:none;-ms-user-select:none;user-select:none;background:#f5f5f5;border-bottom:1px solid #e0e0e0;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;min-height:38px;padding:0 8px;font-size:16px;display:-webkit-flex;display:-ms-flexbox;display:flex}.rc-md-editor .rc-md-navigation.in-visible{display:none}.rc-md-editor .rc-md-navigation .navigation-nav{color:#757575;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;font-size:14px;display:-webkit-flex;display:-ms-flexbox;display:flex}.rc-md-editor .rc-md-navigation .button-wrap{-webkit-flex-flow:wrap;-ms-flex-flow:wrap;flex-flow:wrap;display:-webkit-flex;display:-ms-flexbox;display:flex}.rc-md-editor .rc-md-navigation .button-wrap .button{cursor:pointer;text-align:center;color:#757575;min-width:24px;height:28px;margin-left:3px;margin-right:3px;line-height:28px;display:inline-block;position:relative}.rc-md-editor .rc-md-navigation .button-wrap .button:hover{color:#212121}.rc-md-editor .rc-md-navigation .button-wrap .button.disabled{color:#bdbdbd;cursor:not-allowed}.rc-md-editor .rc-md-navigation .button-wrap .button:first-child{margin-left:0}.rc-md-editor .rc-md-navigation .button-wrap .button:last-child{margin-right:0}.rc-md-editor .rc-md-navigation .button-wrap .rmel-iconfont{font-size:18px}.rc-md-editor .rc-md-navigation ul,.rc-md-editor .rc-md-navigation li{margin:0;padding:0;list-style:none}.rc-md-editor .rc-md-navigation h1,.rc-md-editor .rc-md-navigation h2,.rc-md-editor .rc-md-navigation h3,.rc-md-editor .rc-md-navigation h4,.rc-md-editor .rc-md-navigation h5,.rc-md-editor .rc-md-navigation h6,.rc-md-editor .rc-md-navigation .h1,.rc-md-editor .rc-md-navigation .h2,.rc-md-editor .rc-md-navigation .h3,.rc-md-editor .rc-md-navigation .h4,.rc-md-editor .rc-md-navigation .h5,.rc-md-editor .rc-md-navigation .h6{color:inherit;margin:0;padding:0;font-family:inherit;font-weight:500;line-height:1.1}.rc-md-editor .rc-md-navigation h1{font-size:34px}.rc-md-editor .rc-md-navigation h2{font-size:30px}.rc-md-editor .rc-md-navigation h3{font-size:24px}.rc-md-editor .rc-md-navigation h4{font-size:18px}.rc-md-editor .rc-md-navigation h5{font-size:14px}.rc-md-editor .rc-md-navigation h6{font-size:12px}.rc-md-editor .tool-bar{z-index:1;position:absolute;top:8px;right:8px}.rc-md-editor .tool-bar .button{cursor:pointer;text-align:center;color:#999;min-width:24px;height:28px;margin-right:5px;font-size:14px;line-height:28px;display:inline-block}.rc-md-editor .tool-bar .button:hover{color:#333}.rc-md-editor .rc-md-divider{background-color:#e0e0e0;width:1px;display:block}.rc-md-editor .table-list.wrap{box-sizing:border-box;margin:0 10px;position:relative}.rc-md-editor .table-list.wrap .list-item{background-color:#e0e0e0;border-radius:3px;width:20px;height:20px;display:inline-block;position:absolute;top:0;left:0}.rc-md-editor .table-list.wrap .list-item.active{background:#9e9e9e}.rc-md-editor .tab-map-list .list-item{box-sizing:border-box;width:120px}.rc-md-editor .tab-map-list .list-item:hover{background:#f5f5f5}.rc-md-editor .tab-map-list .list-item.active{font-weight:700}.rc-md-editor .header-list .list-item{box-sizing:border-box;width:100px;padding:8px 0}.rc-md-editor .header-list .list-item:hover{background:#f5f5f5}.admin-form .input-group{display:flex;flex-direction:column;gap:10px;margin-bottom:25px}.admin-form .input-group label{font-size:.95rem;font-weight:700;color:var(--text-main);margin-left:4px}.admin-form .input-group input[type=text]{width:100%;padding:14px 18px;border:2px solid #e2e8f0;border-radius:12px;font-size:15px;transition:all .2s ease;outline:none}.admin-form .input-group input[type=text]:focus{border-color:var(--primary-blue);background-color:#fcfdff;box-shadow:0 0 0 4px #6366f11a}.admin-form .input-group input[type=file]{padding:10px;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;cursor:pointer;font-size:14px;color:var(--text-muted)}.admin-form .input-group input[type=file]::file-selector-button{padding:8px 16px;margin-right:15px;background:var(--primary-blue);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.admin-form .input-group input[type=file]::file-selector-button:hover{background:var(--primary-hover)}.image-preview{display:inline-block;padding:8px;background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;border:1px solid var(--border-light)}.image-preview img{display:block;max-width:100%;height:auto;object-fit:cover}.rc-md-editor{border:2px solid #e2e8f0!important;border-radius:12px!important;overflow:hidden}.rc-md-editor:focus-within{border-color:var(--primary-blue)!important}.btn-send{width:100%;padding:18px;background:linear-gradient(135deg,var(--primary-blue) 0%,#4f46e5 100%);color:#fff;border:none;border-radius:16px;font-size:1.05rem;font-weight:800;cursor:pointer;box-shadow:0 8px 20px #6366f140;transition:all .2s ease}.btn-send:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 12px 25px #6366f159}.btn-send:disabled{background:#cbd5e1;cursor:not-allowed;box-shadow:none}.admin-section.full-width{max-width:1000px;margin:0 auto}.admin-container{display:flex;flex-direction:column;gap:25px;padding:30px;background-color:#f5f7fa;min-height:100vh;box-sizing:border-box}.search-header-section{background:#fff;padding:30px;border-radius:20px;box-shadow:0 4px 15px #00000008}.search-input-group{display:flex;gap:12px;max-width:800px;margin:0 auto}.admin-input-premium{flex:1;padding:15px 20px;border:2px solid #edf2f7;border-radius:12px;font-size:16px;outline:none;transition:all .2s}.admin-input-premium:focus{border-color:#4c6ef5;background-color:#fff;box-shadow:0 0 0 4px #4c6ef51a}.search-section{display:flex;gap:12px}.search-type-select{padding:15px 20px;border:2px solid #edf2f7;border-radius:12px;font-size:16px;min-width:140px;background:#fff;outline:none;transition:all .2s;cursor:pointer}.search-type-select:focus{border-color:#4c6ef5;box-shadow:0 0 0 4px #4c6ef51a}.search-input{flex:1}.search-button{width:120px;padding:15px 20px;background:#4c6ef5;color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:16px;transition:all .2s}.search-button:hover{background:#3b5bdb;transform:translateY(-1px);box-shadow:0 4px 12px #4c6ef54d}.search-button:active{transform:translateY(0)}.dashboard-middle-row,.user-search-layout{display:flex;gap:25px;align-items:flex-start}.admin-table-wrapper,.user-table-section{flex:7;background:#fff;padding:25px;border-radius:20px;box-shadow:0 4px 15px #00000008;min-width:0}.admin-table,.user-table{width:100%;border-collapse:collapse}.admin-table th,.user-table th{padding:15px 10px;border-bottom:2px solid #f8fafc;color:#a0aec0;font-size:13px;text-transform:uppercase;letter-spacing:.5px;text-align:center;font-weight:700}.admin-table td,.user-table td{padding:18px 10px;border-bottom:1px solid #f8fafc;text-align:center}.admin-table tr:hover,.user-table tbody tr:hover{background-color:#fcfdfe;cursor:pointer}.user-cell{display:flex;align-items:center;gap:12px;padding:8px}.user-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid #f8fafc}.user-info{text-align:left;flex:1}.user-name{font-weight:600;color:#2d3748;font-size:14px;margin-bottom:2px}.user-email{font-size:12px;color:#a0aec0}.badge{display:inline-block;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:700;text-align:center}.role-badge{display:inline-block;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:700}.role-badge.admin{background:#fff4e6;color:#e67700}.role-badge.moderator{background:#e7f5ff;color:#1971c2}.role-badge.teacher{background:#ebfbee;color:#2f9e44}.role-badge.user{background:#f1f3f5;color:#495057}.status-badge{display:inline-block;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:700}.status-badge.active{background:#e6fcf5;color:#0ca678}.status-badge.banned{background:#fff5f5;color:#fa5252}.badge.success{background:#e6fcf5;color:#0ca678}.badge.danger{background:#fff5f5;color:#fa5252}.btn-view-small{background:#4c6ef5;color:#fff;border:none;border-radius:8px;padding:8px 16px;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s}.btn-view-small:hover{background:#3b5bdb;transform:translateY(-1px)}.empty-result{padding:60px 20px;color:#cbd5e0;text-align:center;font-size:14px}.user-detail-panel{flex:3;min-width:350px;background:#fff;padding:30px;border-radius:20px;box-shadow:0 4px 15px #00000008;position:sticky;top:25px}.profile-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:25px;background:linear-gradient(135deg,#f8fafc,#edf2f7);border-radius:15px;text-align:center}.profile-avatar{width:90px;height:90px;border-radius:50%;object-fit:cover;border:4px solid white;box-shadow:0 4px 12px #0000001a}.profile-name{margin:8px 0 4px;font-size:20px;font-weight:700;color:#2d3748}.profile-email{font-size:13px;color:#718096;margin-bottom:8px}.profile-role-badge{font-size:14px;padding:8px 18px;margin-top:4px}.info-group{margin:20px 0}.info-label{font-weight:700;display:block;margin-bottom:12px;color:#2d3748;font-size:14px}.info-content{display:flex;flex-wrap:wrap;gap:8px}.allergy-tag{background:#f1f3f5;padding:6px 12px;border-radius:6px;font-size:12px;color:#495057;font-weight:500}.no-info{color:#cbd5e0;font-size:13px;font-style:italic}.divider{border:0;border-top:1px solid #e2e8f0;margin:25px 0}.action-buttons{display:flex;flex-direction:column;gap:12px;margin-top:25px}.btn-change-role{width:100%;padding:14px;background:#4c6ef5;color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:15px;transition:all .2s}.btn-change-role:hover{background:#3b5bdb;transform:translateY(-1px);box-shadow:0 4px 12px #4c6ef54d}.btn-ban{width:100%;padding:14px;background:#fa5252;color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:15px;transition:all .2s}.btn-ban:hover{background:#e03131;transform:translateY(-1px);box-shadow:0 4px 12px #fa52524d}.btn-unban{width:100%;padding:14px;background:#0ca678;color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:15px;transition:all .2s}.btn-unban:hover{background:#099268;transform:translateY(-1px);box-shadow:0 4px 12px #0ca6784d}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px)}.modal-content{background:#fff;padding:35px;border-radius:16px;width:450px;max-width:90%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-title{margin-top:0;margin-bottom:25px;font-size:22px;font-weight:700;color:#2d3748}.modal-user-info{margin-bottom:20px}.modal-label{display:block;margin-bottom:10px;font-weight:600;color:#2d3748;font-size:14px}.modal-current-role{display:block;margin-bottom:10px;color:#718096;font-size:14px}.modal-select{width:100%;padding:12px 16px;border-radius:10px;border:2px solid #e2e8f0;font-size:15px;background:#fff;outline:none;transition:all .2s;cursor:pointer}.modal-select:focus{border-color:#4c6ef5;box-shadow:0 0 0 3px #4c6ef51a}.modal-buttons{display:flex;gap:12px;margin-top:25px}.btn-modal-cancel{flex:1;padding:14px;background:#718096;color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:600;font-size:15px;transition:all .2s}.btn-modal-cancel:hover{background:#4a5568}.btn-modal-cancel:disabled{cursor:not-allowed;opacity:.5}.btn-modal-confirm{flex:1;padding:14px;background:#4c6ef5;color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:600;font-size:15px;transition:all .2s}.btn-modal-confirm:hover{background:#3b5bdb}.btn-modal-confirm:disabled{cursor:not-allowed;opacity:.5}@media(max-width:768px){.admin-container{padding:15px!important;gap:15px!important}.search-header-section{padding:20px!important}.search-section{flex-direction:column}.search-type-select,.search-button{width:100%}.search-input-group{flex-direction:column}.dashboard-middle-row,.user-search-layout{flex-direction:column!important;gap:15px!important}.admin-table-wrapper,.user-table-section,.user-detail-panel{width:100%!important;flex:none!important;position:static!important;padding:15px!important;min-width:0!important}.admin-table,.user-table{table-layout:fixed!important}.admin-table th,.admin-table td,.user-table th,.user-table td{font-size:11px!important;padding:10px 5px!important;white-space:normal!important;word-break:break-all!important}.user-table th:nth-child(1),.user-table td:nth-child(1){width:45%!important}.user-table th:nth-child(2),.user-table td:nth-child(2){width:18%!important}.user-table th:nth-child(3),.user-table td:nth-child(3){width:18%!important}.user-table th:nth-child(4),.user-table td:nth-child(4){width:19%!important}.admin-table td img,.user-avatar{width:28px!important;height:28px!important}.user-cell{gap:8px;padding:4px}.user-name{font-size:12px!important}.user-email{font-size:10px!important}.role-badge,.status-badge,.badge{padding:4px 8px!important;font-size:10px!important}.btn-view-small{padding:6px 10px!important;font-size:11px!important}.user-detail-panel{display:flex!important;flex-direction:column!important;align-items:center!important;padding:20px!important}.profile-card{width:100%;padding:20px!important}.profile-avatar{width:70px!important;height:70px!important}.profile-name{font-size:18px!important}.profile-email{font-size:12px!important}.info-group{width:100%}.info-content{justify-content:center!important}.btn-change-role,.btn-ban,.btn-unban{width:100%!important;padding:14px!important;font-size:15px!important;border-radius:12px!important}.modal-content{width:95%!important;padding:25px!important}.modal-title{font-size:20px!important}.modal-select{font-size:14px!important}.btn-modal-cancel,.btn-modal-confirm{font-size:14px!important;padding:12px!important}.table-user{height:auto!important;width:auto!important}}.admin-section{background:#fff;padding:25px;border-radius:20px;box-shadow:0 4px 15px #00000008}.admin-header{margin-bottom:20px}.admin-header h3{font-size:24px;font-weight:700;color:#2d3748;margin-bottom:8px}.admin-header p{color:#718096;font-size:14px;margin:0}.btn-refresh{padding:15px 20px;background:#4c6ef5;color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;transition:all .2s}.btn-refresh:hover{background:#3b5bdb;transform:translateY(-1px)}.comment-manager-container{padding:20px}.comment-filter-bar{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap;background:#f8f9fa;padding:15px;border-radius:8px;align-items:center}.filter-select,.filter-input,.filter-date{padding:8px;border-radius:4px;border:1px solid #ddd;outline:none}.filter-input{width:180px}.filter-divider{border-left:1px solid #ccc;height:24px;margin:0 5px}.comment-filter-bar button{border:none;padding:8px 15px;border-radius:4px;cursor:pointer;transition:opacity .2s}.comment-filter-bar button:hover{opacity:.8}.btn-search{background:#4e73df;color:#fff}.btn-reset{background:#666;color:#fff}.comment-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000000d;overflow:hidden}.comment-table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed}.comment-table thead{background:#f1f3f5;border-bottom:2px solid #dee2e6}.comment-table th{padding:12px;font-weight:600;text-align:center}.comment-table td{padding:12px;border-bottom:1px solid #f1f1f1;vertical-align:middle}.col-info{width:15%}.col-author{width:20%}.col-content{width:50%}.col-action{width:15%;text-align:center}.info-cell{font-size:.85rem}.meal-type-tag{color:#4e73df;font-weight:700}.author-name{font-weight:600}.author-email{font-size:.75rem;color:#999}.content-cell{line-height:1.5;white-space:pre-wrap;word-break:break-all}.msg-cell{padding:40px;text-align:center}.msg-cell.empty{color:#999}.action-cell{text-align:center}.btn-delete{background:#ff4d4f;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer}.pagination-container{margin-top:20px;display:flex;justify-content:center;gap:5px}.page-btn{padding:6px 12px;border-radius:4px;border:1px solid #ddd;background:#fff;color:#333;cursor:pointer}.page-btn.active{background:#4e73df;color:#fff;border-color:#4e73df}@media(max-width:768px){.comment-filter-bar{flex-direction:column;align-items:stretch;gap:8px;padding:10px}.filter-input,.filter-date,.filter-select{width:100%!important}.filter-divider{display:none}.comment-table,.comment-table thead,.comment-table tbody,.comment-table th,.comment-table td,.comment-table tr{display:block}.comment-table thead{display:none}.comment-table tr{border-bottom:8px solid #f1f3f5;padding:15px;position:relative}.comment-table td{border:none;padding:4px 0;width:100%!important;text-align:left!important}.info-cell{font-size:.8rem;color:#666;margin-bottom:5px}.author-cell{border-bottom:1px dashed #eee;padding-bottom:8px!important;margin-bottom:8px}.content-cell{font-size:.95rem;padding:10px 0!important;color:#333}.action-cell{display:flex;justify-content:flex-end;margin-top:10px}.btn-delete{width:100%;padding:10px;font-size:.9rem}.pagination-container{flex-wrap:wrap}.page-btn{padding:8px 14px;font-size:.9rem}}.push-manager-container{padding:30px;display:flex;justify-content:center}.push-card-premium{background-color:#fff;width:100%;max-width:650px;padding:35px;border-radius:16px;box-shadow:0 10px 40px #00000014;border:1px solid #eeeeee}.push-title{font-size:1.4rem;font-weight:800;margin-bottom:25px;color:#2d3436;text-align:center}.push-label{display:block;font-weight:700;margin-bottom:10px;color:#4b4b4b;font-size:.9rem}.push-toggle-group{display:flex;background-color:#f1f3f5;padding:6px;border-radius:10px;margin-bottom:25px}.push-toggle-group button{flex:1;padding:10px;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;background-color:transparent;color:#868e96;font-weight:600}.push-toggle-group button.active{background-color:#fff;color:#4e73df;box-shadow:0 4px 10px #0000000d}.push-user-selector{background-color:#f8faff;padding:15px;border-radius:12px;margin-bottom:20px;border:1px solid #e9ecef}.push-search-box{display:flex;gap:8px;margin-bottom:15px}.push-filter-select{padding:8px;border-radius:6px;border:1px solid #dddddd;outline:none;background-color:#fff}.push-input-field{flex:1;padding:8px 12px;border:1px solid #dddddd;border-radius:6px;font-size:.9rem}.push-btn-search{background-color:#4e73df;color:#fff;border:none;padding:8px 15px;border-radius:6px;cursor:pointer;font-weight:600}.push-user-list{max-height:200px;overflow-y:auto;background-color:#fff;border:1px solid #eeeeee;border-radius:8px}.push-user-item{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;cursor:pointer;border-bottom:1px solid #f8f9fa;transition:background-color .2s}.push-user-item:hover{background-color:#f1f3f5}.push-user-item.selected{background-color:#eef2ff;border-left:4px solid #4e73df}.u-info{display:flex;align-items:center;gap:12px}.u-info img{width:32px;height:32px;border-radius:50%;object-fit:cover}.u-name{font-weight:700;font-size:.9rem;color:#333}.u-email{font-size:.75rem;color:#888}.u-check{color:#4e73df;font-weight:700}.push-target-indicator{margin-top:12px;font-size:.85rem;color:#4e73df;text-align:right}.push-info-text{padding:20px;text-align:center;color:#adb5bd;font-size:.9rem}.push-divider{border:0;border-top:1px solid #eeeeee;margin:25px 0}.push-field-group{margin-bottom:18px}.push-field-group input,.push-field-group textarea{width:100%;padding:12px;border:1px solid #dee2e6;border-radius:8px;font-size:.95rem;background-color:#fcfcfc}.push-field-group input:focus,.push-field-group textarea:focus{outline:none;border-color:#4e73df;background-color:#fff}.push-grid-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.push-submit-btn{width:100%;padding:15px;background-color:#2d3436;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:800;cursor:pointer;transition:all .3s ease;margin-top:10px}.push-submit-btn:hover:not(:disabled){background-color:#4e73df;transform:translateY(-2px);box-shadow:0 5px 15px #4e73df4d}.push-submit-btn:disabled{background-color:#adb5bd;cursor:not-allowed}.animate-fade{animation:fadeIn .4s ease-out}.push-target-indicator{margin-top:12px;font-size:.9rem;color:#4e73df;display:flex;justify-content:space-between;align-items:center}.btn-clear-selection{background:none;border:none;color:#ff4d4d;font-size:.8rem;text-decoration:underline;cursor:pointer}.u-checkbox{font-size:1.1rem;margin-right:10px;width:24px;text-align:center}.push-user-item.selected{background-color:#ebf0ff;border-left:5px solid #4e73df}.push-user-item{padding:12px 15px;border-bottom:1px solid #f1f3f5;display:flex;align-items:center;transition:all .2s ease}.device-selector button{flex:1;font-size:.9rem;padding:12px}.device-mobile.active{background-color:#4dabf7!important;color:#fff;border-color:#4dabf7}.device-web.active{background-color:#ff922b!important;color:#fff;border-color:#ff922b}.device-all.active{background-color:#51cf66!important;color:#fff;border-color:#51cf66}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media screen and (max-width:768px){.push-manager-container{padding:15px;display:flex;flex-direction:column;align-items:center;width:100%;box-sizing:border-box}.push-card-premium{width:100%;max-width:100%;padding:20px;border-radius:12px;box-shadow:0 5px 20px #0000000d}.push-title{font-size:1.2rem;margin-bottom:20px}.push-grid-row{grid-template-columns:1fr;gap:10px}.push-search-box{flex-direction:column;gap:10px}.push-filter-select{width:100%}.push-btn-search{width:100%;padding:12px}.push-user-item{padding:15px 10px}.u-info img{width:40px;height:40px}.u-name{font-size:1rem}.push-field-group input,.push-field-group textarea{padding:14px;font-size:16px}.push-submit-btn{padding:18px;font-size:1.1rem;position:sticky;bottom:10px}}.stats-container{padding:20px;background-color:#f8f9fa;border-radius:15px}.stats-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.summary-card{background:#fff;padding:25px;border-radius:12px;box-shadow:0 4px 12px #0000000d;display:flex;flex-direction:column;transition:transform .2s ease}.summary-card:hover{transform:translateY(-5px)}.card-label{color:#888;font-size:.95rem;font-weight:500;margin-bottom:10px}.card-value{font-size:1.8rem;font-weight:700;color:#2c3e50}.stats-table-wrapper{background:#fff;padding:20px;border-radius:12px;box-shadow:0 4px 12px #0000000d;overflow-x:auto}.table-header-flex{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.table-header-flex h3{margin:0;color:#333;font-size:1.25rem}.refresh-btn{padding:8px 16px;background-color:#f1f3f5;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.refresh-btn:hover{background-color:#e9ecef}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem;table-layout:fixed}.admin-table th,.admin-table td{padding:12px 10px;text-align:center;border-bottom:1px solid #eee;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-table th{background-color:#fcfcfc;color:#666;font-weight:600}.admin-table th:nth-child(1),.admin-table td:nth-child(1){width:120px}.admin-table th:nth-child(2),.admin-table td:nth-child(2){width:auto;text-align:left}.admin-table th:nth-child(3),.admin-table td:nth-child(3){width:120px}.admin-table th:nth-child(4),.admin-table td:nth-child(4){width:150px}.text-left{text-align:left!important}.text-success{color:#2ecc71;font-weight:600}.text-danger{color:#e74c3c;font-weight:600}.badge{padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:700}.badge-all{background:#e3f2fd;color:#1976d2}.badge-target{background:#f3e5f5;color:#7b1fa2}.progress-bar-container{width:100px;background:#e9ecef;border-radius:10px;height:16px;position:relative;overflow:hidden;margin:0 auto}.progress-bar-fill{background:linear-gradient(90deg,#2ecc71,#27ae60);height:100%;transition:width .8s ease}.rate-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.7rem;font-weight:700;color:#2c3e50}.table-header-flex{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.header-left{display:flex;align-items:center;gap:15px}.rows-per-page-select{padding:5px 10px;border-radius:5px;border:1px solid #ddd;font-size:14px}.pagination-container{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:20px;padding-bottom:10px}.page-btn{padding:5px 12px;border:1px solid #ddd;background:#fff;cursor:pointer;border-radius:4px}.page-btn:disabled{background:#f5f5f5;cursor:not-allowed;color:#ccc}.page-numbers{display:flex;gap:5px}.page-number{padding:5px 10px;border:1px solid #ddd;background:#fff;cursor:pointer;border-radius:4px}.page-number.active{background-color:#3498db;color:#fff;border-color:#3498db}@media screen and (max-width:768px){.stats-container{padding:15px 10px;border-radius:0}.stats-summary-cards{grid-template-columns:repeat(2,1fr);gap:10px}.card-value{font-size:1.4rem}.table-header-flex{flex-direction:column;align-items:flex-start;gap:12px}.refresh-btn{width:100%;text-align:center}.stats-table-wrapper{padding:10px;overflow-x:auto}.admin-table{min-width:600px}.admin-table th:nth-child(1),.admin-table td:nth-child(1){width:15%}.admin-table th:nth-child(2),.admin-table td:nth-child(2){width:45%}.admin-table th:nth-child(3),.admin-table td:nth-child(3){width:20%}.admin-table th:nth-child(4),.admin-table td:nth-child(4){width:20%}}.section-title-area{margin-bottom:20px}.section-title-area h3{font-size:20px;color:#2d3748;margin-bottom:5px}.section-title-area p{font-size:14px;color:#718096}.app-upload-form{align-items:center}.select-type{max-width:180px;background-color:#f8fafc;cursor:pointer}.file-input-wrapper{flex:2}.btn-push-submit{padding:0 30px;height:52px;background:#4c6ef5;color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-push-submit:hover{background:#3b5bdb;transform:translateY(-1px)}.btn-push-submit:disabled{background:#a5b4fc;cursor:not-allowed}.admin-table{width:100%}.admin-table th:nth-child(1),.admin-table td:nth-child(1){width:25%;text-align:center}.admin-table th:nth-child(2),.admin-table td:nth-child(2){width:20%;text-align:center}.admin-table th:nth-child(3),.admin-table td:nth-child(3){width:35%;text-align:center}.admin-table th:nth-child(4),.admin-table td:nth-child(4){width:20%;text-align:center}.admin-table td strong{color:#4a5568}.app-management-page .section-title-area{margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid #edf2f7}.app-management-page .section-title-area h3{font-size:22px;color:#2d3748;margin:0 0 8px;font-weight:700}.app-management-page .section-title-area p{font-size:14px;color:#718096;margin:0}.app-upload-form{display:flex;gap:15px;align-items:stretch;background:#f8fafc;padding:20px;border-radius:15px;border:1px dashed #cbd5e0}.select-type.admin-input-premium{flex:0 0 180px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23a0aec0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;background-size:18px;appearance:none;cursor:pointer}.file-input-wrapper{flex:1;position:relative}.file-input-wrapper .admin-input-premium{width:100%;padding-top:12px;cursor:pointer}.app-management-page .btn-push-submit{min-width:140px;height:auto;display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;background:linear-gradient(135deg,#4c6ef5,#3b5bdb);box-shadow:0 4px 12px #4c6ef540;border:none;transition:all .3s ease}.app-management-page .btn-push-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 15px #4c6ef559}.app-management-page .btn-push-submit.loading{opacity:.8;cursor:wait}.user-detail-panel .profile-card p{text-align:left;word-break:keep-all}@media(max-width:768px){.app-upload-form{flex-direction:column;padding:15px;gap:10px}.select-type.admin-input-premium{flex:none;width:100%}.file-input-wrapper{width:100%}.app-management-page .btn-push-submit{width:100%;height:50px;margin-top:5px}.app-upload-form{gap:10px}.select-type{max-width:100%}.btn-push-submit{margin-top:10px}}.notice-page{padding-top:64px;min-height:100vh;background-color:#f4f6fa}.notice-header{background:linear-gradient(135deg,#5b7cff,#7f9cff);color:#fff;padding:60px 0 80px;text-align:center}.notice-header h1{font-size:32px;font-weight:800;margin-bottom:10px}.notice-list-card,.notice-detail-card{background:#fff;border-radius:20px;padding:30px;margin:-40px auto 50px;box-shadow:0 10px 30px #00000014;position:relative;z-index:10;max-width:1000px;width:90%}.notice-detail-card{line-height:1.8;padding:40px}.list-top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #f1f5f9}.total-count{font-size:.95rem;color:#64748b}.total-count strong{color:#5b7cff}.per-page-select{padding:8px 12px;border-radius:10px;border:1px solid #e2e8f0;background-color:#f8faff;font-size:14px;color:#334155;cursor:pointer;outline:none;transition:border-color .2s}.per-page-select:focus{border-color:#5b7cff}.notice-table{width:100%}.table-header{display:flex;padding:12px 10px;font-weight:700;color:#94a3b8;font-size:14px;text-transform:uppercase}.table-row{display:flex;padding:18px 10px;border-bottom:1px solid #f1f5f9;border-radius:12px;margin-bottom:4px;cursor:pointer;transition:all .2s ease;align-items:center}.table-row:hover{background-color:#f8faff;transform:translate(5px)}.table-row:hover .col-title{color:#5b7cff}.col-id{width:10%;text-align:center;font-family:Inter,sans-serif;color:#cbd5e1}.col-title{width:75%;font-weight:600;color:#1e293b}.col-date{width:15%;text-align:right;color:#94a3b8}.notice-detail-content{padding:20px 0;color:#334155;font-size:16px;border-top:1px solid #f1f5f9;min-height:300px;word-break:break-word}.list-back-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;margin-top:30px;background-color:#fff;color:#64748b;font-weight:600;font-size:14px;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #00000005}.list-back-btn:hover{background-color:#5b7cff;color:#fff;border-color:#5b7cff;transform:translateY(-2px);box-shadow:0 5px 15px #5b7cff40}.list-back-btn:active{transform:translateY(0)}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:30px}.page-btn,.page-number{min-width:38px;height:38px;border:1px solid #e2e8f0;background-color:#fff;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:500;color:#64748b;transition:all .2s}.page-number.active{background-color:#5b7cff;color:#fff;border-color:#5b7cff;box-shadow:0 4px 10px #5b7cff4d}.page-btn:disabled{opacity:.5;cursor:not-allowed}.table-header,.table-row{display:flex;align-items:center}.table-header,.table-row{display:flex;align-items:center;gap:20px}.col-id{width:80px;flex-shrink:0;text-align:left;font-family:Inter,sans-serif;color:#5b7cff;font-weight:700}.col-title{flex:1;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media screen and (max-width:768px){.notice-page{padding-top:64px;min-height:100vh;background-color:#f4f6fa}.notice-header{background:linear-gradient(135deg,#5b7cff,#7f9cff);color:#fff;padding:60px 0 80px;text-align:center}.notice-header h1{font-size:25px;font-weight:800;margin-bottom:10px}.notice-list-card,.notice-detail-card{background:#fff;border-radius:20px;padding:30px;margin:-40px auto 50px;box-shadow:0 10px 30px #00000014;position:relative;z-index:10;max-width:1000px;width:90%}.notice-detail-card{line-height:1.8;padding:40px}.list-top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:15px;border-bottom:1px solid #f1f5f9}.total-count{font-size:10px;color:#64748b}.total-count strong{color:#5b7cff}.per-page-select{padding:8px 12px;border-radius:10px;border:1px solid #e2e8f0;background-color:#f8faff;font-size:10px;color:#334155;cursor:pointer;outline:none;transition:border-color .2s}.per-page-select:focus{border-color:#5b7cff}.notice-table{width:100%}.table-header{display:flex;padding:6px 5px;font-weight:700;color:#94a3b8;font-size:14px;text-transform:uppercase;font-size:8px}.table-row{display:flex;padding:9px 5px;gap:E;border-radius:12px;margin-bottom:0;cursor:pointer;transition:all .2s ease;align-items:center;font-size:8px}.table-row:hover{background-color:#f8faff;transform:translate(5px)}.table-row:hover .col-title{color:#5b7cff}.col-title{width:60%;font-weight:600;color:#1e293b}.col-date{width:30%;text-align:right;color:#94a3b8}.notice-detail-content{padding:20px 0;color:#334155;font-size:16px;border-top:1px solid #f1f5f9;min-height:300px;word-break:break-word}.list-back-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;margin-top:30px;background-color:#fff;color:#64748b;font-weight:600;font-size:14px;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #00000005}.list-back-btn:hover{background-color:#5b7cff;color:#fff;border-color:#5b7cff;transform:translateY(-2px);box-shadow:0 5px 15px #5b7cff40}.list-back-btn:active{transform:translateY(0)}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:30px}.page-btn,.page-number{min-width:19px;height:19px;border:1px solid #e2e8f0;background-color:#fff;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:500;color:#64748b;transition:all .2s;font-size:10px;line-height:19px}.page-number.active{background-color:#5b7cff;color:#fff;border-color:#5b7cff;box-shadow:0 4px 10px #5b7cff4d}.page-btn:disabled{opacity:.5;cursor:not-allowed}.table-header,.table-row{gap:10px}.col-id{width:60px;font-size:10px}}.not-found-page{display:flex;flex-direction:column;min-height:100vh}.not-found-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px 20px}.error-code{font-size:120px;font-weight:900;color:#3b82f6;margin:0;line-height:1}.error-message{font-size:32px;color:#333;margin:20px 0 10px}.error-description{font-size:16px;color:#666;line-height:1.6;margin-bottom:30px}.not-found-buttons{display:flex;gap:15px}.go-home-btn{padding:12px 24px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:700;cursor:pointer;transition:background .2s}.go-home-btn:hover{background-color:#2563eb}.go-back-btn{padding:12px 24px;background-color:#f3f4f6;color:#4b5563;border:1px solid #d1d5db;border-radius:8px;font-weight:700;cursor:pointer}.go-back-btn:hover{background-color:#e5e7eb}@media(max-width:768px){.error-code{font-size:60px!important}.error-message{font-size:30px}.error-description{font-size:14px}.go-back-btn,.go-home-btn{padding:6px 12px;width:100px;height:40px;font-size:11px}}.navbar{position:fixed;top:0;left:0;width:100%;height:64px;background-color:#fff;display:flex;align-items:center;justify-content:space-between;padding-left:32px;padding-right:32px;box-shadow:0 2px 10px #00000014;z-index:2000}.nav-left{display:flex;align-items:center;z-index:10}.nav-logo{display:flex;align-items:center;gap:10px;cursor:pointer}.nav-logo img{height:32px}.nav-logo h2{font-size:1.2rem;font-weight:800;color:#333}.nav-menu{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:15px}.download-page{width:100%;min-height:100vh;background-color:#f4f6fa}.hero{margin-top:64px;background-image:linear-gradient(135deg,#5b7cff,#7f9cff);color:#fff;padding:80px 20px 140px;text-align:center}.hero h1{font-size:42px;font-weight:900;margin-bottom:25px}.container{place-items:center}.main-card{width:95%;max-width:600px;background-color:#fff;border-radius:24px;padding:50px 40px;margin:-80px auto 40px;box-shadow:0 20px 45px #0000001f;position:relative}.meal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;width:100%}.meal-card-wrapper{height:220px}.warning-note{margin-top:30px;font-size:13px;color:#94a3b8;text-align:center}.download-action-btn{margin:4px}@media screen and (max-width:768px){.hero{margin-top:40px;padding:40px 0 80px}.hero h1{font-size:24px!important}.main-card{margin-top:-40px;padding:25px 15px;width:92%}.meal-grid{grid-template-columns:1fr!important;gap:15px}.meal-card-wrapper{height:180px!important}.menu-line{font-size:16px!important}}.privacy-container{min-height:100vh;background-color:#f4f6fa;padding-top:80px;padding-bottom:60px}.privacy-card{max-width:900px;margin:0 auto;background-color:#fff;border-radius:16px;padding:60px;box-shadow:0 4px 20px #00000014}.privacy-title{font-size:2.5rem;font-weight:900;color:#222;text-align:center;margin-bottom:16px}.privacy-subtitle{font-size:1.1rem;color:#64748b;text-align:center;margin-bottom:50px;line-height:1.6}.privacy-section{margin-bottom:50px}.privacy-section h2{font-size:1.8rem;font-weight:800;color:#333;margin-bottom:20px;padding-bottom:12px;border-bottom:3px solid #5b7cff}.privacy-section h3{font-size:1.3rem;font-weight:700;color:#444;margin-top:24px;margin-bottom:16px}.privacy-section p{font-size:1rem;line-height:1.8;color:#555;margin-bottom:16px}.privacy-section ul{margin-left:24px;margin-bottom:20px}.privacy-section li{font-size:1rem;line-height:1.8;color:#555;margin-bottom:12px}.privacy-section li strong{color:#333;font-weight:700}.delegation-table{margin:24px 0;overflow-x:auto}.delegation-table table{width:100%;border-collapse:collapse;background-color:#f8faff;border-radius:12px;overflow:hidden}.delegation-table th,.delegation-table td{padding:16px 20px;text-align:left;border-bottom:1px solid #e0e6ed}.delegation-table th{background-color:#5b7cff;color:#fff;font-weight:700;font-size:1rem}.delegation-table td{color:#555;font-size:.95rem}.delegation-table tbody tr:last-child td{border-bottom:none}.delegation-table tbody tr:hover{background-color:#f0f4ff}.contact-box{background-color:#f8faff;border:2px solid #5b7cff;border-radius:12px;padding:30px;margin-top:24px}.contact-box h3{font-size:1.3rem;font-weight:700;color:#5b7cff;margin-bottom:16px}.contact-box ul{margin-left:0;list-style:none}.contact-box li{font-size:1rem;line-height:1.8;color:#555;margin-bottom:8px}.contact-box p{margin-top:20px;margin-bottom:12px;font-weight:600;color:#333}.warning-text{color:#ff4d4f;font-size:.9rem;margin-top:12px;padding:12px;background-color:#fff1f0;border-left:4px solid #ff4d4f;border-radius:4px}.privacy-footer{margin-top:60px;padding-top:40px;border-top:2px dashed #e0e6ed;text-align:center}.privacy-footer p{font-size:1rem;color:#64748b;margin-bottom:24px}.back-btn{padding:14px 32px;border-radius:12px;background-color:#5b7cff;color:#fff;font-weight:700;font-size:1rem;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #5b7cff4d}.back-btn:hover{background-color:#4a6bef;transform:translateY(-2px);box-shadow:0 6px 16px #5b7cff66}.back-btn:active{transform:translateY(0)}.delete-request-btn{background-color:#ff4d4f;padding:5px;border-radius:6px;color:#fff}@media(max-width:768px){.privacy-container{padding-top:60px;padding-bottom:40px}.privacy-card{padding:30px 20px;margin:0 16px;border-radius:12px}.privacy-title{font-size:1.8rem}.privacy-subtitle{font-size:.95rem;margin-bottom:30px}.privacy-section{margin-bottom:35px}.privacy-section h2{font-size:1.4rem;margin-bottom:16px}.privacy-section h3{font-size:1.1rem;margin-top:20px;margin-bottom:12px}.privacy-section p,.privacy-section li{font-size:.9rem;line-height:1.7}.privacy-section ul{margin-left:16px}.delegation-table{font-size:.85rem}.delegation-table th,.delegation-table td{padding:12px 14px}.contact-box{padding:20px}.contact-box h3{font-size:1.1rem}.contact-box li{font-size:.9rem}.privacy-footer{margin-top:40px;padding-top:30px}.back-btn{width:100%;padding:14px 20px}}@media(max-width:480px){.privacy-card{padding:24px 16px;margin:0 12px}.privacy-title{font-size:1.5rem}.privacy-section h2{font-size:1.2rem}.privacy-section h3{font-size:1rem}.delegation-table th,.delegation-table td{padding:10px 12px;font-size:.8rem}}.delete-account-container{min-height:100vh;background-color:#f4f6fa;padding:100px 20px 60px}.delete-account-card{max-width:800px;margin:0 auto;background-color:#fff;border-radius:16px;padding:50px;box-shadow:0 4px 20px #00000014}.delete-title{font-size:2.2rem;font-weight:900;color:#ff4d4f;text-align:center;margin-bottom:16px}.delete-subtitle{font-size:1.1rem;color:#64748b;text-align:center;margin-bottom:40px}.user-info-section{background-color:#f8faff;border-radius:12px;padding:24px;margin-bottom:32px}.user-info-section h2{font-size:1.3rem;font-weight:700;color:#333;margin-bottom:20px}.user-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{font-size:.85rem;color:#64748b;font-weight:600}.info-value{font-size:1rem;color:#333;font-weight:600}.warning-section{background:linear-gradient(135deg,#fff5f5,#ffe0e0);border:2px solid #ff6b6b;border-radius:12px;padding:24px;margin-bottom:24px}.warning-section h2{font-size:1.3rem;font-weight:700;color:#ff4d4f;margin-bottom:16px;display:flex;align-items:center;gap:8px}.warning-section ul{list-style:none;padding-left:0;margin-bottom:16px}.warning-section li{font-size:1rem;color:#555;margin-bottom:8px;padding-left:24px;position:relative}.warning-section li:before{content:"•";position:absolute;left:8px;color:#ff6b6b;font-weight:700}.warning-text{font-size:1rem;color:#ff4d4f;font-weight:700;padding:12px;background-color:#fff;border-radius:8px;text-align:center;margin-top:12px}.legal-notice{background-color:#f8f9fa;border-left:4px solid #5b7cff;border-radius:8px;padding:20px;margin-bottom:32px}.legal-notice h3{font-size:1.1rem;font-weight:700;color:#333;margin-bottom:12px}.legal-notice p{font-size:.95rem;color:#555;margin-bottom:12px}.legal-notice ul{list-style:none;padding-left:0}.legal-notice li{font-size:.9rem;color:#666;margin-bottom:6px;padding-left:20px;position:relative}.legal-notice li:before{content:"→";position:absolute;left:0;color:#5b7cff}.action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}.cancel-btn,.delete-btn{padding:16px 32px;border-radius:12px;font-weight:700;font-size:1rem;border:none;cursor:pointer;transition:all .3s ease}.cancel-btn{background-color:#f1f5f9;color:#64748b}.cancel-btn:hover{background-color:#e2e8f0;transform:translateY(-2px)}.delete-btn{background-color:#ff4d4f;color:#fff;box-shadow:0 4px 12px #ff4d4f4d}.delete-btn:hover{background-color:#f33;transform:translateY(-2px);box-shadow:0 6px 16px #ff4d4f66}.delete-btn:active,.cancel-btn:active{transform:translateY(0)}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.modal-content{background-color:#fff;border-radius:16px;padding:40px;max-width:500px;width:100%;box-shadow:0 8px 32px #0003}.modal-content h2{font-size:1.5rem;font-weight:800;color:#ff4d4f;margin-bottom:16px;text-align:center}.modal-content p{font-size:1rem;color:#555;margin-bottom:24px;text-align:center;line-height:1.6}.confirm-input{width:100%;padding:14px 16px;border:2px solid #dddddd;border-radius:10px;font-size:1rem;margin-bottom:24px;transition:border-color .3s ease}.confirm-input:focus{outline:none;border-color:#ff4d4f}.modal-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-cancel-btn,.modal-delete-btn{padding:14px 24px;border-radius:10px;font-weight:700;font-size:1rem;border:none;cursor:pointer;transition:all .3s ease}.modal-cancel-btn{background-color:#f1f5f9;color:#64748b}.modal-cancel-btn:hover{background-color:#e2e8f0}.modal-delete-btn{background-color:#ff4d4f;color:#fff}.modal-delete-btn:hover:not(:disabled){background-color:#f33}.modal-delete-btn:disabled{opacity:.5;cursor:not-allowed}.loading{text-align:center;padding:60px 20px;font-size:1.2rem;color:#64748b}@media(max-width:768px){.delete-account-card{padding:30px 20px}.delete-title{font-size:1.8rem}.delete-subtitle{font-size:.95rem}.user-info-grid,.action-buttons{grid-template-columns:1fr}.modal-content{padding:30px 20px}.modal-buttons{grid-template-columns:1fr}}.pw-widget{display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;padding:10px 16px;margin-bottom:16px;box-shadow:0 1px 4px #0000000d;flex-wrap:wrap}.pw-class-label{font-size:.85rem;font-weight:700;color:#334155}.pw-badge{font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:20px}.pw-badge--class{background:#eef2ff;color:#4338ca}.pw-badge--break{background:#f0fdf4;color:#15803d}.pw-badge--before{background:#f8fafc;color:#64748b}.pw-badge--done{background:#fff7ed;color:#c2410c}.pw-info{font-size:.85rem;color:#64748b}.dtl-outer{margin-bottom:16px;border-radius:14px;border:1.5px solid #e2e8f0;background:#fff;box-shadow:0 1px 4px #0000000d;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box;contain:layout}.dtl-scroll{overflow-x:auto;overflow-y:hidden;padding:0}.dtl-canvas{position:relative;padding:36px 0 12px;min-height:130px}.dtl-row{position:relative;height:44px;margin:0 0 6px}.dtl-block{position:absolute;top:0;height:100%;border-radius:8px;border:1.5px solid transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:2px 6px;box-sizing:border-box;min-width:2px}.dtl-block-label{font-size:.72rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.dtl-block-time{font-size:.62rem;opacity:.75;white-space:nowrap}.dtl-block--period{background:#eef2ff;border-color:#818cf8;color:#3730a3}.dtl-block--break{background:#f8fafc;border-color:#cbd5e1;color:#94a3b8}.dtl-block--meal{border-width:1.5px;border-style:solid}.dtl-tick{position:absolute;top:0;width:1px;height:100%;background:#f1f5f9;pointer-events:none}.dtl-tick-label{position:absolute;top:4px;left:3px;font-size:.62rem;color:#94a3b8;white-space:nowrap;font-variant-numeric:tabular-nums}.dtl-now{position:absolute;top:0;bottom:0;width:2px;background:#ef4444;pointer-events:none;z-index:10}.dtl-now-label{position:absolute;top:4px;left:4px;font-size:.65rem;font-weight:700;color:#ef4444;white-space:nowrap;font-variant-numeric:tabular-nums}.te-container{max-width:720px;margin:0 auto;padding:20px 16px 60px}.te-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.te-header h2{font-size:1.4rem;font-weight:700;color:#1e293b;margin:0}.te-user{font-size:.85rem;color:#64748b;background:#f1f5f9;padding:4px 10px;border-radius:20px}.te-selectors{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.te-selector-group{display:flex;gap:6px;flex-wrap:wrap}.te-btn{padding:7px 14px;border-radius:8px;border:1.5px solid #e2e8f0;background:#fff;font-size:.88rem;font-weight:600;color:#475569;cursor:pointer;transition:all .15s}.te-btn.active{background:#1c3f72;border-color:#1c3f72;color:#fff}.te-saved-msg{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;border-radius:8px;padding:10px 14px;font-size:.88rem;font-weight:600;margin-bottom:14px}.te-loading{text-align:center;padding:60px 0;color:#94a3b8;font-size:.95rem}.te-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 4px #0000000f}.te-table{width:100%;border-collapse:collapse;min-width:360px}.te-th-period{width:36px;background:#1c3f72}.te-th-day{background:#1c3f72;color:#fff;padding:8px 4px;text-align:center;font-size:.9rem;font-weight:700}.te-date{font-size:.72rem;font-weight:400;opacity:.75;margin-top:2px}.te-td-period{text-align:center;font-size:.8rem;font-weight:700;color:#fff;background:#17304e;padding:0 4px;width:36px}.te-td-cell{padding:10px 8px;text-align:center;vertical-align:middle;border:1px solid #e2e8f0;cursor:pointer;transition:background .12s;min-width:64px}.te-td-cell:hover{background:#eff6ff}.te-td-cell.changed{background:#fff9f0;border-left:3px solid #e07b00}.te-td-cell.changed:hover{background:#fff3e0}.te-cell-subject{font-size:.82rem;font-weight:600;color:#1e293b;line-height:1.3}.te-cell-teacher{font-size:.7rem;color:#64748b;margin-top:2px}.te-cell-orig{font-size:.65rem;color:#b45309;margin-top:2px}.te-cell-empty{color:#cbd5e1;font-size:.9rem}.te-options-loading{padding:10px 12px;font-size:.85rem;color:#94a3b8;border:1.5px solid #e2e8f0;border-radius:10px}.te-hint{margin-top:12px;font-size:.78rem;color:#94a3b8;text-align:center}.te-modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:flex-end;justify-content:center;z-index:1000;padding:0}@media(min-width:600px){.te-modal-overlay{align-items:center}}.te-modal{background:#fff;border-radius:20px 20px 0 0;padding:24px 20px 36px;width:100%;max-width:480px;box-shadow:0 -4px 24px #0000001f}@media(min-width:600px){.te-modal{border-radius:16px;padding:28px 28px 24px}}.te-modal-title{font-size:1.1rem;font-weight:700;color:#1e293b;margin-bottom:20px;display:flex;align-items:center;gap:8px}.te-modal-sub{font-size:.82rem;font-weight:400;color:#64748b}.te-modal-label{display:block;font-size:.82rem;font-weight:600;color:#475569;margin-bottom:6px;margin-top:14px}.te-modal-select{width:100%;padding:11px 12px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:.95rem;color:#1e293b;background:#fff;appearance:none;-webkit-appearance:none;outline:none;transition:border-color .15s}.te-modal-select:focus{border-color:#1c3f72}.te-modal-btns{display:flex;gap:10px;margin-top:24px}.te-btn-cancel{flex:1;padding:13px;border-radius:10px;border:1.5px solid #e2e8f0;background:#f8fafc;font-size:.95rem;font-weight:600;color:#64748b;cursor:pointer}.te-btn-save{flex:2;padding:13px;border-radius:10px;border:none;background:#1c3f72;color:#fff;font-size:.95rem;font-weight:700;cursor:pointer;transition:background .15s}.te-btn-save:disabled{background:#94a3b8;cursor:not-allowed}.te-btn-save:not(:disabled):hover{background:#152e55}.sc-hero{background:linear-gradient(135deg,#5b7cff,#7f9cff);padding:40px 0 28px}.sc-hero h1{color:#fff;font-size:1.8rem;font-weight:700;text-align:center;letter-spacing:-.02em}.sc-container{max-width:1100px;margin:0 auto;padding:24px 24px 60px}.sc-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}.sc-grade-tabs{display:flex;gap:6px;background:#e2e8f0;padding:4px;border-radius:12px}.sc-grade-btn{padding:7px 18px;border:none;border-radius:9px;background:transparent;font-size:.875rem;font-weight:600;color:#64748b;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.sc-grade-btn.active{background:#fff;color:#4f46e5;box-shadow:0 1px 4px #4f46e526}.sc-month-nav{display:flex;align-items:center;gap:10px}.sc-nav-btn{width:32px;height:32px;border:1.5px solid #e2e8f0;background:#fff;border-radius:8px;font-size:.8rem;color:#64748b;cursor:pointer;transition:background .12s,border-color .12s;display:flex;align-items:center;justify-content:center}.sc-nav-btn:hover{background:#f8fafc;border-color:#cbd5e1}.sc-month-label{font-size:1.05rem;font-weight:700;color:#4f46e5;min-width:110px;text-align:center;letter-spacing:-.01em}.sc-legend{display:flex;gap:16px;margin-bottom:14px}.sc-legend-item{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#64748b;font-weight:500}.sc-card{background:#fff;border-radius:18px;padding:20px 16px 16px;box-shadow:0 1px 3px #0000000f,0 4px 24px #0000000a}.sc-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.sc-day-name{text-align:center;font-size:.72rem;font-weight:700;color:#94a3b8;padding:6px 0 10px;letter-spacing:.04em;text-transform:uppercase}.sc-day-name.sun{color:#e11d48}.sc-day-name.sat{color:#4f46e5}.sc-cell{min-height:84px;padding:6px 5px 5px;border-radius:10px;cursor:pointer;transition:background .12s;display:flex;flex-direction:column;gap:3px;position:relative}.sc-cell:hover:not(.empty){background:#f8fafc}.sc-cell.empty{cursor:default;pointer-events:none}.sc-cell.selected{background:#eef2ff!important}.sc-cell.selected .sc-date-num:not(.today-num){color:#4f46e5}.sc-date-num{font-size:.82rem;font-weight:600;color:#334155;font-variant-numeric:tabular-nums;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;align-self:flex-end;margin-left:auto}.sc-date-num.today-num{background:#4f46e5;color:#fff}.sc-cell.sun .sc-date-num:not(.today-num){color:#e11d48}.sc-cell.sat .sc-date-num:not(.today-num){color:#4f46e5}.sc-cell-events{display:flex;flex-direction:column;gap:2px;width:100%;min-height:0}.sc-chip{font-size:.67rem;font-weight:600;padding:2px 5px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.sc-chip.academic{background:#eef2ff;color:#4338ca}.sc-chip.exam{background:#fff1f2;color:#be123c}.sc-chip-more{font-size:.63rem;color:#94a3b8;padding-left:2px}.sc-detail{position:fixed;bottom:24px;left:50%;transform:translate(-50%);width:min(720px,calc(100vw - 32px));padding:16px 20px;background:#fff;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 8px 40px #00000024,0 2px 8px #0000000f;z-index:200;animation:sc-detail-in .18s ease}@keyframes sc-detail-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.sc-detail-title{font-size:.95rem;font-weight:700;color:#1e293b;margin-bottom:10px}.sc-detail-empty{color:#94a3b8;font-size:.88rem}.sc-event-list{list-style:none;display:flex;flex-direction:column;gap:6px}.sc-event-item{display:flex;align-items:center;gap:10px;font-size:.88rem;color:#334155;padding:8px 12px;border-radius:8px;background:#fff;border:1px solid #f1f5f9}.sc-event-badge{font-size:.68rem;font-weight:700;padding:2px 7px;border-radius:8px;flex-shrink:0}.sc-event-badge.academic{background:#eef2ff;color:#4338ca}.sc-event-badge.exam{background:#fff1f2;color:#be123c}.sc-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.sc-dot.academic{background:#4f46e5}.sc-dot.exam{background:#e11d48}.status-msg{text-align:center;color:#94a3b8;padding:40px 0;font-size:.9rem}
