@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fffc;left:0;position:-webkit-sticky;position:sticky;right:0;top:0;transition:all .3s ease;z-index:1000}.header__container{align-items:center;display:flex;justify-content:flex-start;margin:0 auto;max-width:1200px;padding:1rem 2rem}.header__logo{align-items:center;display:flex;margin-left:-80px;margin-right:auto}.header__logo-img{border-radius:8px;height:40px;transition:transform .3s ease;width:auto}.header__logo-img:hover{transform:scale(1.05)}.header__nav{align-items:center;display:flex;gap:1.3rem;justify-content:flex-end;margin-right:-60px}.header__button,.header__link{background:none;border:none;border-radius:20px;color:#333;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease}button.header__link{background-color:#f0f0f7;border:1px solid #e6e6f0;box-shadow:0 2px 4px #8885e81a;color:#6663b0;font-weight:600;padding:.5rem 1.2rem}button.header__link:hover{background-color:#e8e7f5;box-shadow:0 4px 8px #8885e826;color:#8885e8;transform:translateY(-2px)}button.header__link:active{box-shadow:0 1px 2px #8885e81a;transform:translateY(0)}.header__link:hover{color:#8885e8}.header__button{background-color:#8885e8;border:none;color:#fff;cursor:pointer}.header__button:hover{background-color:#7673d9;box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}@media (min-width:769px) and (max-width:1024px){.header__container{padding:1rem 1.5rem}.header__logo{margin-left:-10px}.header__logo-img{height:38px}.header__nav{gap:1rem;margin-right:-10px}.header__button,.header__link{font-size:.85rem;padding:.45rem .9rem}button.header__link{padding:.45rem 1rem}}@media (max-width:768px){.header__container{flex-direction:row;justify-content:space-between;padding:1rem}.header__logo{margin-left:0}.header__logo-img{height:35px}.header__nav{gap:.8rem;margin-right:0}.header__button,.header__link{font-size:.8rem;padding:.4rem .8rem}button.header__link{padding:.4rem .9rem}}@media (max-width:480px){.header__container{padding:.8rem}.header__logo-img{height:30px}.header__nav{gap:.5rem}.header__link{padding:.3rem .6rem}button.header__link{font-size:.75rem;padding:.3rem .8rem}.header__button{font-size:.75rem;padding:.3rem .7rem}}body{background-color:#f8f9fa;color:#333}.profile-container{margin:40px auto;max-width:800px;padding:20px}.profile-header{margin-bottom:80px;text-align:center}.profile-header h1{color:#2c3e50;font-size:2.2rem;font-weight:700;margin-bottom:8px}.message{animation:fadeIn .5s ease;border-radius:10px;box-shadow:0 2px 10px #0000000d;font-weight:500;margin-bottom:25px;padding:15px;text-align:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.message-info{background-color:#e3f2fd;border-left:4px solid #2196f3;color:#0d47a1}.message-success{background-color:#e8f5e9;border-left:4px solid #4caf50;color:#1b5e20}.message-error{background-color:#ffebee;border-left:4px solid #f44336;color:#b71c1c}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:50px 0}.loading-spinner{animation:spin 1s linear infinite;border:5px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;height:50px;margin-bottom:20px;width:50px}.profile-card{background-color:#fff;border-radius:16px;box-shadow:0 10px 30px #0000001a;overflow:hidden;padding:40px;position:relative}.profile-card:before{background:linear-gradient(90deg,#3498db,#8e44ad);content:"";height:6px;left:0;position:absolute;top:0;width:100%}.profile-avatar{margin-bottom:30px}.avatar-circle,.profile-avatar{display:flex;justify-content:center}.avatar-circle{align-items:center;background:linear-gradient(135deg,#3498db,#8e44ad);border:4px solid #fff;border-radius:50%;box-shadow:0 10px 20px #0003;height:100px;width:100px}.avatar-text{color:#fff;font-size:42px;font-weight:700}.profile-info{margin-bottom:40px}.info-item{align-items:center;background-color:#f8f9fa;border-radius:12px;display:flex;margin-bottom:25px;padding:15px;transition:all .3s ease}.info-item:hover{box-shadow:0 5px 15px #00000014;transform:translateY(-3px)}.info-icon{align-items:center;background-color:#fff;border-radius:50%;box-shadow:0 4px 8px #0000001a;display:flex;font-size:24px;height:40px;justify-content:center;margin-right:15px;width:40px}.info-content{flex:1 1}.info-content label{color:#6c757d;display:block;font-size:.9rem;font-weight:600;margin-bottom:5px}.info-content p{color:#2c3e50;font-size:1.1rem;font-weight:500}.profile-actions{gap:20px;margin-top:30px}.btn,.profile-actions{display:flex;justify-content:center}.btn{align-items:center;border-radius:50px;box-shadow:0 4px 6px #0000001a}.btn-icon{margin-right:8px}.change-password{background-color:#3498db;color:#fff}.change-password:hover{background-color:#2980b9;box-shadow:0 6px 12px #00000026;transform:translateY(-3px)}.delete-account{background-color:#e74c3c;color:#fff}.delete-account:hover{background-color:#c0392b;box-shadow:0 6px 12px #00000026;transform:translateY(-3px)}.modal-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{animation:slideUp .4s ease;background-color:#fff;border-radius:16px;box-shadow:0 20px 40px #0003;max-width:500px;padding:30px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.modal-header h2{color:#2c3e50;font-size:1.5rem;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#95a5a6;cursor:pointer;display:flex;justify-content:center;padding:5px;transition:all .2s}.modal-close:hover{background-color:#f8f9fa;color:#e74c3c}.form-group{margin-bottom:20px}.form-group label{color:#4a5568;display:block;font-size:.95rem;font-weight:500;margin-bottom:8px}.input-container input{background-color:#f8f9fa;border:1px solid #e2e8f0;border-radius:10px;font-size:15px;padding:14px 16px;transition:all .3s;width:100%}.input-container input:focus{background-color:#fff;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.input-container input::placeholder{color:#cbd5e0}.warning-container{align-items:center;background-color:#fff5f5;border-radius:10px;display:flex;margin-bottom:25px;padding:16px}.warning-icon{color:#e74c3c;flex-shrink:0;margin-right:15px}.warning{color:#e74c3c;font-size:.95rem;font-weight:500;line-height:1.5;margin:0}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px}.btn{border:none;border-radius:10px;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.save{background-color:#3498db;color:#fff}.save:hover{background-color:#2980b9;box-shadow:0 5px 15px #3498db4d;transform:translateY(-2px)}.delete{background-color:#e74c3c;color:#fff}.delete:hover{background-color:#c0392b;box-shadow:0 5px 15px #e74c3c4d;transform:translateY(-2px)}.cancel{background-color:#f7f7f7;border:1px solid #e2e8f0;color:#4a5568}.cancel:hover{background-color:#edf2f7}@media (max-width:768px){.profile-container{margin:20px auto;max-width:95%;padding:15px}.profile-header{margin-bottom:40px}.profile-header h1{font-size:1.8rem}.profile-card{border-radius:12px;margin:0 auto;max-width:500px;padding:25px 15px;width:92%}.avatar-circle{height:80px;width:80px}.avatar-text{font-size:32px}.info-item{margin-bottom:15px;margin-left:5px;margin-right:5px;padding:12px}.info-icon{font-size:20px;height:35px;margin-right:12px;width:35px}.info-content{padding-right:5px}.info-content label{font-size:.8rem}.info-content p{font-size:1rem}.profile-actions{flex-direction:column;gap:12px;padding:0 10px}.btn{margin-top:12px;padding:12px 20px;width:100%}.modal{margin:0 15px;padding:20px;width:90%}.modal-header h2{font-size:1.3rem}.form-group label{font-size:.9rem}.input-container input{font-size:14px;padding:12px 14px}.warning{font-size:.85rem}.modal-actions{flex-direction:column-reverse;gap:10px}.modal-actions .btn{width:100%}}@media (max-width:480px){.profile-container{margin:10px auto;max-width:85%;padding:10px}.profile-header h1{font-size:1.6rem}.profile-card{margin:0 15px;padding:20px 15px}.message{font-size:.9rem;margin-left:5px;margin-right:5px;padding:12px}.avatar-circle{height:70px;width:70px}.avatar-text{font-size:28px}.info-item{margin-left:8px;margin-right:8px;padding:10px}.info-icon{font-size:18px;height:30px;margin-right:10px;width:30px}.info-content label{font-size:.75rem}.info-content p{font-size:.9rem}}.signup-container{align-items:center;background:linear-gradient(135deg,#f5f7fa,#e4e9f2);display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:20px}.signup-card{background-color:#fff;border-radius:16px;box-shadow:0 10px 25px #0000000d;margin:20px;max-width:460px;overflow:hidden;padding:40px;position:relative;width:100%}.signup-header{margin-bottom:32px;text-align:center}.signup-title{color:#1a1a1a;font-size:28px;font-weight:700;margin:0 0 40px}.signup-error{align-items:center;background-color:#fff2f2;border-left:4px solid #e53935;border-radius:8px;color:#e53935;display:flex;font-size:14px;gap:8px;margin-bottom:20px;padding:14px}.signup-form .form-field{margin-bottom:24px}.signup-form label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.input-container{align-items:center;background-color:#f9fafb;border:1px solid #e0e0e0;border-radius:10px;display:flex;margin-bottom:4px;position:relative;transition:all .2s ease}.input-container:focus-within{background-color:#fff;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526}.input-container.error{background-color:#fff8f8;border-color:#e53935}.input-container .input-icon{color:#666;margin-left:16px}.input-warning{color:#f59e0b;font-size:12px;margin-top:6px;padding-left:4px}.input-warning svg{height:14px;margin-right:4px;vertical-align:middle;width:14px}.signup-form input{background-color:initial;border:none;border-radius:10px;font-size:15px;margin-left:12px;padding:14px 16px 14px 44px;width:100%}.signup-form input:focus{margin-left:17px;outline:none}.toggle-password{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;padding:0 16px}.toggle-password:hover{color:#333}.password-hint{color:#666;font-size:12px}.field-error,.password-hint{margin-top:6px;padding-left:4px}.field-error{align-items:center;color:#e53935;display:flex;font-size:13px;gap:6px}.signup-submit-button{align-items:center;background-color:#4f46e5;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:8px;justify-content:center;margin-top:50px;padding:14px;transition:all .2s;width:100%}.signup-submit-button:hover{background-color:#4338ca;transform:translateY(-1px)}.signup-submit-button:active{transform:translateY(0)}.signup-submit-button:disabled{background-color:#c7d2fe;cursor:not-allowed;transform:none}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.login-link-container{color:#666;font-size:14px;margin-top:24px;padding-top:16px;text-align:center}.login-link{color:#4f46e5;font-weight:500;margin-left:5px;text-decoration:none;transition:color .2s}.login-link:hover{color:#4338ca;text-decoration:underline}@media (max-width:480px){.signup-container{padding:10px}.signup-card{margin:10px 5px;max-width:95%;padding:30px 20px;width:95%}}@media (max-width:360px){.signup-card{margin:5px 2px;max-width:98%;padding:25px 15px;width:98%}.signup-form input{padding:12px 12px 12px 40px}}.footer{background-color:#fff;border-top:1px solid #eaeaea;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;margin-top:auto;padding:1.2rem 0;width:100%}.footer-container{margin:0 auto;max-width:1200px;padding:0 2rem}.footer-content{align-items:center;display:flex;justify-content:flex-end}.footer-info{margin-right:-5rem}.footer-info p{align-items:center;color:#333;display:flex;font-size:.95rem;margin:0}.contact-label{color:#111;font-weight:500;margin-left:0;margin-right:.5rem;position:relative}.contact-label:after{color:#ddd;content:"—";margin:0 .5rem}.footer-info a{color:#333;position:relative;text-decoration:none;transition:all .2s ease}.footer-info a:after{background-color:#333;bottom:-2px;content:"";height:1px;left:0;position:absolute;transition:width .3s ease;width:0}.footer-info a:hover{color:#000}.footer-info a:hover:after{width:100%}@media (max-width:1024px) and (min-width:769px){.footer-info{margin-right:0}.footer-container{padding:0 1.5rem}}@media (max-width:768px) and (min-width:481px){.footer-info{margin-right:0}.footer-container{padding:0 1.2rem}.footer-info p{font-size:.9rem}}@media (max-width:480px){.footer-content{justify-content:center}.footer-info{margin-right:0}.footer-container{padding:0 1rem}.contact-label,.footer-info p{font-size:.85rem}}@media (max-width:320px){.footer-info p{align-items:center;flex-direction:column;text-align:center}.contact-label{margin-bottom:.3rem}.contact-label:after{display:none}}.loadmap{text-align:center}.loadmap__image-wrapper{margin:0 auto;max-width:1100px;position:relative;width:100%}.loadmap__image{display:block;width:100%}.loadmap__building{background-color:#fff;border:2px solid #000;border-radius:50%;color:#000;cursor:pointer;font-size:14px;font-weight:700;padding:7px;position:absolute;transform:translate(-50%,-50%);transition:transform .3s ease,background-color .3s ease}.loadmap__building:hover{transform:translate(-50%,-50%) scale(1.5)}@media (min-width:769px) and (max-width:1024px){.loadmap__building{border-width:1.8px;font-size:13px;padding:4px}.loadmap__building:hover{transform:translate(-50%,-50%) scale(1.4)}}@media (max-width:768px){.loadmap{line-height:0;margin:0;padding:0}.loadmap__building{border-width:1.5px;font-size:12px;padding:3px}.loadmap__building:hover{transform:translate(-50%,-50%) scale(1.3)}}@media (max-width:480px){.loadmap__building{border-width:1px;font-size:5px;padding:3px}.loadmap__building:hover{transform:translate(-50%,-50%) scale(1.2)}}:root{--primary-color:#5468ff;--primary-light:#eef0ff;--secondary-color:#ff6b6b;--text-dark:#2d3748;--text-medium:#4a5568;--text-light:#718096;--bg-light:#f7fafc;--bg-white:#fff;--shadow-sm:0 1px 3px #0000001f,0 1px 2px #00000014;--shadow-md:0 4px 6px #0000001a,0 2px 4px #0000000f;--shadow-lg:0 10px 15px #0000001a,0 4px 6px #0000000d;--radius-sm:6px;--radius-md:10px;--radius-lg:16px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f7fafc;background-color:var(--bg-light);color:#2d3748;color:var(--text-dark);font-family:Noto Sans KR,sans-serif}.building-container{max-width:100%;overflow:hidden;position:relative}.top-gradient{background:linear-gradient(135deg,#7e8dff,#6e8fff);border-bottom-left-radius:30px;border-bottom-right-radius:30px;height:200px;left:0;position:absolute;right:0;top:0;z-index:-1}.building-header{padding:24px 20px}.header-content{align-items:center;display:flex;gap:16px}.building-header h1{color:#fff;font-size:24px;font-weight:700;text-shadow:0 2px 4px #0000001a}.content-wrapper{background-color:#fff;background-color:var(--bg-white);border-radius:16px 16px 0 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;box-shadow:var(--shadow-lg);margin-top:7px;min-height:calc(100vh - 200px);padding:30px 20px 60px}.floor-selector{display:flex;justify-content:center;margin-bottom:36px;position:relative}.floor-label{color:#718096;color:var(--text-light);font-size:14px;font-weight:500;margin-bottom:12px}.floor-buttons{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;scrollbar-color:#eef0ff #0000;scrollbar-color:var(--primary-light) #0000;scrollbar-width:thin}.floor-buttons::-webkit-scrollbar{height:4px}.floor-buttons::-webkit-scrollbar-track{background:#0000}.floor-buttons::-webkit-scrollbar-thumb{background-color:#eef0ff;background-color:var(--primary-light);border-radius:10px}.floor-button{background-color:#f7fafc;background-color:var(--bg-light);border:none;border-radius:10px;border-radius:var(--radius-md);color:#4a5568;color:var(--text-medium);cursor:pointer;font-size:16px;font-weight:600;min-width:60px;overflow:hidden;padding:12px 24px;position:relative;transition:all .2s ease}.floor-button:after{background-color:#5468ff;background-color:var(--primary-color);bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);transition:all .3s ease;width:0}.floor-button:hover{background-color:#eef0ff;background-color:var(--primary-light);color:#5468ff;color:var(--primary-color)}.floor-button:hover:after{width:70%}.floor-button.active{background-color:#5468ff;background-color:var(--primary-color);box-shadow:0 4px 10px #5468ff4d;color:#fff}.floor-button.active:after{width:0}.floor-info{margin-bottom:30px;margin-left:40px;position:relative}.floor-info h2{color:#2d3748;color:var(--text-dark);display:inline-block;font-size:22px;font-weight:700;margin-bottom:8px}.floor-info h2:after{background-color:#5468ff;background-color:var(--primary-color);border-radius:2px;content:"";display:block;height:3px;margin-top:8px;width:40px}.floor-description{color:#718096;color:var(--text-light);font-size:14px;margin-top:20px}.rooms-grid{grid-gap:80px 40px;display:grid;gap:80px 40px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-left:40px;margin-right:40px;margin-top:80px}.room-card{align-items:center;background-color:#fff;border:1px solid #edf2f7;border-radius:10px;border-radius:var(--radius-md);box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:130px;overflow:hidden;padding:20px;position:relative;text-align:center;transition:all .3s ease}.room-card:before{background-color:#5468ff;background-color:var(--primary-color);content:"";height:100%;left:0;opacity:.2;position:absolute;top:0;transition:all .3s ease;width:6px}.room-card:hover{box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f;box-shadow:var(--shadow-md);transform:translateY(-5px)}.room-card:hover:before{opacity:.05;width:100%}.room-card:has(.room-status.unavailable){background-color:#f9f9f9;cursor:not-allowed;opacity:.8}.room-card:has(.room-status.unavailable):before{background-color:#718096;background-color:var(--text-light)}.room-card:has(.room-status.unavailable):hover{box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014;box-shadow:var(--shadow-sm);transform:translateY(-2px)}.unavailable-room{background-color:#f9f9f9;cursor:not-allowed;opacity:.8}.unavailable-room:before{background-color:#718096!important;background-color:var(--text-light)!important}.unavailable-room:hover{box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014!important;box-shadow:var(--shadow-sm)!important;transform:translateY(-2px)!important}.room-number{color:#5468ff;color:var(--primary-color);font-size:28px;font-weight:700;margin-bottom:6px;position:relative;z-index:1}.room-name,.unavailable-room .room-number{color:#4a5568;color:var(--text-medium)}.room-name{font-size:14px;margin-bottom:10px}.room-name,.room-status{position:relative;z-index:1}.room-status{border-radius:20px;font-size:12px;font-weight:500;padding:4px 8px}.room-status.available{background-color:#eef0ff;background-color:var(--primary-light);color:#5468ff;color:var(--primary-color)}.room-status.unavailable{background-color:#f7f7f7;color:#718096;color:var(--text-light)}.room-status.occupied{background-color:#ff6b6b;color:#fff}.room-status.available{background-color:#51cf66;color:#fff}.room-status.unavailable{background-color:#adb5bd;color:#fff}.building-header p{color:#fff;margin-top:0}.warning-banner{align-items:center;background-color:#fff3cd;border:1px solid #ffeeba;border-radius:4px;box-shadow:0 2px 4px #0000001a;color:#856404;display:flex;font-size:16px;font-weight:700;justify-content:center;margin:20px 34px 35px 0;padding:12px 16px;text-align:center}.warning-banner:before{margin-right:8px}@media (max-width:768px){.building-header h1{font-size:20px}.rooms-grid{grid-template-columns:repeat(2,1fr)}.room-card{min-height:110px}.room-number{font-size:24px}}@media (max-width:480px){.content-wrapper{padding:24px 16px 90px}.floor-button{min-width:50px;padding:10px 16px}.warning-banner{font-size:13.4px}}.classroom-schedule-container{background-color:#f8f9fa;border-radius:16px;box-shadow:0 10px 30px #00000008;color:#1a1a2e;font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;margin:2rem auto;max-width:1200px;padding:1.5rem}.classroom-header{align-items:center;border-bottom:1px solid #0000000f;display:flex;justify-content:space-between;margin-bottom:3rem;padding-bottom:1rem}.classroom-header h1{color:#16213e;font-size:2rem;font-weight:700;letter-spacing:-.02em;margin:0}.back-button{background-color:#8885e8;border:none;border-radius:8px;box-shadow:0 4px 12px #4361ee26;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.75rem 1.25rem;transition:all .2s ease}.back-button:hover{background-color:#8885e8;transform:translateY(-2px)}.schedule-content{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:3fr 2fr}.lecture-list-section,.timetable-section{background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #0000000a;padding:1.5rem}.lecture-list-section h2,.timetable-section h2{border-bottom:2px solid #4361ee33;color:#16213e;font-size:1.4rem;font-weight:700;margin-bottom:1.5rem;margin-top:0;padding-bottom:.75rem}.timetable-grid{grid-gap:2px;background-color:#f1f3f9;gap:2px}.day-header,.time-header{background-color:#9693eb;color:#fff;font-size:1rem;font-weight:600;padding:10px}.day-header,.time-header,.time-slot{align-items:center;display:flex;justify-content:center}.time-slot{background-color:#f8f9fa;color:#16213e;font-size:.87rem;font-weight:500}.grid-cell{align-items:center;background-color:#fff;border-radius:6px;display:flex;justify-content:center;overflow:hidden;position:relative;transition:transform .15s ease}.grid-cell:hover{transform:scale(1.02);z-index:2}.lecture-color-fill{background-color:#e9eeff;left:0;position:absolute;width:100%;z-index:1}.lecture-info-mini{color:#16213e;font-size:.8rem;font-weight:500;overflow:hidden;padding:6px;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;z-index:2}.lecture-list{font-size:.95rem;line-height:1.8;list-style-type:none;padding-left:0}.lecture-list li{background-color:#4361ee0d;border-radius:8px;margin-bottom:.5rem;margin-top:14px;padding:.75rem 1rem;transition:all .2s ease}.lecture-list li:hover{background-color:#4361ee1a;transform:translateX(4px)}.day-lecture-group{margin-bottom:2rem}.no-lectures{background-color:#f8f9fa;border-radius:8px;color:#6c757d;font-weight:500;margin-top:14px;padding:.9rem;text-align:center}.timetable-grid{grid-gap:3px;background-color:#e0e2e9;border:1px solid #d0d3dd;border-radius:10px;display:grid;gap:3px;grid-auto-rows:60px;grid-template-columns:80px repeat(5,1fr);overflow:hidden}@media (max-width:900px){.schedule-content{gap:1.5rem;grid-template-columns:1fr}.timetable-grid{font-size:.8rem;grid-auto-rows:50px;grid-template-columns:60px repeat(5,1fr)}.lecture-info-mini{font-size:.7rem}}@media (max-width:768px){.classroom-schedule-container{border-radius:12px;margin:1rem auto;padding:1rem}.classroom-header{align-items:flex-start;flex-direction:column;margin-bottom:1.5rem}.classroom-header h1{font-size:1.5rem;margin-bottom:1rem}.lecture-list-section,.timetable-section{padding:1rem}.timetable-grid{font-size:.7rem;grid-auto-rows:40px;grid-template-columns:50px repeat(5,1fr)}.day-header,.time-header{font-size:.7rem;padding:5px}.lecture-info-mini{font-size:.65rem;padding:2px}.lecture-list-section h2,.timetable-section h2{font-size:1.2rem;margin-bottom:1rem}.lecture-list{font-size:.85rem;line-height:1.6}.lecture-list li{padding:.5rem .75rem}}
/*# sourceMappingURL=main.b5de7aac.css.map*/