@import"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap";.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:2000;animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.message-modal{background:#fff;border-radius:20px;width:90%;max-width:400px;padding:25px;box-shadow:0 10px 25px rgba(0,0,0,.1);animation:slideUp .3s ease-in-out;position:relative}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-icon{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;margin:0 auto 15px;font-size:24px;font-weight:700}.modal-header{margin-bottom:15px;text-align:center}.modal-header h3{font-weight:900;font-size:22px;margin:0;color:#333}.modal-body{margin-bottom:25px;text-align:center}.modal-body p{margin:5px 0;font-size:18px;line-height:1.4;color:#555}.modal-highlighted-text{font-weight:800;font-size:20px!important;color:#0076d1!important;margin-top:5px!important}.modal-footer{display:flex;justify-content:space-between;gap:10px}.modal-footer.single-button{justify-content:center}.modal-button{flex:1;padding:12px 20px;border-radius:9999px;font-family:Nunito,Arial,sans-serif;font-weight:800;font-size:16px;cursor:pointer;border:none;transition:all .2s ease}.primary-button{background-color:#05af43;color:#fff}.primary-button:hover{background-color:#049c3b}.secondary-button{background-color:#f2f2f2;color:#555}.secondary-button:hover{background-color:#e5e5e5}.danger-button{background-color:#e53935;color:#fff}.danger-button:hover{background-color:#c62828}.info-button{background-color:#0076d1;color:#fff}.info-button:hover{background-color:#0062b1}.warning-button{background-color:#ff9800;color:#fff}.warning-button:hover{background-color:#ef8c00}.modal-type-success .modal-highlighted-text{color:#05af43!important}.modal-type-error .modal-highlighted-text{color:#e53935!important}.modal-type-warning .modal-highlighted-text{color:#ff9800!important}.modal-type-info .modal-highlighted-text{color:#0076d1!important}.meeting-container{position:fixed;top:0;left:0;right:0;bottom:0;background:#1c1c1e;color:#fff;overflow:hidden}.meeting-lobby{height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1c1c1e,#2c2c2e)}.lobby-content{max-width:500px;width:90%;text-align:center}.lobby-header{margin-bottom:40px}.lobby-title{font-size:32px;font-weight:900;color:#fff;margin:0 0 12px}.lobby-subtitle{font-size:18px;font-weight:600;color:#8e8e93;margin:0}.permission-warning{margin-top:16px;padding:12px 16px;background:rgba(255,204,0,.1);border:1px solid rgba(255,204,0,.3);border-radius:12px;color:#fc0;font-size:14px;font-weight:600}.preview-section{background:#2c2c2e;border-radius:20px;padding:24px;margin-bottom:32px}.session-config{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.config-input{background:#3a3a3c;border:1px solid #48484A;border-radius:12px;padding:12px 16px;color:#fff;font-family:Nunito,Arial,sans-serif;font-size:14px;font-weight:600}.config-input::placeholder{color:#8e8e93}.config-input:focus{outline:none;border-color:#0076d1;background:#48484a}.video-preview{position:relative;width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#1c1c1e;margin-bottom:20px}.video-container{position:relative;width:100%;height:100%}.preview-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.preview-video.video-disabled{filter:brightness(.3)}.video-off-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#fff;background:rgba(0,0,0,.7);border-radius:16px}.video-off-preview{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#8e8e93}.avatar-placeholder{width:64px;height:64px;border-radius:50%;background:#3a3a3c;display:flex;align-items:center;justify-content:center;color:#8e8e93;font-size:24px;font-weight:700}.preview-controls{display:flex;flex-direction:column;align-items:center;gap:16px}.preview-controls>div:first-child{display:flex;justify-content:center;gap:16px}.audio-level-indicator{display:flex;flex-direction:column;width:100%;padding:0 16px;gap:6px}.audio-level-label{font-size:12px;font-weight:600;color:#8e8e93;text-align:center}.audio-level-bar{width:100%;height:8px;background:#2c2c2e;border-radius:4px;overflow:hidden;border:1px solid #3A3A3C;margin-top:4px}.audio-level-fill{height:100%;border-radius:2px;transition:width .1s ease-out;min-width:2px}.control-btn{width:48px;height:48px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-family:Nunito,Arial,sans-serif}.control-btn.active{background:#fff;color:#1c1c1e}.control-btn.inactive{background:#ff3b30;color:#fff}.control-btn.inactive-grey{background:#3a3a3c;color:#fff}.control-btn.loading{background:#8e8e93;color:#fff;cursor:not-allowed}.control-btn:disabled{cursor:not-allowed;opacity:.7}.control-btn:hover{transform:scale(1.05)}.control-btn.loading:hover{transform:none}.loading-spinner{width:20px;height:20px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.join-meeting-btn{width:100%;padding:16px;background:#0076d1;color:#fff;border:none;border-radius:50px;font-family:Nunito,Arial,sans-serif;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s ease}.join-meeting-btn:hover:not(:disabled){background:#0056a3;transform:translateY(-2px)}.join-meeting-btn.disabled,.join-meeting-btn:disabled{background:#3a3a3c;color:#8e8e93;cursor:not-allowed;transform:none}.meeting-interface{height:100vh;display:flex;flex-direction:column}.meeting-header{background:rgba(28,28,30,.9);backdrop-filter:blur(10px);padding:16px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #3A3A3C}.meeting-info{display:flex;flex-direction:column;gap:4px}.meeting-title{font-size:18px;font-weight:900;color:#fff;margin:0}.participant-count{font-size:14px;font-weight:600;color:#8e8e93}.meeting-actions{display:flex;gap:12px}.header-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:transparent;border:1px solid #3A3A3C;border-radius:12px;color:#8e8e93;font-family:Nunito,Arial,sans-serif;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.header-btn:hover,.header-btn.active{background:#3a3a3c;color:#fff}.meeting-main{flex:1;display:flex;overflow:hidden}.video-grid{flex:1;display:flex;flex-direction:column;padding:16px;gap:16px;overflow:hidden}.video-grid.with-chat{flex:0 0 70%}.selected-participant-view{flex:1;margin-bottom:16px}.selected-video{position:relative;width:100%;height:100%;background:#2c2c2e;border-radius:16px;overflow:hidden;border:3px solid #0076D1}.selected-video .avatar-placeholder.large{width:80px;height:80px;font-size:32px}.selected-video .participant-overlay{bottom:16px;left:16px;right:16px}.participant-actions{display:flex;gap:8px}.close-selected{width:32px;height:32px;border-radius:50%;border:none;background:rgba(0,0,0,.7);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-selected:hover{background:rgba(255,59,48,.8)}.screen-share-view{flex:1;background:#2c2c2e;border-radius:16px;overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:16px}.screen-share-view.with-selected{flex:0 0 40%}.screen-share-content{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8e8e93;gap:16px}.screen-placeholder{display:flex;flex-direction:column;align-items:center;gap:16px}.participants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;flex:1;overflow-y:auto;overflow-x:hidden;padding:12px;scrollbar-width:thin;scrollbar-color:#3A3A3C #1C1C1E;min-height:0}.participants-grid::-webkit-scrollbar{width:8px}.participants-grid::-webkit-scrollbar-track{background:#1c1c1e;border-radius:4px}.participants-grid::-webkit-scrollbar-thumb{background:#3a3a3c;border-radius:4px}.participants-grid::-webkit-scrollbar-thumb:hover{background:#48484a}.participants-grid.minimized{display:flex;gap:8px;flex:0 0 120px;max-height:120px;overflow-x:auto;overflow-y:hidden;height:auto}.participants-grid.with-selected{flex:0 0 200px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));height:200px}.participants-grid.minimized .participant-video{min-width:160px;aspect-ratio:16/9}.participant-video{position:relative;background:#2c2c2e;border-radius:12px;overflow:hidden;aspect-ratio:16/9;cursor:pointer;transition:all .3s ease}.participant-video:hover{transform:scale(1.02);border:2px solid #0076D1}.participant-video.me{border:2px solid #0076D1}.participant-video.selected{border:3px solid #34C759;transform:scale(1.02)}.video-element{width:100%;height:100%;object-fit:cover;background:#2c2c2e}.video-element:not([width]){min-width:300px;min-height:200px}.participant-video.me .video-element{transform:scaleX(-1)}.mock-video{width:100%;height:100%;background:linear-gradient(135deg,#3a3a3c,#2c2c2e);display:flex;align-items:center;justify-content:center}.mock-video-content{text-align:center;color:#8e8e93;font-weight:600}.video-off{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#2c2c2e}.video-off .avatar-placeholder{width:56px;height:56px;font-size:20px}.participant-overlay{position:absolute;bottom:12px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:center}.participant-name{background:rgba(0,0,0,.7);padding:4px 8px;border-radius:8px;font-size:12px;font-weight:600;color:#fff}.participant-status{display:flex;gap:4px}.status-indicator{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center}.status-indicator.muted{background:rgba(255,59,48,.9);color:#fff}.chat-panel{width:320px;background:#2c2c2e;border-left:1px solid #3A3A3C;display:flex;flex-direction:column;flex-shrink:0}.chat-header{padding:16px;border-bottom:1px solid #3A3A3C;display:flex;justify-content:space-between;align-items:center}.chat-header h3{margin:0;font-size:16px;font-weight:900;color:#fff}.close-chat{background:none;border:none;color:#8e8e93;cursor:pointer;padding:4px;border-radius:4px;transition:color .2s ease}.close-chat:hover{color:#fff}.chat-messages{flex:1;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.message{display:flex;flex-direction:column;gap:4px}.message.me{align-items:flex-end}.message-header{display:flex;gap:8px;align-items:center;font-size:12px}.message.me .message-header{flex-direction:row-reverse}.sender{font-weight:700;color:#0076d1}.message.me .sender{color:#34c759}.time{color:#8e8e93}.message-content{background:#3a3a3c;padding:8px 12px;border-radius:12px;max-width:240px;word-wrap:break-word;font-size:14px;line-height:1.4}.message.me .message-content{background:#0076d1;color:#fff}.chat-input{padding:16px;border-top:1px solid #3A3A3C;display:flex;gap:8px;align-items:center}.attachment-btn{width:36px;height:36px;border-radius:50%;border:none;background:#3a3a3c;color:#8e8e93;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.attachment-btn:hover{background:#48484a;color:#fff}.chat-input input[type=text]{flex:1;background:#3a3a3c;border:none;border-radius:20px;padding:12px 16px;color:#fff;font-family:Nunito,Arial,sans-serif;font-size:14px}.chat-input input[type=text]::placeholder{color:#8e8e93}.chat-input input[type=text]:focus{outline:none;background:#48484a}.chat-input button:last-child{width:36px;height:36px;border-radius:50%;border:none;background:#0076d1;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.chat-input button:last-child:disabled{background:#3a3a3c;color:#8e8e93;cursor:not-allowed}.chat-input button:last-child:not(:disabled):hover{background:#0056a3}.message-image{display:flex;flex-direction:column;gap:8px}.message-image img{max-width:200px;max-height:150px;border-radius:8px;object-fit:cover}.message-file{display:flex;align-items:center;gap:12px;padding:8px;background:rgba(255,255,255,.1);border-radius:8px}.file-icon{width:32px;height:32px;background:#0076d1;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff}.file-info{display:flex;flex-direction:column;gap:2px}.file-name{font-size:12px;font-weight:600;color:inherit}.file-size{font-size:10px;color:#8e8e93}.meeting-controls{background:rgba(28,28,30,.9);backdrop-filter:blur(10px);padding:20px;border-top:1px solid #3A3A3C}.controls-center{display:flex;justify-content:center;gap:16px;max-width:400px;margin:0 auto}.meeting-controls .control-btn{width:56px;height:56px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.meeting-controls .control-btn.active{background:#fff;color:#1c1c1e}.meeting-controls .control-btn.inactive{background:#ff3b30;color:#fff}.meeting-controls .control-btn.inactive-grey{background:#3a3a3c;color:#fff}.meeting-controls .control-btn:hover{transform:scale(1.05)}.leave-btn{background:#ff3b30!important;color:#fff!important}.leave-btn:hover{background:#d70015!important}@media screen and (min-width: 1200px){.participants-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.participants-grid.with-selected{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media screen and (min-width: 900px) and (max-width: 1199px){.participants-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.participants-grid.with-selected{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media screen and (min-width: 769px) and (max-width: 899px){.participants-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}.participants-grid.with-selected{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media screen and (max-width: 768px){.meeting-header{padding:12px 16px}.meeting-title{font-size:16px}.header-btn span{display:none}.video-grid{padding:8px;gap:8px}.video-grid.with-chat{flex:1}.selected-participant-view{margin-bottom:8px;flex:0 0 40%}.participants-grid{grid-template-columns:repeat(2,1fr);gap:12px;padding:8px;flex:1;min-height:0;overflow-y:auto}.participants-grid.with-selected{grid-template-columns:repeat(2,1fr);flex:1;min-height:0}.participants-grid.minimized{display:flex;gap:8px;height:100px;max-height:100px;flex:0 0 100px;overflow-x:auto;overflow-y:hidden}.participants-grid.minimized .participant-video{min-width:140px;flex-shrink:0}.participant-video{border-radius:8px;min-height:120px}.chat-panel{position:fixed;top:0;right:0;bottom:0;z-index:100;width:100%;max-width:280px}.controls-center{gap:8px}.meeting-controls .control-btn{width:44px;height:44px}.lobby-content{padding:16px}.lobby-title{font-size:24px}.lobby-subtitle{font-size:16px}}@media screen and (max-width: 480px){.video-grid{padding:4px;gap:4px}.participants-grid{grid-template-columns:1fr;gap:8px;padding:4px;flex:1;min-height:0}.participants-grid.with-selected{grid-template-columns:1fr;flex:1;min-height:0}.participant-video{border-radius:6px;min-height:140px}.meeting-controls{padding:12px}.controls-center{gap:6px}.meeting-controls .control-btn{width:40px;height:40px}.chat-panel{max-width:100%}}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}html,body{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;background:transparent}:root{font-family:Nunito,Arial,sans-serif;background:#f2f2f7;margin:15px 30px 30px}.logo{width:45px;height:auto;margin:0 auto}header{position:relative;margin-bottom:10px}.header-actions{position:absolute;top:0;right:0;display:flex;align-items:center;gap:12px}.search-icon-button{width:44px;height:44px;border-radius:50%;background:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.05);transition:all .2s ease;padding:0}.search-icon-button:hover{background:#f8f8f8;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.search-icon-button svg{color:#333;transition:color .2s ease}.search-icon-button:hover svg{color:#0076d1}.user-capsule{display:flex;align-items:center;background:#fff;border-radius:25px;padding:8px 15px 8px 8px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.05);transition:background-color .2s ease}.user-capsule:hover{background-color:#f8f8f8}.user-capsule-img{width:35px;height:35px;margin-right:10px;overflow:hidden;border-radius:50%;display:flex;align-items:center;justify-content:center}.user-capsule-img .user-image{width:100%;height:100%;object-fit:cover}.user-capsule-name{font-weight:900;font-size:16px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}#user-info-box{height:75px;width:100%;border-radius:20px;background:#fff;margin-bottom:4px;display:flex;flex-direction:row;align-items:center;padding:9px 15px;box-sizing:border-box}#user-info-box:empty{padding:0}#user-img-box{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;min-width:45px;min-height:45px;max-width:45px;max-height:45px;overflow:hidden}.user-image{width:100%;height:100%;border-radius:50%;object-fit:cover}#user-name-box{display:flex;flex-direction:column;justify-content:center;margin-left:15px}#user-fname,#user-lname,#user-name{font-weight:900;font-size:20px;margin:0}#below-user-info-box{display:flex;flex-direction:row;margin-top:4px}#edupoints-box{height:65px;width:60%;border-radius:20px;background:#fff;padding:5px 15px;box-sizing:border-box;border:4px solid #0076D1;cursor:pointer;transition:background-color .2s ease}#edupoints-box:hover{background-color:#f8f9ff}#edupoints-box h3{font-weight:900;margin:0}.truncate-text1{display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-width:100%}.truncate-text3{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-width:100%}#peertor-portal-box{margin-left:3px;height:65px;width:40%}#peertor-portal-button{height:100%;width:100%;border-radius:20px;background:#0076d1;color:#fff;font-size:17px;font-weight:900;border:none;cursor:pointer;text-align:left;padding-left:15px;font-family:Nunito,Arial,sans-serif}.classes-container{display:flex;flex-direction:column;margin-top:20px}.classes-container h3{font-weight:900;margin:0 0 5px}.subject-classes-container,#peertor-classes-container{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;margin-bottom:20px;margin-right:-30px;overflow-x:auto;padding-bottom:5px;padding-right:30px;scrollbar-width:none;-ms-overflow-style:none}.subject-classes-container::-webkit-scrollbar{display:none}.class-box{display:flex;flex-direction:column;justify-content:space-between;height:140px;min-width:250px;max-width:350px;margin-right:10px;border-radius:20px;background:#0076d1;color:#fff;padding:10px 15px;box-sizing:border-box}.class-box:last-child{margin-right:0}.class-box-content h4{margin:0}.class-box-footer{display:flex;flex-direction:row;justify-content:start;align-items:center;margin-top:auto}.class-box-footer h6{box-sizing:border-box;margin:0 0 0 7px}#class-box-user-image{width:30px;height:30px}#class-title{font-size:29px;font-weight:900;margin-top:6px;margin-bottom:25px}#details-text,#peertor-text{font-size:20px;font-weight:900;color:#8e8e8e}#class-description{font-size:20px;margin-top:0;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;word-break:break-all}.peertor-details-container{display:flex;flex-direction:row;margin-top:6px}#peertor-img-box{display:flex;align-items:center;justify-content:center;min-width:50px;max-width:50px;min-height:50px;max-height:50px;padding-right:9px}#peertor-name-box{display:flex;flex-direction:column;justify-content:center}.peertor-name{margin:0}.meet-button{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:12px 24px;background-color:#05af43;color:#fff;border:none;border-radius:9999px;font-family:Nunito,Arial,sans-serif;font-weight:800;font-size:18px;cursor:pointer;z-index:1000;box-shadow:0 4px 12px rgba(0,0,0,.15)}#peertor-portal-title,#myaccount-title,#manage-classes-title,#create-class-title,#manage-class-title,#edit-class-title,#rewards-title,.reward-detail-page-title{font-size:32px;font-weight:900;color:#1c1c1e;margin:0}.user-points-container{margin:20px 0}.rewards-layout{display:flex;gap:20px}.rewards-layout.desktop-layout{max-width:none;margin:0 30px;height:calc(100vh - 100px)}.rewards-main-content{flex:1;overflow-y:auto;padding-right:10px;height:100%}.rewards-main-content::-webkit-scrollbar,.rewards-sidebar::-webkit-scrollbar{width:6px}.rewards-main-content::-webkit-scrollbar-track,.rewards-sidebar::-webkit-scrollbar-track{background:transparent}.rewards-main-content::-webkit-scrollbar-thumb,.rewards-sidebar::-webkit-scrollbar-thumb{background:#e5e5e5;border-radius:3px}.rewards-main-content::-webkit-scrollbar-thumb:hover,.rewards-sidebar::-webkit-scrollbar-thumb:hover{background:#d0d0d0}.rewards-sidebar{width:400px;min-height:100%;overflow-y:auto;padding-left:10px;border-left:1px solid #f0f0f0}.reward-detail-sidebar{position:static}.sidebar-header{margin-bottom:10px!important}.sidebar-title{font-size:20px!important;margin:5px 0 8px!important}.no-selection-state{background:#fff;border-radius:20px;padding:40px 20px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.05);height:400px;display:flex;align-items:center;justify-content:center;position:sticky;top:20px}.no-selection-content{max-width:300px}.no-selection-emoji{font-size:48px;display:block;margin-bottom:20px}.no-selection-content h3{margin:0 0 10px;font-size:20px;font-weight:900;color:#333}.no-selection-content p{margin:0;font-size:14px;color:#666;line-height:1.4}.reward-card.selected{border-color:#0076d1;transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,118,209,.2)}@media screen and (max-width: 999px){.rewards-sidebar{display:none}.rewards-layout.desktop-layout{max-width:none;height:auto}.rewards-main-content{overflow-y:visible;padding-right:0;height:auto}.rewards-main-content::-webkit-scrollbar{display:none}}.user-points-box{background:#fff;border-radius:20px;padding:20px;text-align:center;border:4px solid #0076D1;box-shadow:0 2px 8px rgba(0,0,0,.05)}.user-points-box h3{margin:0 0 10px;font-weight:700;color:#666;font-size:16px}.points-value{margin:0;font-size:32px;font-weight:900;color:#0076d1}.category-filter-container{margin:20px 0}.category-filter-container h3{margin:0 0 10px;font-weight:900;font-size:18px}.category-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.category-pill{background:#fff;border:2px solid #E5E5E5;border-radius:25px;padding:8px 16px;font-family:Nunito,Arial,sans-serif;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease;color:#666}.category-pill:hover{border-color:#0076d1;background-color:#f8f9ff}.category-pill.active{background:#0076d1;border-color:#0076d1;color:#fff}.rewards-container{margin-top:20px}.rewards-container h3{margin:0 0 15px;font-weight:900;font-size:18px;display:flex;align-items:center;gap:8px}.rewards-count{font-size:14px;font-weight:600;color:#666}.rewards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px;margin-bottom:20px}.reward-card{background:#fff;border-radius:20px;padding:0;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.05);transition:transform .2s ease,box-shadow .2s ease;border:2px solid transparent;cursor:pointer}.reward-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.1)}.reward-card.out-of-stock{opacity:.6;border-color:#e5e5e5}.reward-detail-container{margin-top:10px}.reward-detail-header{background:#fff;border-radius:20px;padding:20px;margin-bottom:15px;display:flex;align-items:center;gap:20px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.reward-detail-image{position:relative;min-width:80px;height:80px;background:linear-gradient(135deg,#f8f9ff,#e8f0ff);border-radius:20px;display:flex;align-items:center;justify-content:center}.reward-detail-emoji{font-size:40px}.out-of-stock-badge{position:absolute;top:-8px;right:-8px;background:#f44;color:#fff;font-size:10px;font-weight:700;padding:4px 8px;border-radius:12px;text-transform:uppercase}.reward-detail-info{flex:1}.reward-detail-category{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.reward-detail-title{margin:5px 0 10px;font-size:24px;font-weight:900;color:#333;line-height:1.2}.reward-detail-price{display:flex;align-items:baseline;gap:5px}.price-points{font-size:28px;font-weight:900;color:#0076d1}.price-label{font-size:14px;font-weight:600;color:#666}.stock-status{background:#fff;border-radius:20px;padding:15px 20px;margin-bottom:15px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px rgba(0,0,0,.05)}.stock-indicator{font-size:14px;font-weight:700;display:flex;align-items:center;gap:5px}.stock-indicator.in-stock{color:#05af43}.stock-indicator.out-of-stock{color:#f44}.stock-count{font-size:12px;font-weight:600;color:#666}.reward-description-section,.reward-features-section{background:#fff;border-radius:20px;padding:20px;margin-bottom:15px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.reward-description-section h3,.reward-features-section h3{margin:0 0 15px;font-size:18px;font-weight:900;color:#333}.reward-description{margin:0;font-size:16px;line-height:1.5;color:#666}.reward-features-list{margin:0;padding:0;list-style:none}.reward-feature{font-size:14px;color:#666;border-bottom:1px solid #f0f0f0;position:relative;padding:8px 0 8px 20px}.reward-feature:last-child{border-bottom:none}.reward-feature:before{content:"✓";position:absolute;left:0;color:#05af43;font-weight:700}.reward-actions{background:#fff;border-radius:20px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.points-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #f0f0f0}.your-points{font-size:14px;font-weight:600;color:#333}.points-status{font-size:12px;font-weight:700}.points-status.sufficient{color:#05af43}.points-status.insufficient{color:#f44}.redeem-main-button{width:100%;padding:15px;border:none;border-radius:25px;font-family:Nunito,Arial,sans-serif;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease}.redeem-main-button.can-redeem{background:#05af43;color:#fff}.redeem-main-button.can-redeem:hover{background:#048a36;transform:translateY(-1px)}.redeem-main-button.cannot-redeem{background:#e5e5e5;color:#999;cursor:not-allowed}.reward-image{position:relative;height:80px;background:linear-gradient(135deg,#f8f9ff,#e8f0ff);display:flex;align-items:center;justify-content:center}.reward-emoji{font-size:32px}.out-of-stock-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.reward-content{padding:15px}.reward-name{margin:0 0 5px;font-size:16px;font-weight:700;color:#333}.reward-category{margin:0 0 15px;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.reward-footer{display:flex;justify-content:space-between;align-items:center}.reward-points{font-size:14px;font-weight:700;color:#0076d1}.redeem-button{padding:8px 16px;border:none;border-radius:20px;font-family:Nunito,Arial,sans-serif;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.redeem-button.can-redeem{background:#05af43;color:#fff}.redeem-button.can-redeem:hover{background:#048a36}.redeem-button.cannot-redeem{background:#e5e5e5;color:#999;cursor:not-allowed}.truncate-text2{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-width:100%}#logout-button{background-color:#e30f0f;color:#fff;padding:10px 20px;border:none;width:100%;border-radius:9999px;font-size:16px;font-weight:900;font-family:Nunito,Arial,sans-serif;cursor:pointer;transition:background-color .3s ease;margin-top:10px}#logout-button:hover{background-color:#cc0e0e}.login-center-content{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:5px}#please-login-text h3{margin-top:0;margin-bottom:10px}#login-button{background-color:#0076d1;color:#fff;padding:10px 20px;border:none;width:100%;border-radius:9999px;font-size:16px;font-weight:900;font-family:Nunito,Arial,sans-serif;cursor:pointer;transition:background-color .3s ease}.title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}#create-class-button{background-color:#0076d1;color:#fff;padding:10px 20px;border:none;border-radius:9999px;font-size:18px;font-weight:800;font-family:Nunito,Arial,sans-serif;cursor:pointer;transition:background-color .3s ease}#create-class-form input[type=text],#edit-class-form input[type=text]{width:100%;padding:12px 14px;margin-bottom:20px;border:1px solid #ccc;border-radius:8px;font-family:Nunito,Arial,sans-serif;font-size:15px;font-weight:600;transition:border-color .3s ease;box-sizing:border-box}#create-class-form input[type=text]#description,#edit-class-form input[type=text]#edit-description{height:100px}#create-class-form button[type=submit],#edit-class-form button[type=submit],#delete-class-button{width:100%;padding:12px;background-color:#0076d1;color:#fff;font-size:17px;font-family:Nunito,Arial,sans-serif;font-weight:800;border:none;border-radius:9999px;cursor:pointer;transition:background-color .3s ease}#delete-class-button{background-color:#e30f0f;margin-top:10px}@media screen and (min-width: 1000px){.user-container,#logout-button{width:440px}.user-points-container,.category-filter-container,.rewards-container,.reward-detail-container{width:auto}.rewards-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.rewards-layout.desktop-layout{margin:0}.rewards-main-content{padding-right:10px}.rewards-sidebar{padding-left:10px}.welcome-section,.quick-stats-container,.search-section{max-width:600px}.classes-section{max-width:none;margin-left:-30px;margin-right:-30px;padding-left:30px;padding-right:30px}.horizontal-classes-scroll{margin-right:-30px;padding-right:30px}.horizontal-class-card{min-width:260px;max-width:300px}.quick-stats-container{grid-template-columns:1fr 1fr}}@media screen and (max-width: 600px){:root{margin-left:5px;margin-right:5px}.user-capsule-name{max-width:100px;font-size:14px}.rewards-grid{grid-template-columns:1fr;gap:10px}.category-pills{gap:6px}.category-pill{font-size:12px;padding:6px 12px}.points-value{font-size:28px}.reward-detail-header{flex-direction:column;text-align:center;gap:15px}.reward-detail-title{font-size:20px}.price-points{font-size:24px}.points-info{flex-direction:column;gap:8px;align-items:flex-start}}.welcome-section{margin-bottom:14px}.welcome-content{text-align:left}.welcome-text{font-size:28px;font-weight:900;color:#1c1c1e;margin:0 0 8px;line-height:1.2}.welcome-subtitle{font-size:16px;font-weight:600;color:#8e8e93;margin:0}.quick-stats-container{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px;margin-top:4px}.stat-card{background:#fff;border-radius:16px;padding:1px 12px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04);display:flex;align-items:center;gap:12px;min-height:60px}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.12)}.stat-card:first-child{border:2px solid #0076D1}.stat-card:first-child:hover{box-shadow:0 8px 25px rgba(0,118,209,.2)}.stat-card:last-child{background:linear-gradient(135deg,#0076d1,#0056a3);color:#fff}.stat-icon-container{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;border-radius:12px;background:rgba(0,118,209,.1)}.stat-card:last-child .stat-icon-container{background:rgba(255,255,255,.2)}.stat-icon{width:20px;height:20px}.stat-content{flex:1}.stat-label{font-size:13px;font-weight:700;color:#8e8e93;margin:0 0 2px;text-transform:uppercase;letter-spacing:.5px}.stat-card:last-child .stat-label{color:rgba(255,255,255,.8)}.stat-value{font-size:22px;font-weight:900;color:#0076d1;margin:0}.stat-card:last-child .stat-value,.stat-card:last-child .stat-description{color:#fff}.stat-description{font-size:13px;font-weight:600;color:#8e8e93;margin:0}.search-section{margin-bottom:28px}.enhanced-search-button{width:100%;padding:16px 20px;border-radius:50px;border:none;background:#fff;font-family:Nunito,Arial,sans-serif;font-size:16px;font-weight:600;color:#8e8e93;display:flex;align-items:center;text-align:left;cursor:pointer;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04);transition:all .3s ease;position:relative;justify-content:flex-start}.enhanced-search-button:hover{background:#fafafa;box-shadow:0 2px 12px rgba(0,118,209,.15);border-color:#0076d1}.enhanced-search-button:hover .search-icon{color:#0076d1}.enhanced-search-button .search-icon-wrapper{display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:20px;position:static}.enhanced-search-button .search-text{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.enhanced-search-button .search-shortcut{background:#f2f2f7;padding:4px 8px;border-radius:8px;font-size:12px;font-weight:700;color:#8e8e93;margin-left:16px;flex-shrink:0}.classes-section{margin-top:8px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-title{font-size:24px;font-weight:900;color:#1c1c1e;margin:0}.view-all-button{background:none;border:none;color:#0076d1;font-size:16px;font-weight:700;cursor:pointer;padding:8px 16px;border-radius:12px;transition:background-color .2s ease;font-family:Nunito,Arial,sans-serif}.view-all-button:hover{background:rgba(0,118,209,.1)}.featured-classes-container{display:flex;flex-direction:column;gap:32px}.subject-row{position:relative}.subject-row-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.subject-row-title{font-size:18px;font-weight:900;color:#1c1c1e;margin:0}.see-more-button{background:none;border:none;color:#8e8e93;font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .2s ease;font-family:Nunito,Arial,sans-serif}.see-more-button:hover{color:#0076d1;background:rgba(0,118,209,.05)}.horizontal-classes-scroll{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;margin-right:-30px;padding-right:30px;scrollbar-width:none;-ms-overflow-style:none}.horizontal-classes-scroll::-webkit-scrollbar{display:none}.horizontal-class-card{background:#fff;border-radius:16px;min-width:240px;max-width:280px;cursor:pointer;transition:border-color .3s ease;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04);overflow:hidden;flex-shrink:0}.horizontal-class-card:hover{border-color:#0076d1}.horizontal-card-content{padding:16px}.horizontal-card-header{margin-bottom:8px}.horizontal-card-badge{background:linear-gradient(135deg,#0076d1,#0056a3);color:#fff;font-size:9px;font-weight:700;padding:3px 6px;border-radius:6px;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.horizontal-card-title{font-size:16px;font-weight:900;color:#1c1c1e;margin:0 0 16px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:60px}.horizontal-card-footer{margin-top:auto}.horizontal-instructor-info{display:flex;align-items:center;gap:8px}.horizontal-instructor-avatar{width:24px;height:24px;border-radius:50%;background:#f2f2f7;display:flex;align-items:center;justify-content:center;overflow:hidden}.horizontal-instructor-avatar img{width:100%;height:100%;object-fit:cover}.horizontal-instructor-name{font-size:12px;font-weight:600;color:#8e8e93;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.empty-state{background:#fff;border-radius:20px;padding:48px 24px;text-align:center;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04)}.empty-state-content{max-width:280px;margin:0 auto}.empty-state-icon{margin-bottom:24px}.empty-state h3{font-size:20px;font-weight:900;color:#1c1c1e;margin:0 0 8px}.empty-state p{font-size:16px;font-weight:600;color:#8e8e93;margin:0;line-height:1.4}.subjects-container{display:flex;flex-direction:column;gap:32px}.subject-section{position:relative}.subject-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.subject-title{font-size:20px;font-weight:900;color:#1c1c1e;margin:0}.subject-count{font-size:12px;font-weight:700;color:#8e8e93;background:#f2f2f7;padding:4px 12px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.subject-classes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-right:-30px;padding-right:30px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.subject-classes-grid::-webkit-scrollbar{display:none}.modern-class-card{background:#fff;border-radius:20px;padding:0;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04);overflow:hidden;min-height:160px;display:flex;flex-direction:column}.modern-class-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,.15);border-color:#0076d1}.class-card-header{padding:16px 20px 0;display:flex;justify-content:space-between;align-items:flex-start}.class-card-badge{background:linear-gradient(135deg,#0076d1,#0056a3);color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.class-card-content{padding:12px 20px;flex:1}.class-card-title{font-size:18px;font-weight:900;color:#1c1c1e;margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.class-card-footer{padding:0 20px 20px;display:flex;justify-content:space-between;align-items:center;margin-top:auto}.instructor-info{display:flex;align-items:center;gap:8px}.instructor-avatar{width:28px;height:28px;border-radius:50%;background:#f2f2f7;display:flex;align-items:center;justify-content:center;overflow:hidden}.instructor-avatar img{width:100%;height:100%;object-fit:cover}.instructor-name{font-size:14px;font-weight:700;color:#8e8e93;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.class-card-arrow{color:#c7c7cc;transition:all .3s ease}.modern-class-card:hover .class-card-arrow{color:#0076d1;transform:translate(4px)}@media screen and (max-width: 600px){:root{margin-left:5px;margin-right:5px}.user-capsule-name{max-width:100px;font-size:14px}.rewards-grid{grid-template-columns:1fr;gap:10px}.category-pills{gap:6px}.category-pill{font-size:12px;padding:6px 12px}.points-value{font-size:28px}.reward-detail-header{flex-direction:column;text-align:center;gap:15px}.reward-detail-title{font-size:20px}.price-points{font-size:24px}.points-info{flex-direction:column;gap:8px;align-items:flex-start}.welcome-text{font-size:24px}.horizontal-classes-scroll{margin-right:-5px;padding-right:5px}.horizontal-class-card{min-width:200px;max-width:240px}.section-title{font-size:20px}.horizontal-card-title{font-size:14px;min-height:54px}.search-shortcut{display:none}.view-all-button{font-size:14px;padding:6px 12px}}@media screen and (max-width: 500px){#class-title{font-size:24px}}@media screen and (min-width: 1000px){.welcome-section,.quick-stats-container,.search-section{max-width:600px}.classes-section{max-width:none;margin-left:-30px;margin-right:-30px;padding-left:30px;padding-right:30px}.horizontal-classes-scroll{margin-right:-30px;padding-right:30px}.horizontal-class-card{min-width:260px;max-width:300px}.quick-stats-container{grid-template-columns:1fr 1fr}}.search-button-container{margin:20px 0;width:100%}.search-button{width:100%;padding:14px 16px;border-radius:20px;border:none;background:#fff;font-family:Nunito,Arial,sans-serif;font-size:16px;font-weight:600;color:#aaa;display:flex;align-items:center;text-align:left;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.05)}.search-button:hover{background:#f8f8f8}.search-icon{width:20px;height:20px;margin-right:10px;opacity:.6}.search-container{margin:20px 0;width:100%}.search-input{width:100%;padding:14px 40px 14px 16px;border-radius:50px;border:none;background:#fff;font-family:Nunito,Arial,sans-serif;font-size:16px;font-weight:600;box-shadow:0 2px 8px rgba(0,0,0,.05)}.search-input:focus{outline:none;box-shadow:0 2px 12px rgba(0,118,209,.15);border:1px solid #0076D1}.search-input::placeholder{color:#aaa}.clear-search-button{position:absolute;right:16px;background:none;border:none;color:#aaa;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.clear-search-button:hover{color:#666}.no-results{width:100%;text-align:center;padding:20px;color:#888;font-style:italic}.loading-message{text-align:center;padding:20px;color:#888}.search-nav-container{display:flex;align-items:center;width:100%;margin-top:10px;margin-bottom:20px}.inline-search-container{flex:1}@media screen and (min-width: 1000px){.search-button-container,.search-container,.search-nav-container{width:440px}}.search-input-container{position:relative;display:flex;align-items:center}.search-input-container .search-icon-wrapper{position:absolute;left:12px;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:2}.search-input-icon{color:#aaa}.search-input-with-icon{padding-left:38px!important}.search-results-container{margin-top:24px}.search-results-header{margin-bottom:20px}.search-results-title{font-size:24px;font-weight:900;color:#1c1c1e;margin:0 0 8px}.search-results-subtitle{font-size:16px;font-weight:600;color:#8e8e93;margin:0}.search-empty-state{background:#fff;border-radius:20px;padding:48px 24px;text-align:center;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04);margin-top:40px}.search-empty-content{max-width:280px;margin:0 auto}.search-empty-icon{margin-bottom:24px}.search-empty-state h3{font-size:20px;font-weight:900;color:#1c1c1e;margin:0 0 8px}.search-empty-state p{font-size:16px;font-weight:600;color:#8e8e93;margin:0;line-height:1.4}.no-results-state{background:#fff;border-radius:20px;padding:48px 24px;text-align:center;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04)}.no-results-content{max-width:280px;margin:0 auto}.no-results-icon{margin-bottom:24px}.no-results-state h3{font-size:20px;font-weight:900;color:#1c1c1e;margin:0 0 8px}.no-results-state p{font-size:16px;font-weight:600;color:#8e8e93;margin:0;line-height:1.4}.search-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:20px}.search-result-card{background:#fff;border-radius:20px;cursor:pointer;transition:border-color .3s ease;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04);overflow:hidden;min-height:160px;display:flex;flex-direction:column}.search-result-card:hover{border-color:#0076d1}.search-card-content{padding:20px;display:flex;flex-direction:column;height:100%}.search-card-header{margin-bottom:12px}.search-card-badge{background:linear-gradient(135deg,#0076d1,#0056a3);color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.search-card-title{font-size:18px;font-weight:900;color:#1c1c1e;margin:0 0 auto;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;flex:1}.search-card-footer{margin-top:16px}.search-instructor-info{display:flex;align-items:center;gap:8px}.search-instructor-avatar{width:28px;height:28px;border-radius:50%;background:#f2f2f7;display:flex;align-items:center;justify-content:center;overflow:hidden}.search-instructor-avatar img{width:100%;height:100%;object-fit:cover}.search-instructor-name{font-size:14px;font-weight:700;color:#8e8e93;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}@media screen and (max-width: 600px){.search-results-grid{grid-template-columns:1fr;gap:12px}.search-results-title{font-size:20px}.search-card-title{font-size:16px}}@media screen and (min-width: 1000px){.search-results-container{max-width:none;margin-left:-30px;margin-right:-30px;padding-left:30px;padding-right:30px}.search-results-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}}.peertor-portal-login{min-height:100vh;display:flex;flex-direction:column}.login-center-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px 20px}.login-icon{margin-bottom:24px}.portal-title{font-size:32px;font-weight:900;color:#1c1c1e;margin:0 0 12px}.portal-subtitle{font-size:16px;font-weight:600;color:#8e8e93;margin:0 0 32px;max-width:400px}.portal-login-button{background:#0076d1;color:#fff;border:none;border-radius:50px;padding:14px 40px;font-family:Nunito,Arial,sans-serif;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px rgba(0,118,209,.3)}.portal-login-button:hover{background:#0056a3;transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,118,209,.4)}.peertor-portal-main{min-height:100vh}.portal-header,.manage-header,.rewards-header,.myaccount-header,.reward-detail-page-header{margin-bottom:32px;margin-top:10px;display:flex;align-items:center;gap:15px}.portal-header-content,.manage-header-content,.rewards-header-content,.myaccount-header-content,.reward-detail-page-header-content{flex:1;text-align:left}.portal-main-title,.manage-title{font-size:32px;font-weight:900;color:#1c1c1e;margin:0}.portal-main-subtitle,.manage-subtitle{font-size:16px;font-weight:600;color:#8e8e93;margin:0}.portal-section{margin-bottom:40px}.portal-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.portal-section .section-title{font-size:22px;font-weight:900;color:#1c1c1e;margin:0}.create-class-btn{background:#0076d1;color:#fff;border:none;border-radius:50px;padding:10px 20px;font-family:Nunito,Arial,sans-serif;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:6px}.create-class-btn:hover{background:#0056a3;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,118,209,.3)}.peertor-classes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.peertor-class-card{background:linear-gradient(135deg,#0076d1,#0056a3);border-radius:20px;padding:20px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px rgba(0,118,209,.3);border:2px solid transparent;color:#fff;min-height:160px;display:flex;flex-direction:column;justify-content:space-between}.peertor-class-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,118,209,.4);border-color:rgba(255,255,255,.3)}.peertor-card-header{margin-bottom:16px}.peertor-badge{background:rgba(255,255,255,.2);backdrop-filter:blur(10px);color:#fff;font-size:10px;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.peertor-card-content{flex:1}.peertor-card-title{font-size:18px;font-weight:900;color:#fff;margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.peertor-card-footer{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.2)}.card-meta{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:rgba(255,255,255,.9)}.card-meta svg{flex-shrink:0}.empty-state-card{background:#fff;border-radius:20px;padding:48px 24px;text-align:center;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04)}.empty-state-icon{margin-bottom:20px;display:flex;justify-content:center}.empty-state-card h3{font-size:18px;font-weight:900;color:#1c1c1e;margin:0 0 8px}.empty-state-card p{font-size:14px;font-weight:600;color:#8e8e93;margin:0;line-height:1.4}@media screen and (max-width: 600px){.portal-main-title{font-size:28px}.portal-section .section-title{font-size:20px}.create-class-btn span{display:none}.create-class-btn{padding:10px 16px}.peertor-classes-grid{grid-template-columns:1fr;gap:12px}.peertor-class-card{min-height:140px}}@media screen and (min-width: 1000px){.portal-header{margin-bottom:40px}.peertor-classes-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.portal-section{margin-bottom:48px}}.manage-classes-container{min-height:100vh}.manage-section{margin-top:10px}.manage-header{margin-bottom:28px}.manage-form{max-width:600px}.form-card{background:#fff;border-radius:20px;padding:28px;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04)}.form-group{margin-bottom:24px}.form-group:last-of-type{margin-bottom:28px}.form-label{display:block;font-size:14px;font-weight:700;color:#1c1c1e;margin-bottom:8px}.required-mark{color:#ff3b30;margin-left:4px}.form-input,.form-textarea{width:100%;padding:14px 16px;border:2px solid #E5E5EA;border-radius:12px;font-family:Nunito,Arial,sans-serif;font-size:16px;font-weight:600;color:#1c1c1e;transition:all .3s ease;box-sizing:border-box;background:#f9f9f9}.form-input:focus,.form-textarea:focus{outline:none;border-color:#0076d1;background:#fff;box-shadow:0 0 0 4px rgba(0,118,209,.1)}.form-input::placeholder,.form-textarea::placeholder{color:#8e8e93;font-weight:600}.form-textarea{resize:vertical;min-height:100px;line-height:1.5}.form-select{width:100%;padding:14px 44px 14px 16px;border:2px solid #E5E5EA;border-radius:12px;font-family:Nunito,Arial,sans-serif;font-size:16px;font-weight:600;color:#1c1c1e;transition:all .3s ease;box-sizing:border-box;background:#f9f9f9;cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%238E8E93' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.form-select:focus{outline:none;border-color:#0076d1;background-color:#fff;box-shadow:0 0 0 4px rgba(0,118,209,.1)}.form-hint{display:block;font-size:13px;font-weight:600;color:#8e8e93;margin-top:8px}.datetime-picker-group{display:grid;grid-template-columns:1fr 1fr;gap:12px}.date-picker-wrapper,.time-picker-wrapper{display:flex;flex-direction:column;gap:8px}.picker-sub-label{font-size:12px;font-weight:700;color:#8e8e93;text-transform:uppercase;letter-spacing:.5px}.date-input,.time-input{cursor:pointer;position:relative}.date-input::-webkit-calendar-picker-indicator,.time-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;transition:opacity .3s ease}.date-input:hover::-webkit-calendar-picker-indicator,.time-input:hover::-webkit-calendar-picker-indicator{opacity:1}@media screen and (max-width: 600px){.datetime-picker-group{grid-template-columns:1fr;gap:16px}}.toggle-field{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#f9f9f9;border-radius:12px;border:2px solid #E5E5EA;transition:all .3s ease}.toggle-field:hover{border-color:#d1d1d6;background:#f5f5f5}.toggle-info{flex:1;display:flex;flex-direction:column;gap:4px}.toggle-info .form-label{margin-bottom:0}.toggle-description{font-size:13px;font-weight:600;color:#8e8e93}.toggle-switch{position:relative;display:inline-block;width:56px;height:32px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#e5e5ea;transition:.3s;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:26px;width:26px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.toggle-switch input:checked+.toggle-slider{background-color:#34c759}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 4px rgba(52,199,89,.2)}.form-submit-button{width:100%;padding:16px;background:#0076d1;color:#fff;border:none;border-radius:50px;font-family:Nunito,Arial,sans-serif;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 16px rgba(0,118,209,.3)}.form-submit-button:hover{background:#0056a3;transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,118,209,.4)}.danger-zone{max-width:600px;margin-top:32px;background:#fff;border-radius:20px;padding:28px;box-shadow:0 2px 12px rgba(0,0,0,.08);border:2px solid #FFE5E5}.danger-zone-header{margin-bottom:16px}.danger-zone-title{font-size:18px;font-weight:900;color:#ff3b30;margin:0 0 6px}.danger-zone-description{font-size:14px;font-weight:600;color:#8e8e93;margin:0}.delete-class-button{width:100%;padding:14px;background:#fff;color:#ff3b30;border:2px solid #FF3B30;border-radius:50px;font-family:Nunito,Arial,sans-serif;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.delete-class-button:hover{background:#ff3b30;color:#fff;transform:translateY(-2px);box-shadow:0 4px 16px rgba(255,59,48,.3)}.classes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.class-list-item{background:#fff;border-radius:16px;padding:20px;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04);transition:all .3s ease;cursor:pointer}.class-list-item:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.12)}.class-list-content{display:flex;flex-direction:column;gap:12px}.class-list-badge{display:inline-block;background:rgba(0,118,209,.1);color:#0076d1;font-size:12px;font-weight:700;padding:6px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;width:fit-content}.class-list-title{font-size:18px;font-weight:900;color:#1c1c1e;margin:0;line-height:1.3}@media screen and (max-width: 600px){.manage-title{font-size:28px}.form-card,.danger-zone{padding:20px}.classes-list{grid-template-columns:1fr;gap:12px}}@media screen and (min-width: 1000px){.manage-header{margin-bottom:32px}.form-card,.danger-zone{max-width:700px}.classes-list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}}.class-container{min-height:100vh;padding-bottom:120px}.back-button{background:#fff;border:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-bottom:0;box-shadow:0 2px 8px rgba(0,0,0,.05);transition:all .2s ease;padding:0}.back-button:hover{background:#f8f8f8;transform:translate(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.back-button svg{color:#333;transition:color .2s ease}.back-button:hover svg{color:#0076d1}.search-back-button{margin:0 10px 0 0!important}.error-state,.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.error-icon{font-size:64px;margin-bottom:16px}.error-state h2{font-size:20px;font-weight:700;color:#ff3b30;margin:0}.loading-spinner{width:48px;height:48px;border:4px solid #E5E5EA;border-top-color:#0076d1;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.loading-state h2{font-size:18px;font-weight:700;color:#8e8e93;margin:0}.class-header{margin-top:10px;margin-bottom:24px}.class-badge{display:inline-block;background:linear-gradient(135deg,#0076d1,#0056a3);color:#fff;font-size:12px;font-weight:700;padding:6px 14px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.class-title{font-size:25px;font-weight:900;color:#1c1c1e;margin:0;line-height:1.2}.class-info-section{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.info-card{background:#fff;border-radius:20px;padding:20px;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04)}.info-card-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.info-card-title{font-size:16px;font-weight:900;color:#1c1c1e;margin:0}.info-card-content{font-size:16px;font-weight:600;color:#3c3c43;line-height:1.6;margin:0;white-space:pre-wrap;word-wrap:break-word}.peertor-info{display:flex;align-items:center;gap:16px}.peertor-avatar{width:56px;height:56px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#f2f2f7,#e5e5ea);display:flex;align-items:center;justify-content:center;flex-shrink:0}.peertor-image{width:100%;height:100%;object-fit:cover}.peertor-details{flex:1;display:flex;flex-direction:column;gap:4px}.peertor-name{font-size:18px;font-weight:900;color:#1c1c1e;margin:0}.peertor-role{font-size:14px;font-weight:600;color:#8e8e93}.schedule-info{display:flex;flex-direction:column;gap:12px}.schedule-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:#f9f9f9;border-radius:12px}.schedule-label{font-size:12px;font-weight:700;color:#8e8e93;text-transform:uppercase;letter-spacing:.5px}.schedule-value{font-size:16px;font-weight:700;color:#1c1c1e}.class-actions{position:fixed;bottom:0;left:0;right:0;padding:16px 30px 30px;background:linear-gradient(to top,#f2f2f7 70%,rgba(242,242,247,0));z-index:100}.meet-now-button{width:100%;padding:18px;background:linear-gradient(135deg,#34c759,#28a745);color:#fff;border:none;border-radius:50px;font-family:Nunito,Arial,sans-serif;font-size:18px;font-weight:900;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 6px 20px rgba(52,199,89,.4)}.meet-now-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px rgba(52,199,89,.5)}.meet-now-button:disabled{opacity:.6;cursor:not-allowed}.button-spinner{width:18px;height:18px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media screen and (max-width: 600px){.class-title{font-size:20px}.info-card{padding:16px}.peertor-avatar{width:48px;height:48px}.peertor-name{font-size:16px}.meet-now-button{font-size:16px;padding:16px}}@media screen and (min-width: 1000px){.class-info-section{gap:20px}}
