.ContainerLogIn{position:relative;width:100%;min-height:100vh;min-height:100dvh;display:flex;justify-content:flex-end;align-items:center;padding:20px clamp(16px,6vw,8%) 20px 16px;overflow-y:auto;background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:scroll}.ContainerLogIn:after{content:"";position:absolute;inset:0;background:#0006;z-index:0}.wrapperLogIn{position:relative;z-index:2;width:min(420px,100%);margin:auto 0}.wrapperLogIn form{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;padding:clamp(32px,6vw,55px) clamp(20px,5vw,40px);background:#fff;border-radius:22px;box-shadow:0 30px 60px #00000040;overflow:hidden}.wrapperLogIn form:before{content:"";position:absolute;left:0;top:0;width:8px;height:100%;background:linear-gradient(to bottom,#a855f7,#ff005c)}.logoLogIn{width:clamp(120px,38vw,180px);height:auto;margin-bottom:5px}.wrapperLogIn h1{font-size:clamp(30px,8vw,40px);font-weight:700;margin-bottom:8px;color:#111}.inputBox{position:relative;width:100%;margin-bottom:20px}.inputBox input{width:100%;height:48px;padding:0 48px 0 18px;border-radius:26px;border:1px solid #ddd;background:#f3f3f3;font-size:14px;transition:all .3s ease}.inputBox input:focus{border-color:#a855f7;background:#fff;box-shadow:0 0 0 3px #a855f726;outline:none}.inputBox>svg{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#888;font-size:15px}.togglePassword{position:absolute;right:42px;top:50%;transform:translateY(-50%);color:#888;font-size:15px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.togglePassword svg{position:static;transform:none}.rememberForgot{width:100%;display:flex;flex-direction:column;gap:10px;font-size:clamp(12px,3.2vw,13px);margin-bottom:22px}.rememberForgot label{display:flex;align-items:flex-start;gap:8px;color:#555}.termsConsentLabel{line-height:1.45}.termsConsentLabel input{margin:3px 0 0;flex-shrink:0}.termsConsentText{display:inline;min-width:0}.termsConsentText--compact{display:none}.termsConsentLabel a{color:#a855f7;font-weight:600}.termsConsentLabel a:hover{text-decoration:underline}.rememberForgot a{text-decoration:none;color:#a855f7;font-weight:500}.rememberForgot a:hover{text-decoration:underline}.btn{width:100%;height:48px;border:none;border-radius:26px;font-size:15px;font-weight:600;color:#fff;cursor:pointer;background:linear-gradient(90deg,#a855f7,#ff005c);transition:all .3s ease}.btn:active{transform:scale(.98)}@media(max-width:480px){.ContainerLogIn{justify-content:center;align-items:flex-start;padding:14px}.wrapperLogIn form{border-radius:18px;box-shadow:0 18px 42px #0003;padding:26px 18px}.inputBox input{font-size:16px}.btn{font-size:14px}.termsConsentText--full{display:none}.termsConsentText--compact{display:inline}}@media(max-width:360px){.ContainerLogIn{padding:10px}.wrapperLogIn form{padding:22px 14px}.inputBox{margin-bottom:16px}}@media(max-height:720px){.ContainerLogIn{align-items:flex-start}.wrapperLogIn{margin:12px 0}.subtitle{margin-bottom:20px}.inputBox,.rememberForgot{margin-bottom:16px}}@media(min-width:768px){.ContainerLogIn{justify-content:flex-end;padding:24px clamp(24px,6vw,8%) 24px 24px}}@media(max-width:900px){.ContainerLogIn{justify-content:center}}.modal-overlay{position:fixed;inset:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;font-family:system-ui,-apple-system,sans-serif;animation:overlayFadeIn .2s ease-out}.modal-container{background:#fff;border-radius:1rem;position:relative;width:100%;max-width:480px;max-height:85vh;overflow:hidden;box-shadow:0 25px 50px -12px #00000040;animation:modalSlideIn .25s ease-out;display:flex;flex-direction:column}.modal-container:before{content:"";display:block;height:.2rem;background:linear-gradient(to right,#f6047b,#c820c5,#c820c5);flex-shrink:0}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem 1rem;border-bottom:1px solid #f3f4f6;background:#fff;flex-shrink:0}.modal-title{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0;letter-spacing:-.01em}.modal-close-btn{background:none;border:none;font-size:1.1rem;color:#9ca3af;cursor:pointer;padding:.25rem;border-radius:9999px;transition:all .2s ease;line-height:1;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.modal-close-btn:hover{background-color:#fdf2f8;color:#d11c7f}.modal-close-btn:focus-visible{outline:2px solid #e040a0;outline-offset:2px}.modal-body{padding:1.5rem;flex:1;overflow-y:auto;background-color:#fff}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:transparent}.modal-body::-webkit-scrollbar-thumb{background-color:#e5e7eb;border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover{background-color:#d1d5db}.modal-footer{padding:1rem 1.5rem;display:flex;justify-content:flex-end;gap:.75rem;border-top:1px solid #f3f4f6;background-color:#f9fafb;flex-shrink:0}.modal-action-btn{padding:.625rem 1.5rem;background:linear-gradient(135deg,#f6047b,#c820c5);color:#fff;border:none;border-radius:.75rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 4px 6px -1px #f4078026,0 2px 4px -1px #c820c51a}.modal-action-btn:hover{background:linear-gradient(135deg,#d4036a,#a81aaa);transform:translateY(-1px);box-shadow:0 6px 12px -2px #f4078040,0 3px 6px -1px #c820c526}.modal-action-btn:active{transform:translateY(0) scale(.98);box-shadow:0 2px 4px -1px #f4078026}.modal-action-btn:focus-visible{outline:2px solid #e040a0;outline-offset:2px}.modal-secondary-btn{padding:.625rem 1.25rem;background:#fff;color:#6b7280;border:1px solid #d1d5db;border-radius:.75rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-secondary-btn:hover{background:#f9fafb;border-color:#9ca3af;color:#374151}.modal-secondary-btn:focus-visible{outline:2px solid #9ca3af;outline-offset:2px}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:600px){.modal-overlay{padding:.75rem;align-items:flex-end}.modal-container{max-width:100%;max-height:90vh;border-radius:1rem 1rem .5rem .5rem}.modal-header{padding:1rem 1.25rem .75rem}.modal-title{font-size:1.1rem}.modal-body{padding:1.25rem}.modal-footer{padding:.875rem 1.25rem}.modal-action-btn{width:100%;text-align:center;font-size:16px}}*,*:before,*:after{box-sizing:border-box}#root{min-height:100vh;min-height:100dvh;height:100vh;height:100dvh;margin:0;padding:0}.App{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;height:100vh;height:100dvh;width:100%}header{flex-shrink:0;background:#fff}.mainContent{display:grid;grid-template-columns:1fr;gap:.5em;padding:.5rem;flex:1;min-height:0;width:100%;box-sizing:border-box;overflow:visible}.page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:48px 24px}.card{width:min(1120px,95vw);position:relative;padding:48px 40px 56px;background:linear-gradient(180deg,#fdfdff,#f7f7fb) padding-box,linear-gradient(135deg,#ff4f73,#8a3bf3) border-box;border:2px solid transparent;border-radius:32px;box-shadow:0 40px 120px #69188c29;overflow:hidden;animation:fade-in .6s ease}.card:after{content:"";position:absolute;inset:14px;border-radius:24px;background:radial-gradient(circle at 20% 30%,rgba(255,79,115,.08),transparent 45%),radial-gradient(circle at 80% 20%,rgba(138,59,243,.1),transparent 40%),radial-gradient(circle at 40% 75%,rgba(15,156,102,.08),transparent 42%);pointer-events:none}@keyframes fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:720px){.card{padding:32px 24px 40px}}.ToDoSection{background:#f9fafb;border-radius:.8rem;padding:1rem;box-shadow:0 4px 12px #0000000d;overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none;order:2;min-height:0;align-self:stretch}.ToDoSection::-webkit-scrollbar{display:none;width:0;height:0}.CalendarSection{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;box-sizing:border-box;order:1;overflow:visible;height:auto;min-height:80dvh}.Calendar{display:flex;flex-direction:column;flex:1;height:100%;min-height:0;overflow-x:visible}@media(min-width:1024px){.mainContent{grid-template-columns:.85fr 2.15fr;grid-template-rows:1fr;overflow:hidden}.ToDoSection{order:1;min-height:0;height:100%}.CalendarSection{order:2;min-height:0;height:100%;overflow:visible}}@media(max-width:1023px){.ToDoSection{padding:0;height:0;min-height:0;overflow:visible;background:none;box-shadow:none;border:none}}header{display:flex;align-items:center;justify-content:space-between;padding:.8rem 2rem;background-color:#fff;border-bottom:1px solid #e5e7eb;font-family:system-ui,-apple-system,sans-serif}.headerLeft,.headerRight{display:flex;align-items:center;gap:1rem}.helpInstructionsButton{width:34px;height:34px;border-radius:999px;border:1px solid #d1d5db;background:#fff;color:#374151;font-size:1rem;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.helpInstructionsButton:hover{color:#111827;border-color:#c026d3;box-shadow:0 4px 12px #c026d333;transform:translateY(-1px)}.helpInstructionsButton:focus-visible{outline:2px solid #c026d3;outline-offset:2px}.helpInstructionsContent{color:#374151;font-size:.95rem;line-height:1.5}.helpInstructionsContent p{margin:0 0 .75rem}.helpInstructionsContent ol{margin:0 0 .75rem;padding-left:1.25rem}.helpInstructionsContent li{margin-bottom:.45rem}header img{height:3rem;width:auto}header h1{display:flex;justify-content:center;align-items:center;margin:0;font-size:2rem;font-weight:600;color:#000}header nav ul{list-style:none;display:flex;gap:2rem;margin:0;padding:0}header nav ul li a{text-decoration:none;font-size:.9rem;font-weight:500;color:#374151;transition:color .2s ease}header nav ul li a:hover{color:#c026d3}.menuButton{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer}@media(max-width:768px){header{padding:.8rem 1rem}header h1{font-size:1.1rem}header nav{position:fixed;top:0;left:0;height:100vh;min-width:50%;background:#fff;padding:2rem 1.5rem;box-shadow:2px 0 10px #000;transform:translate(-100%);transition:transform .3s ease;z-index:1001}header nav.open{transform:translate(0)}header nav ul{flex-direction:column;gap:1.5rem}.menuButton{display:block}.overlay{position:fixed;inset:0;background:#00000080;z-index:1000}header nav ul li a{font-size:.8rem}}.user-profile{padding:0;max-width:100%;font-family:system-ui,-apple-system,sans-serif}.profile-section{margin-bottom:8px;padding:1.25rem 1.5rem;background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000000a;border:1px solid #f3f4f6;position:relative;overflow:hidden}.profile-section:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,#f6047b,#c820c5,#c820c5);border-radius:1rem 1rem 0 0}.profile-section:last-child{margin-bottom:0}.profile-section-title{margin:.5rem 0 1.25rem;font-size:1.1rem;font-weight:700;color:#1f2937;letter-spacing:-.01em}.profile-section-description{margin:0 0 1rem;font-size:.875rem;color:#6b7280;line-height:1.5}.info-group{margin-bottom:14px}.info-group:last-child{margin-bottom:0}.info-label{display:block;font-size:.625rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.info-value{font-size:14px;font-weight:500;color:#1f2937;padding:10px 14px;background-color:#f9fafb;border-radius:.75rem;border:1px solid #f3f4f6;word-break:break-all;transition:background-color .2s ease}.info-value:hover{background-color:#f3f4f6}.password-form{display:flex;flex-direction:column;gap:18px}.password-checklist{margin-top:10px;padding:12px 14px;border:1px solid #f2e8f4;background:linear-gradient(180deg,#fff7fb,#fff);border-radius:.75rem}.password-match-hint{margin:8px 2px 0;display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600}.password-match-hint.match{color:#0f766e}.password-match-hint.no-match{color:#b91c1c}.form-group{display:flex;flex-direction:column}.form-label{font-size:.625rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.password-input-wrapper{position:relative;display:flex;align-items:center}.form-input{width:100%;padding:11px 40px 11px 14px;font-size:14px;font-weight:400;color:#1f2937;border:2px solid #f3f4f6;border-radius:.75rem;font-family:inherit;background:#fff;transition:all .2s ease}.form-input::placeholder{color:#d1d5db;font-weight:400}.form-input:focus{outline:none;border-color:#e040a0;box-shadow:0 0 0 3px #f4078014}.form-input:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed;border-color:#f3f4f6}.password-toggle-btn{position:absolute;right:10px;background:none;border:none;color:#9ca3af;cursor:pointer;font-size:15px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;transition:all .2s ease}.password-toggle-btn:hover:not(:disabled){color:#d11c7f;background-color:#fdf2f8}.password-toggle-btn:disabled{color:#e5e7eb;cursor:not-allowed}.profile-submit-btn{padding:12px 20px;margin-top:6px;font-size:.875rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#f6047b,#c820c5);border:none;border-radius:.75rem;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 4px 6px -1px #f4078026,0 2px 4px -1px #c820c51a}.profile-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#d4036a,#a81aaa);box-shadow:0 6px 12px -2px #f4078040,0 3px 6px -1px #c820c526;transform:translateY(-1px)}.profile-submit-btn:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:0 2px 4px -1px #f4078026}.profile-submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.profile-reset-onboarding-btn{padding:12px 20px;margin-top:6px;font-size:.875rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#f6047b,#c820c5);border:none;border-radius:.75rem;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 4px 6px -1px #f6047b40,0 2px 4px -1px #c820c526}.profile-reset-onboarding-btn:hover:not(:disabled){background:linear-gradient(135deg,#e60373,#b01aaf);box-shadow:0 6px 12px -2px #f6047b59,0 3px 6px -1px #c820c540;transform:translateY(-1px)}.profile-reset-onboarding-btn:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:0 2px 4px -1px #f6047b40}.profile-reset-onboarding-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.email-cancel-btn{padding:10px 16px;border-radius:.75rem;border:2px solid #f3f4f6;background:#fff;color:#4b5563;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease}.email-cancel-btn:hover:not(:disabled){background-color:#f9fafb;border-color:#e5e7eb}.email-action-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:600px){.user-profile{padding:0}.profile-section{padding:1rem 1.25rem;margin-bottom:6px;border-radius:.75rem}.profile-section-title{font-size:1rem}.password-form{gap:14px}.password-checklist{padding:10px 12px}.password-checklist-item{font-size:.8rem}.form-input,.profile-submit-btn{font-size:16px}.info-value{font-size:13px;padding:9px 12px}}.user-preferences{padding:0;max-width:100%;font-family:system-ui,-apple-system,sans-serif}.loading{text-align:center;color:#9ca3af;padding:2rem;font-size:14px;font-weight:500}.alert{padding:12px 16px;margin-bottom:20px;border-radius:.75rem;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px;animation:slideIn .3s ease-out}.alert-error{background-color:#fef2f2;color:#dc2626;border-left:4px solid #dc2626;box-shadow:0 1px 4px #dc262614}.alert-success{background-color:#f0fdf4;color:#16a34a;border-left:4px solid #16a34a;box-shadow:0 1px 4px #16a34a14}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.preferences-section{margin-bottom:8px;padding:1.25rem 1.5rem;background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000000a;border:1px solid #f3f4f6;position:relative;overflow:hidden}.preferences-section:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,#f6047b,#c820c5,#c820c5);border-radius:1rem 1rem 0 0}.preferences-section:last-child{margin-bottom:0}.preferences-section-title{margin:.5rem 0 1.25rem;font-size:1.1rem;font-weight:700;color:#1f2937;letter-spacing:-.01em}.pref-group{margin-bottom:14px}.pref-group:last-child{margin-bottom:0}.pref-label{display:block;font-size:.625rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.pref-value{font-size:14px;font-weight:500;color:#1f2937;padding:10px 14px;background-color:#f9fafb;border-radius:.75rem;border:1px solid #f3f4f6;word-break:break-all;transition:background-color .2s ease}.pref-value:hover{background-color:#f3f4f6}.pref-description{font-size:12px;color:#9ca3af;margin:8px 0 12px;font-style:italic;line-height:1.5}.email-display-wrapper{display:flex;align-items:center;gap:10px}.email-display-wrapper .pref-value{flex:1}.email-edit-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background-color:#fdf2f8;border:2px solid #f3f4f6;border-radius:.75rem;color:#9ca3af;cursor:pointer;font-size:14px;transition:all .2s ease}.email-edit-button:hover:not(:disabled){background:linear-gradient(135deg,#f6047b,#c820c5);border-color:transparent;color:#fff;box-shadow:0 4px 8px #f4078033;transform:translateY(-1px)}.email-edit-button:active:not(:disabled){transform:translateY(0) scale(.95)}.email-edit-button:disabled{opacity:.4;cursor:not-allowed}.email-edit-form{width:100%}.email-input-wrapper{display:flex;gap:8px;align-items:center}.email-input{flex:1;padding:11px 14px!important;font-size:14px!important;font-weight:400!important;color:#1f2937!important;border:2px solid #e040a0!important;border-radius:.75rem!important;font-family:inherit!important;background:#fff!important;transition:all .2s ease!important}.email-input::placeholder{color:#d1d5db;font-weight:400}.email-input:focus{outline:none!important;border-color:#c820c5!important;box-shadow:0 0 0 3px #f4078014!important}.email-input:disabled{background-color:#f9fafb!important;color:#9ca3af!important;border-color:#f3f4f6!important;cursor:not-allowed!important}.email-action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:.75rem;font-size:15px;cursor:pointer;transition:all .2s ease}.email-save-btn{background-color:#16a34a;color:#fff;box-shadow:0 2px 4px #16a34a26}.email-save-btn:hover:not(:disabled){background-color:#15803d;box-shadow:0 4px 8px #16a34a40;transform:translateY(-1px)}.email-save-btn:active:not(:disabled){transform:translateY(0) scale(.95)}.email-cancel-btn{background-color:#f3f4f6;color:#6b7280;border:2px solid #f3f4f6}.email-cancel-btn:hover:not(:disabled){background-color:#e5e7eb;border-color:#e5e7eb;color:#4b5563}.email-cancel-btn:active:not(:disabled){transform:scale(.95)}.email-action-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.anticipation-edit-form{width:100%}.anticipation-input-wrapper{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.time-input-group{display:flex;flex-direction:column;gap:6px;min-width:100px}.time-label{font-size:.625rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em}.time-select{padding:10px 32px 10px 14px;font-size:14px;font-weight:500;color:#1f2937;border:2px solid #e040a0;border-radius:.75rem;font-family:inherit;background-color:#fff;cursor:pointer;transition:all .2s ease;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' 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 12px center}.time-select:focus{outline:none;border-color:#c820c5;box-shadow:0 0 0 3px #f4078014}.time-select:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed;border-color:#f3f4f6}.time-actions{display:flex;gap:8px;justify-content:flex-start}.anticipation-display-wrapper{display:flex;align-items:center;gap:10px}.anticipation-display-wrapper .pref-value{flex:1}.mute-toggle-btn{width:100%;padding:11px 14px;font-size:14px;font-weight:600;color:#fff;background:linear-gradient(135deg,#f6047b,#c820c5);border:none;border-radius:.75rem;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #f4078026}.mute-toggle-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #f4078040}.mute-toggle-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.mute-toggle-btn:disabled{opacity:.4;cursor:not-allowed}.mute-status-badge{display:flex;align-items:center;gap:12px;padding:12px 14px;background:linear-gradient(135deg,#f407800d,#c820c50d);border:1px solid rgba(244,7,128,.2);border-radius:.75rem;margin-bottom:10px}.mute-status-indicator{font-size:12px;color:#f6047b;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.mute-status-content{flex:1}.mute-status-text{margin:0;font-size:14px;font-weight:600;color:#1f2937}.mute-status-until{margin:4px 0 0;font-size:12px;color:#9ca3af}.mute-edit-form{width:100%}.mute-preset-section{margin-bottom:16px}.mute-preset-chips{display:flex;gap:8px;flex-wrap:wrap}.time-chip{padding:8px 12px;font-size:13px;font-weight:600;color:#9ca3af;background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:.75rem;cursor:pointer;transition:all .2s ease}.time-chip:hover{border-color:#f6047b;color:#f6047b;background-color:#fdf2f8}.time-chip.active{background:linear-gradient(135deg,#f6047b,#c820c5);color:#fff;border-color:transparent;box-shadow:0 2px 8px #f4078033}@media(max-width:600px){.user-preferences{padding:0}.preferences-section{padding:1rem 1.25rem;margin-bottom:6px;border-radius:.75rem}.preferences-section-title{font-size:1rem}.email-input-wrapper{flex-wrap:wrap}.email-input{min-width:0;font-size:16px!important}.anticipation-input-wrapper{flex-direction:column;align-items:stretch}.time-input-group{min-width:0;width:100%}.time-select{width:100%;font-size:16px}.time-actions{justify-content:flex-end}.pref-value{font-size:13px;padding:9px 12px}.mute-status-badge{flex-wrap:wrap}.mute-toggle-btn{font-size:15px}.mute-preset-chips{justify-content:space-between}.time-chip{flex:1;min-width:calc(33.333% - 6px)}}.spinner{display:inline-block;width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#f6047b;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dropdown-container{position:relative;display:flex;justify-content:center}.dropdown-image-button{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#a855f7,#ff005c) border-box;border:2px solid transparent;border-radius:50%;cursor:pointer;padding:2px;transition:all .25s ease}.dropdown-image-button:hover{transform:scale(1.05);filter:brightness(.95)}.dropdown-avatar{width:40px;height:40px;border-radius:50%;display:block}.dropdown-menu{position:absolute;top:calc(100% + 10px);right:0;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#a855f7,#ff005c) border-box;border:2px solid transparent;border-radius:12px;box-shadow:0 8px 25px #0000001f;list-style:none;margin:0;padding:8px 0;min-width:220px;z-index:1000;animation:fadeIn .2s ease-out}.dropdown-menu-item{display:flex;align-items:center;width:100%;padding:12px 18px;border:none;background:transparent;cursor:pointer;font-size:14px;color:#333;text-align:left;transition:all .2s ease;border-radius:8px}.dropdown-menu-item:hover{background:#f2f2f2;color:#000}.modal-confirm-btn{margin-top:12px;padding:10px 22px;background:linear-gradient(90deg,#a855f7,#ff005c);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s ease}.modal-confirm-btn:hover{filter:brightness(.9);transform:translateY(-1px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.notification-bell-container{position:relative;display:inline-block}.notification-bell-button{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;position:relative;color:#374151}.notification-bell-button:hover{color:#000}.notification-bell-badge{position:absolute;top:0;right:0;background:#dc2626;color:#fff;border-radius:50%;font-size:.6rem;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.notification-dropdown{position:absolute;right:0;top:100%;margin-top:8px;background:#fff;border:1px solid #e5e7eb;border-radius:4px;min-width:220px;box-shadow:0 2px 8px #00000026;z-index:1000;list-style:none;padding:0;max-height:300px;overflow-y:auto}.notification-item{padding:8px 12px;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background-color .2s}.notification-item.notification-deleting{opacity:.45;pointer-events:none;cursor:not-allowed}.notification-actions{padding:8px 12px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:flex-end;background:#f9fafb}.notification-clear-all-button{border:1px solid #fecaca;background:#fff;color:#ef4444;font-size:.75rem;font-weight:600;border-radius:4px;padding:4px 8px;cursor:pointer;transition:all .2s ease}.notification-clear-all-button:hover:not(:disabled){background:#fef2f2;color:#dc2626;border-color:#f87171}.notification-clear-all-button:disabled{opacity:.6;cursor:not-allowed}.notification-item:hover{background-color:#f9fafb}.notification-item:last-child{border-bottom:none}.notification-unread{background-color:#eff6ff}.notification-unread:hover{background-color:#dbeafe}.notification-read{opacity:.6;background-color:#f3f4f6}.notification-read:hover{background-color:#e5e7eb}.notification-title{display:block;font-weight:500;font-size:.9rem}.notification-description{display:block;font-size:.8rem;color:#4b5563;margin-top:4px;line-height:1.3}.notification-date{display:block;font-size:.75rem;color:#6b7280;margin-top:2px}.notification-empty{padding:12px;text-align:center;color:#6b7280}.notification-bell-button.muted{opacity:.6;color:#9ca3af}.notification-bell-button.muted:hover{opacity:.8;color:#6b7280}.notification-bell-muted-indicator{position:absolute;top:2px;right:2px;font-size:1.2rem;color:#f59e0b}.notification-status-muted{padding:10px 12px;background:linear-gradient(135deg,#fef3c7,#fde68a);border-bottom:2px solid #f59e0b;font-weight:600;color:#78350f;text-align:center}.muted-badge{display:inline-block;padding:4px 8px;background:#f59e0b;color:#fff;border-radius:3px;font-size:.85rem;font-weight:600}.ControlBar{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;position:sticky;top:unset;bottom:0;z-index:40;overflow:visible;width:100%;box-sizing:border-box;padding:.4rem 1.2rem;min-height:56px;background:linear-gradient(to right,#fff,#f9fafb);border-bottom:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(90deg,#ff006e,#c026d3);background-origin:border-box;background-clip:padding-box,border-box;border-top:2px solid transparent;border-bottom:none;box-shadow:0 -2px 6px #0000000f}.ControlBar .Left,.ControlBar .Center,.ControlBar .Right{display:flex;align-items:center;gap:.5rem}.ControlBar .Center{flex:1;justify-content:center}.ControlBar .Right{justify-content:flex-end}.academicPeriodSelectWrapper{position:relative;display:inline-flex;align-items:center;justify-content:center}.academicPeriodButton{display:inline-flex;align-items:center;gap:8px;padding:.7rem 1.2rem;font-size:.9rem;font-weight:600;line-height:1.5rem;color:#000;background:#fff;border-radius:.8rem;cursor:pointer;transition:all .25s ease;border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#ff006e,#c026d3);background-origin:border-box;background-clip:padding-box,border-box;max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.academicPeriodButton .notebook-icon{width:20px;height:20px;flex-shrink:0}.academicPeriodButton:hover{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;box-shadow:0 6px 18px #c026d34d;transform:translateY(-2px)}.academicPeriodButton:active,.academicPeriodButton:focus{outline:none;background-image:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;transform:scale(.97)}.academicPeriodMenu{position:absolute;bottom:115%;right:0;min-width:12rem;background:#fff;border-radius:.8rem;padding:.4rem;box-shadow:0 10px 25px #00000014;list-style:none;margin:0;z-index:100;animation:fadeIn .2s ease}.academicPeriodOption{width:100%;padding:.6rem .8rem;background:none;border:none;border-radius:.5rem;text-align:left;font-size:.85rem;cursor:pointer;transition:all .25s ease;color:#000}.academicPeriodOption:hover,.academicPeriodOption.selected{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff}@media(min-width:900px){.ControlBar{flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ControlBar .Left{justify-content:flex-start}.ControlBar .Center{justify-content:center;flex:1}.ControlBar .Right{justify-content:flex-end}}@media(max-width:1012px){.ControlBar{flex-direction:row;align-items:center;justify-content:space-between;gap:.3rem;padding:.4rem .8rem}.ControlBar .Left,.ControlBar .Center,.ControlBar .Right{width:auto;gap:.3rem;justify-content:center}}@media(max-width:768px){.ControlBar{flex-direction:row;align-items:center;justify-content:space-between;gap:.3rem;padding:.4rem .8rem;flex-wrap:nowrap}.ControlBar .Left,.ControlBar .Center{width:auto;gap:.3rem;justify-content:center}.ControlBar .right{width:auto;gap:.3rem;justify-content:flex-end;padding-right:.4}.academicPeriodButton{max-width:120px;min-width:36px;width:36px;height:36px;padding:0;border-radius:.6rem;font-size:0;justify-content:center;display:flex;align-items:center}.academicPeriodButton span{display:none}.academicPeriodButton .notebook-icon{width:20px;height:20px;display:block}.academicPeriodMenu{right:0;min-width:150px;max-width:90vw}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes glow{0%{box-shadow:0 6px 18px #c026d34d}to{box-shadow:0 8px 24px #c026d380}}.academicPeriodMenu{animation:slideUp .3s cubic-bezier(.34,1.56,.64,1);transform-origin:bottom right}.academicPeriodButton{position:relative;overflow:hidden}.academicPeriodButton:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);transition:width .6s,height .6s;pointer-events:none}.academicPeriodButton:active:before{width:300px;height:300px}.academicPeriodOption{position:relative;overflow:hidden}.academicPeriodOption:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ff006e33;transform:translate(-50%,-50%);transition:width .5s,height .5s;pointer-events:none}.academicPeriodOption:active:before{width:300px;height:300px}.segmented{position:relative;display:inline-flex;background:#f3f4f6;border-radius:12px;padding:4px;width:200px;overflow:hidden}.segmented button{flex:1;position:relative;z-index:2;border:none;background:transparent;color:#000;padding:10px 20px;cursor:pointer;font-weight:500;border-radius:12px;transition:color .3s ease}.segmented button.active{color:#fff}.indicator{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:linear-gradient(135deg,#ff006e,#c026d3);border-radius:12px;transition:transform .35s cubic-bezier(.4,0,.2,1)}@media(max-width:768px){.segmented{width:140px}.segmented button{padding:7px 10px;font-size:.8rem}}.addButton{padding:.7rem 1.2rem;font-weight:600;color:#000;border:2px solid transparent;border-radius:.8rem;cursor:pointer;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#ff006e,#c026d3);background-origin:border-box;background-clip:padding-box,border-box;transition:all .25s ease}.modalOverlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;animation:fadeIn .25s ease;z-index:200}.modalContainer{position:relative;width:100%;max-width:480px;padding:2.2rem;border-radius:1.2rem;background:#fff;border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#ff006e,#c026d3);background-origin:border-box;background-clip:padding-box,border-box;box-shadow:0 20px 40px #00000026;display:flex;flex-direction:column;gap:1rem;animation:slideUp .3s ease}.modalContainer input,.modalContainer textarea,.modalContainer select{padding:.75rem;border-radius:.7rem;border:1px solid #e5e7eb;font-size:.9rem;background-color:#f9fafb;transition:all .2s ease}.hourPreview{font-size:.85rem;color:#6b7280;margin-top:-.5rem}.react-calendar{margin-top:.8rem;box-shadow:0 10px 25px #0000001a}@media(max-width:768px){.ControlBar .addButton{font-size:0;width:36px;height:36px;padding:0;gap:0;border-radius:.6rem;display:flex;align-items:center;justify-content:center;overflow:hidden}.addButton:before{content:"+";font-size:1.2rem;color:#000}}.loading-overlay{position:fixed;inset:0;background:#ffffffbf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:3000;animation:overlayFade .2s ease-out}.loading-modal{width:380px;max-width:90%;padding:2.5rem 2.2rem;border-radius:16px;background:#fff;box-shadow:0 20px 45px #00000014,0 4px 12px #0000000d;text-align:center;position:relative;animation:modalFadeUp .25s ease-out}.loading-modal:before{content:"";position:absolute;top:0;left:0;height:4px;width:100%;border-radius:16px 16px 0 0;background:linear-gradient(135deg,#ff006e,#c026d3)}.loading-icon{width:90px;height:90px;margin:0 auto 1.8rem;border-radius:50%;background:linear-gradient(135deg,#ff006e,#c026d3);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 10px 25px #c026d340,inset 0 0 15px #ffffff40}.loading-icon:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#ff006e,#c026d3);opacity:.15;animation:softPulse 2.5s ease-in-out infinite;z-index:-1}.icon-svg{width:38px;height:38px;color:#fff}.loading-title{font-size:1.4rem;font-weight:600;color:#1e293b;margin-bottom:2rem}.progress-wrapper{display:flex;align-items:center;gap:10px}.progress-track{flex:1;height:8px;border-radius:999px;background:#f1f5f9;overflow:hidden}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(135deg,#ff006e,#c026d3);transition:width .3s ease;position:relative}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:shimmer 1.8s infinite}.progress-percent{font-size:.85rem;font-weight:600;color:#c026d3;min-width:36px;text-align:right}@keyframes softPulse{0%{transform:scale(1);opacity:.15}50%{transform:scale(1.1);opacity:.25}to{transform:scale(1);opacity:.15}}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}@keyframes modalFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1);opacity:.25}to{transform:scale(1.6);opacity:0}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.filterContainer{position:relative;display:inline-flex;align-items:center;justify-content:center;font-family:system-ui,-apple-system,sans-serif}.filterButton{display:inline-flex;align-items:center;gap:8px;padding:.7rem 1.2rem;font-size:.9rem;font-weight:600;background:#fff;border-radius:.8rem;cursor:pointer;transition:all .25s ease;color:#000;line-height:1.5rem;border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#ff006e,#c026d3);background-origin:border-box;background-clip:padding-box,border-box}.filterIcon{font-size:12px;color:inherit}.filterButton:hover{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;box-shadow:0 6px 18px #c026d34d;transform:translateY(-2px)}.filterButton:active,.filterButton:focus{outline:none;background-image:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;transform:scale(.97)}.filterMenu{position:absolute;bottom:115%;left:0;min-width:12rem;background:#fff;border-radius:.8rem;padding:.4rem;box-shadow:0 10px 25px #00000014;list-style:none;margin:0;z-index:100;animation:fadeIn .2s ease}.filterOption{width:100%;padding:.6rem .8rem;background:none;border:none;border-radius:.5rem;text-align:left;font-size:.85rem;cursor:pointer;transition:all .25s ease;color:#000}.filterOption:hover,.filterOption.selected{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.filterButton{font-size:0;width:36px;height:36px;padding:0;gap:0;border-radius:.6rem;display:flex;align-items:center;justify-content:center;overflow:hidden}.filterIcon{font-size:16px;display:block;line-height:1;margin:0}.filterMenu{position:absolute;bottom:115%;right:0;left:auto;min-width:150px;max-width:90vw;border-radius:.8rem}.filterOption{padding:.6rem .8rem;font-size:.85rem}}.themeSelectorButton{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#ff006e,#a100ff) border-box;color:#000;border:2px solid transparent;border-radius:.9rem;border-radius:.7rem;padding:0;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;width:45px;height:45px}.themeSelectorButton svg{font-size:20px}.themeSelectorButton:hover{transform:translateY(-2px);box-shadow:0 8px 22px #a100ff59}.themeSelectorButton:active{transform:scale(.96)}.themeModalOverlay{position:fixed;inset:0;background:#19002873;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:999;padding:1rem;transition:opacity .2s ease}.themeModalOverlay.hide{opacity:0}.themeModalOverlay.show{opacity:1}.themeModal{width:100%;max-width:520px;max-height:75vh;overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none;border-radius:1rem;border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#ff006e,#a100ff) border-box;background-origin:border-box;background-clip:padding-box,border-box;padding:1.6rem;position:relative;animation:modalFade .2s ease}.themeModal::-webkit-scrollbar{display:none;width:0;height:0}@keyframes modalFade{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.themeModal h2{font-size:1.6rem;margin-bottom:1.2rem;background:#040103;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-weight:700}.themeGrid{display:grid;grid-template-columns:1fr;gap:.9rem}.themeProposalText{margin:1rem 0 0;font-size:.9rem;color:#1b1b1b;text-align:center}.themeProposalDownloadLink{color:#7d0053;font-weight:600;text-decoration:underline;text-underline-offset:2px}.themeProposalDownloadLink:hover{color:#a1006b}.themeCard{background:#faf6ff;border-radius:.9rem;padding:.9rem;cursor:pointer;border:2px solid transparent;transition:all .25s ease}.themeCard:hover{transform:translateY(-3px);box-shadow:0 8px 18px #d213c926}.themeCard.active{border:2px solid #ff006e;background:#fff0f8}.themeTitle{font-size:.95rem;font-weight:600;margin-bottom:.6rem;color:#000}.themePreview{display:flex;flex-wrap:wrap;gap:5px}.subjectChip{padding:.3rem .55rem;border-radius:.5rem;font-size:.7rem;font-weight:500;transition:transform .2s ease}.themeCard:hover .subjectChip{transform:scale(1.05)}.closeModal{position:absolute;top:.8rem;right:.8rem;margin:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:#000;border:none;padding:.35rem .55rem;border-radius:.4rem;font-size:1.05rem;line-height:1;font-weight:600;cursor:pointer;transition:all .25s ease}.closeModal:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2401394d}@media(max-width:768px){.themeSelectorButton{width:36px;height:36px}.themeSelectorButton svg{font-size:16px}}.weekViewWrapper{display:flex;flex-direction:column;flex:1;height:100%;width:100%;min-height:0;min-width:0;background:#fff;box-sizing:border-box;overflow:visible}.weekSelector{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:2px solid transparent;border-image:linear-gradient(135deg,#ff006e,#c026d3) 1}.weekSelectorArrow{padding:.5rem .8rem;background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;border:none;border-radius:.6rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 2px 8px #c026d333}.weekSelectorArrow:hover{transform:translateY(-2px);box-shadow:0 6px 16px #c026d359}.weekSelectorArrow:active{transform:translateY(0)}.weekSelectorText{flex:1;text-align:center}.weekSelectorDate{margin:0;font-size:1rem;font-weight:600;color:#1f2937;text-transform:capitalize}.weekHeaderRow{display:flex;flex-direction:row;flex-shrink:0;background:#f9fafb;border-bottom:2px solid #e5e7eb;width:100%}.hourHeaderCell{flex:0 0 5rem;padding:1rem;font-size:.85rem;font-weight:600;color:#6b7280;border-right:1px solid #d1d5db;display:flex;align-items:center;justify-content:center}.dayHeaderCell{flex:1;padding:1rem .5rem;font-size:.9rem;font-weight:600;color:#111827;border-right:1px solid #d1d5db;display:flex;align-items:center;justify-content:center;text-align:center}.dayHeaderCell:last-child{border-right:none}.weekScrollArea{flex:1;min-height:0;overflow-y:auto;overflow-x:auto;width:100%;min-width:0;position:relative}.weekScrollArea::-webkit-scrollbar{width:8px;height:8px}.weekScrollArea::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.weekScrollArea::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.weekScrollArea::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.weekGrid{display:flex;flex-direction:row;width:100%;position:relative}.hoursColumn{flex:0 0 5rem;display:flex;flex-direction:column}.dayColumn{flex:1;height:96rem;display:grid;grid-template-rows:repeat(24,4rem);position:relative;border-right:1px solid #f3f4f6}.dayColumn:last-child{border-right:none}.hourRow{display:flex;flex-direction:row;min-height:4rem;border-bottom:1px solid #f3f4f6;width:100%}.hourCell{flex:0 0 5rem;padding:.5rem;font-size:.75rem;font-weight:500;color:#6b7280;border-right:1px solid #e5e7eb;display:flex;align-items:flex-start;justify-content:center;background:#fafbfc}.dayCell{flex:0 0 4rem;border-bottom:1px solid #f3f4f6;background:#fff;box-sizing:border-box}.dayCell:hover{background:#f9fafb;cursor:pointer}.eventsLayer{position:absolute;inset:0;height:96rem;pointer-events:none;z-index:10}.eventsLayer>*{pointer-events:auto;z-index:20;position:absolute}.activity-card{min-height:0;padding:6px 8px;border-radius:10px;box-shadow:0 2px 6px #0000001f;width:100%;box-sizing:border-box;overflow:clip;background:#e0e7ff;position:relative;display:flex;flex-direction:column}.activity-card-content{display:flex;flex-direction:column;gap:4px;flex:1;min-height:0;overflow:hidden}.activity-card-header{display:flex;gap:6px;align-items:flex-start;justify-content:space-between;min-height:0;width:100%}.activity-card-left{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.activity-card-time{flex-shrink:0;white-space:nowrap;font-weight:500;font-size:.68rem}.activity-delete-button{position:absolute;top:6px;right:6px;background:#0000000f;border:none;color:#000000e6;font-size:.85rem;padding:2px 6px;border-radius:6px;cursor:pointer;z-index:30}.activity-delete-button:hover{background:#b91c1c1f;color:#b91c1c}.activity-card-title{font-size:.78rem;line-height:1.2;text-align:left;margin:0;font-weight:600;text-transform:uppercase}.activity-card-description{font-size:.68rem;line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical}.activity-card-tag{margin-top:auto;display:flex;align-items:center;gap:4px}.tag-label{display:inline-block;padding:2px 6px;background:#00000026;border-radius:4px;font-size:.62rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-card-professor,.activity-card-time,.activity-card-footer,.activity-card-classroom,.activity-card-nrc{font-size:.68rem;line-height:1.2}.activity-card-footer{margin-top:6px;gap:4px}.official-class-card{container-type:size;gap:2px}.official-class-card .activity-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:4px}.official-class-card .activity-card-left{flex:1;min-width:0}.official-class-card .activity-card-title,.official-class-card .activity-card-professor,.official-class-card .activity-card-classroom,.official-class-card .activity-card-nrc{white-space:normal;overflow:visible;text-overflow:unset;overflow-wrap:anywhere;word-break:normal}.official-class-card .activity-card-title{margin:0;font-size:clamp(.56rem,7.2cqh,.78rem);line-height:1.1}.official-class-card .activity-card-professor{margin:0;font-size:clamp(.52rem,6cqh,.68rem);line-height:1.1}.official-class-card .activity-card-time{font-size:clamp(.5rem,5.5cqh,.66rem);line-height:1}.official-class-card .activity-card-footer{margin-top:2px;display:flex;align-items:flex-start;justify-content:space-between;gap:4px}@container (max-height: 72px){.official-class-card{padding:4px 6px}.official-class-card .activity-card-footer{display:flex;margin-top:1px;gap:2px}.official-class-card .activity-card-nrc{display:none}}@container (max-height: 54px){.official-class-card .activity-card-time{display:none}}@media(max-width:1024px){.hourHeaderCell,.hourCell{flex:0 0 4rem;font-size:.7rem}.dayHeaderCell{font-size:.8rem}}@media(max-width:768px){.hourHeaderCell,.hourCell{flex:0 0 3.5rem;font-size:.65rem}.dayHeaderCell{font-size:.7rem;padding:.5rem .2rem}.hourRow{min-height:3.5rem}.dayCell{flex:0 0 3.5rem}.official-class-card .activity-card-header{flex-direction:column;gap:2px}.official-class-card .activity-card-time{align-self:flex-start}}.dayViewContainer{display:flex;flex-direction:column;height:100%;width:100%;background-color:#fff;border:1px solid #e5e7eb;border-radius:.75rem;overflow:visible;font-family:system-ui,-apple-system,sans-serif}.daySelector{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:2px solid transparent;border-image:linear-gradient(135deg,#ff006e,#c026d3) 1}.daySelectorArrow{padding:.5rem .8rem;background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;border:none;border-radius:.6rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 2px 8px #c026d333}.daySelectorArrow:hover{transform:translateY(-2px);box-shadow:0 6px 16px #c026d359}.daySelectorArrow:active{transform:translateY(0)}.daySelectorText{flex:1;text-align:center}.daySelectorDate{margin:0;font-size:1rem;font-weight:600;color:#1f2937;text-transform:capitalize}.calendarHeader{display:grid;grid-template-columns:5rem 1fr;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.hoursColumnHeader,.activitiesColumnHeader{padding:.75rem;font-size:.9rem;font-weight:500}.hoursColumnHeader{border-right:1px solid #e5e7eb;color:#6b7280}.calendarBody{flex:1;overflow-y:auto;position:relative;-ms-overflow-style:none;scrollbar-width:none}.calendarBody::-webkit-scrollbar{display:none;width:0;height:0}.eventsLayer-day{position:absolute;top:0;left:5rem;right:0;bottom:0;pointer-events:none;z-index:10}.eventsLayer-day>*{pointer-events:auto;z-index:20;position:absolute}.hourRow{display:grid;grid-template-columns:5rem 1fr;height:4rem;border-bottom:1px solid #f3f4f6}.hourCell{padding:.5rem;font-size:.75rem;color:#6b7280;border-right:1px solid #e5e7eb;display:flex;align-items:flex-start;height:4rem;box-sizing:border-box}.dayCell-day{position:relative;height:4rem;box-sizing:border-box}.hourRow:hover .dayCell-day{background-color:#f9fafb}@media(max-width:768px){.calendarHeader,.hourRow{grid-template-columns:4rem 1fr}.hourCell{font-size:.65rem}.eventsLayer-day{left:4rem}}.todolist-panel{width:100%;height:100%;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;display:flex;flex-direction:column;overflow:visible;font-family:system-ui,-apple-system,sans-serif;-ms-overflow-style:none;scrollbar-width:none}.todolist-panel::-webkit-scrollbar{display:none;width:0;height:0}.todolist-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-bottom:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(90deg,#ff006e,#c026d3);background-origin:border-box;background-clip:padding-box,border-box}.todolist-header-actions{display:flex;gap:8px;align-items:center;min-width:0;flex:1;justify-content:flex-end}.todolist-title{font-size:1.05rem;font-weight:700;color:#1f2937;margin:0;letter-spacing:-.01em;white-space:nowrap;line-height:1.1;flex:0 0 auto}.todolist-header.selection-mode{padding:10px 12px}.todolist-header.selection-mode .todolist-title{font-size:.98rem}.todolist-add-btn{width:26px;height:26px;border-radius:999px;border:none;background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;line-height:1;padding:0;box-shadow:0 2px 8px #c026d340;transition:transform .2s ease,box-shadow .2s ease}.todolist-add-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #c026d366}.todolist-filters-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:calc(100% - 28px);margin:0 14px 10px;padding:6px 0;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;font-size:.72rem;font-weight:500;color:#374151;cursor:pointer;transition:border-color .2s ease,background .2s ease}.todolist-filters-btn:hover{border-color:#c026d3;background:#fdf4ff}.todolist-filters-icon{font-size:.7rem}.todolist-section-label{padding:0 14px;font-size:.65rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;text-align:left}.todolist-task-count{font-weight:400;color:#9ca3af}.todolist-active-filter-chip{margin-left:8px;padding:2px 8px;border-radius:999px;font-size:.56rem;font-weight:600;color:#c026d3;background:#fdf4ff;border:1px solid #f0abfc}.todolist-tasks{display:flex;flex-direction:column;gap:10px;padding:0 10px 14px;flex:1}.todolist-task-card{display:flex;border-radius:.75rem;background:#fff;border:1px solid #e5e7eb;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;box-shadow:0 1px 3px #0000000a}.todolist-task-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014;border-color:#d1d5db}.todolist-card-accent{width:4px;min-height:100%;flex-shrink:0;background:#e5e7eb;transition:background .2s ease}.todolist-task-card.priority-alta .todolist-card-accent{background:linear-gradient(180deg,#ff006e,#ef4444)}.todolist-task-card.priority-media .todolist-card-accent{background:linear-gradient(180deg,#f59e0b,#eab308)}.todolist-task-card.priority-baja .todolist-card-accent{background:linear-gradient(180deg,#22c55e,#16a34a)}.todolist-card-body{flex:1;padding:10px 10px 8px;display:flex;flex-direction:column;gap:6px;min-width:0}.todolist-task-top{display:flex;align-items:flex-start;gap:10px}.todolist-task-checkbox{width:18px;height:18px;min-width:18px;border-radius:999px;border:2px solid #d1d5db;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;margin-top:1px;transition:all .2s ease}.todolist-task-checkbox:hover{border-color:#c026d3;box-shadow:0 0 0 3px #c026d31a}.todolist-task-checkbox.checked{background:#22c55e;border-color:#22c55e;box-shadow:0 2px 6px #22c55e59}.todolist-task-checkbox svg{display:block}.todolist-task-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.todolist-task-name{font-size:.78rem;font-weight:600;color:#1f2937;line-height:1.35;text-align:left;word-break:break-word}.todolist-task-card.completed .todolist-task-name{text-decoration:line-through;color:#9ca3af}.todolist-task-card.completed{opacity:.7}.todolist-task-card.completed:hover{opacity:1}.todolist-task-due{display:inline-flex;align-items:center;gap:4px;font-size:.62rem;font-weight:500;color:#6b7280;margin-top:1px}.todolist-task-due svg{flex-shrink:0}.todolist-task-actions{display:flex;align-items:center;gap:2px;margin-left:auto;align-self:flex-end}.todolist-task-actions .edit-button{padding:4px;border-radius:.4rem;transition:background .15s ease,color .15s ease}.todolist-task-actions .edit-button:hover{background:#f3f4f6;color:#c026d3}.todolist-task-delete{background:none;border:none;color:#9ca3af;cursor:pointer;padding:4px;border-radius:.4rem;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.todolist-task-delete:hover{background:#fef2f2;color:#ef4444}.todolist-task-tags{display:flex;flex-wrap:wrap;gap:4px;padding-left:28px}.todolist-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.58rem;font-weight:600;border:1px solid;letter-spacing:.01em;transition:transform .15s ease,box-shadow .15s ease}.todolist-tag:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0000000f}.todolist-tag.subject{background:#eff6ff;color:#2563eb;border-color:#93c5fd}.todolist-tag.category{background:#f9fafb;color:#374151;border-color:#d1d5db}.todolist-tag.custom{background:#fdf4ff;color:#a21caf;border-color:#f0abfc}.todolist-tag.priority-high{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.todolist-tag.priority-medium{background:#fefce8;color:#a16207;border-color:#fde047}.todolist-tag.priority-low{background:#f0fdf4;color:#16a34a;border-color:#86efac}.todolist-tag.active-filter{box-shadow:0 0 0 3px #c026d31f;transform:translateY(-1px)}.todolist-empty-state{display:flex;flex-direction:column;align-items:center;gap:8px;margin:24px 6px;text-align:center}.todolist-empty-state p{font-size:.75rem;color:#9ca3af;margin:0}.todo-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:30;animation:todoFadeIn .25s ease}@keyframes todoFadeIn{0%{opacity:0}to{opacity:1}}.todo-drawer-toggle{position:fixed;right:1rem;bottom:7rem;z-index:12;padding:.8rem 1.4rem;border-radius:999px;background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;border:none;cursor:pointer;font-weight:600;font-size:.85rem;letter-spacing:.5px;box-shadow:0 4px 16px #c026d366;transition:transform .2s ease,box-shadow .2s ease}.todo-drawer-toggle:hover{transform:translateY(-2px);box-shadow:0 8px 24px #c026d380}.todolist-selection-toggle-btn{display:flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;width:42px;height:42px;padding:0;font-size:.9rem;font-weight:600;background:#fff;border-radius:.8rem;cursor:pointer;transition:all .3s ease;color:#000;border:1px solid #e5e7eb;margin:0;width:auto}.todolist-selection-toggle-icon{width:20px;height:20px;display:block;color:inherit}.todolist-selection-toggle-btn:hover{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;box-shadow:0 6px 18px #c026d34d}.todolist-selection-bar{display:flex;align-items:center;gap:12px;flex:1;margin-left:auto;min-width:0;flex-wrap:nowrap}.todolist-selection-cancel-btn{display:flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;padding:.7rem 1.2rem;font-size:.9rem;font-weight:600;background:#fff;border-radius:.8rem;cursor:pointer;transition:all .3s ease;color:#ef4444;border:1px solid #fecaca;margin:0;width:auto}.todolist-selection-cancel-icon{font-size:16px;color:inherit}.todolist-selection-cancel-btn:hover{background:#fef2f2;color:#dc2626;border-color:#f87171;box-shadow:0 6px 18px #ef444433}.todolist-selection-count{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;font-weight:600;color:#1f2937;min-width:0;text-align:center;white-space:nowrap;flex:0 0 auto}.todolist-selection-count-number{min-width:1ch}.todolist-selection-count-label{white-space:nowrap}.todolist-select-all-btn{display:flex;align-items:center;justify-content:center;padding:.7rem 1.2rem;font-size:.75rem;font-weight:600;background:#fff;border-radius:.8rem;cursor:pointer;transition:all .3s ease;color:#000;border:1px solid #e5e7eb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;width:auto}.todolist-select-all-btn:hover{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;box-shadow:0 6px 18px #c026d34d}.todolist-bulk-delete-btn{display:flex;align-items:center;justify-content:center;gap:6px;min-width:42px;min-height:42px;padding:.7rem 1.2rem;font-size:.9rem;font-weight:600;background:#fff;border-radius:.8rem;cursor:pointer;transition:all .3s ease;color:#ef4444;border:1px solid #fecaca;white-space:nowrap;margin:0;width:auto}.todolist-bulk-delete-icon{font-size:16px;color:inherit}.todolist-bulk-delete-btn:hover:not(:disabled){background:#fef2f2;color:#dc2626;border-color:#f87171;box-shadow:0 6px 18px #ef444433}.todolist-bulk-delete-btn:disabled{opacity:.5;cursor:not-allowed}.remindcard-selection-checkbox{width:18px;height:18px;min-width:18px;border-radius:4px;border:2px solid #d1d5db;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;margin-top:1px;margin-right:4px;transition:all .2s ease}.remindcard-selection-checkbox:hover{border-color:#c026d3;background:#fdf4ff}.remindcard-selection-checkbox.checked{background:#c026d3;border-color:#c026d3;box-shadow:0 2px 6px #c026d359}.remindcard-selection-checkbox svg{display:block;width:10px;height:10px}.remindcard.selected{background:#fdf4ff;border-color:#c026d3;box-shadow:0 0 0 2px #c026d31a}.remindcard.selected:hover{border-color:#c026d3;box-shadow:0 0 0 2px #c026d326,0 6px 16px #00000014}@media(max-width:768px){.todolist-selection-bar{gap:6px;flex-wrap:nowrap}.todolist-selection-cancel-btn,.todolist-select-all-btn,.todolist-bulk-delete-btn{padding:.55rem .75rem;font-size:.7rem;min-height:38px}.todolist-selection-count{font-size:.72rem}}@media(max-width:360px){.todolist-selection-bar{gap:4px}.todolist-selection-cancel-btn,.todolist-bulk-delete-btn{min-width:34px;min-height:34px;padding:.35rem}.todolist-select-all-btn{min-height:34px;padding:.35rem .5rem;font-size:.64rem}.todolist-selection-count{font-size:.68rem;gap:2px}.todolist-selection-count-label{display:none}}@media(max-width:1023px){.todo-drawer-toggle{z-index:12}.todolist-panel{position:fixed;left:0;bottom:0;width:100%;height:70dvh;border-radius:1.2rem 1.2rem 0 0;transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:41;box-shadow:0 -8px 30px #0003;overflow:hidden;display:flex;flex-direction:column}.todolist-panel.open{transform:translateY(0)}.todolist-tasks{overflow-y:auto;flex:1;padding:10px 16px 20px}}@media(min-width:1024px){.todo-drawer-toggle,.todo-drawer-overlay{display:none}.todolist-selection-bar{justify-content:flex-end;gap:10px}.todolist-selection-cancel-btn,.todolist-select-all-btn,.todolist-bulk-delete-btn{min-height:40px;padding:.55rem .95rem}.todolist-selection-count{font-size:.78rem}}@media(min-width:1440px){.todolist-selection-bar{gap:12px}.todolist-selection-cancel-btn,.todolist-select-all-btn,.todolist-bulk-delete-btn{min-height:42px;padding:.65rem 1.1rem}}.todo-filter-button{display:flex;align-items:center;gap:8px;justify-content:center;min-width:42px;min-height:42px;padding:.7rem 1.2rem;font-size:.9rem;font-weight:600;background:#fff;border-radius:.8rem;cursor:pointer;transition:all .3s ease;color:#000;font-family:system-ui,-apple-system,sans-serif;border:1px solid #e5e7eb;margin:0;width:auto}.todo-filter-icon{font-size:14px;color:inherit}.todo-filter-button:hover{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;box-shadow:0 6px 18px #c026d34d}.todo-filter-button:active,.todo-filter-button:focus{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;transform:scale(.97)}.addButton{padding:.7rem 1.2rem;font-weight:600;line-height:1;display:inline-flex;align-items:center;justify-content:center;color:#000;border:2px solid transparent;border-radius:.8rem;cursor:pointer;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#ff006e,#c026d3);background-origin:border-box;background-clip:padding-box,border-box;transition:all .25s ease}.addButton:hover{color:#fff;background-image:linear-gradient(135deg,#ff006e,#c026d3);box-shadow:0 6px 18px #c026d34d;transform:translateY(-2px)}.modalOverlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;animation:fadeIn .25s ease;z-index:1500}.modalContainer{position:relative;width:100%;max-width:560px;padding:2.2rem;border-radius:1.2rem;background:#fff;border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#ff006e,#c026d3);background-origin:border-box;background-clip:padding-box,border-box;box-shadow:0 20px 40px #00000026;display:flex;flex-direction:column;gap:1rem;animation:slideUp .3s ease}.modalContainer h2{text-align:center;font-size:1.4rem;font-weight:600;margin-bottom:.5rem}.modalClose{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.2rem;cursor:pointer;color:#6b7280;transition:color .2s ease}.modalClose:hover{color:#ff006e}.modalContainer input,.modalContainer select{padding:.75rem;border-radius:.7rem;border:1px solid #e5e7eb;font-size:.9rem;background-color:#f9fafb;transition:all .2s ease}.modalContainer textarea{padding:.75rem;border-radius:.7rem;border:1px solid #e5e7eb;font-size:.9rem;background-color:#f9fafb;transition:all .2s ease;min-height:44px;resize:vertical}.modalContainer input:focus,.modalContainer textarea:focus,.modalContainer select:focus{background-color:#fff;border-color:#c026d3;box-shadow:0 0 0 3px #c026d326;outline:none}.modalContainer textarea{resize:none;height:90px}.errorMessage{color:#ff006e;font-size:.85rem;font-weight:500;margin-bottom:.5rem}.modalActions{display:flex;justify-content:space-between;gap:1rem;margin-top:1rem}.cancelButton{flex:1;padding:.75rem;border-radius:.8rem;border:1px solid #e5e7eb;background:#f9fafb;font-weight:500;cursor:pointer;transition:all .2s ease}.cancelButton:hover{background:#f3f4f6}.saveButton{flex:1;padding:.75rem;border-radius:.8rem;border:none;background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease}.saveButton:hover{opacity:.9;transform:translateY(-2px)}@keyframes fadeOff{0%{opacity:1}to{opacity:0}}@keyframes SlideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(20px);opacity:0}}.react-calendar{background:#fff;border:2px solid #c026d3;border-radius:1rem;padding:1rem;margin-top:.5rem}.react-calendar__tile{background:#f9fafb;color:#333;border-radius:.6rem;transition:all .2s ease}.react-calendar__tile:hover{background:#c026d3;color:#fff}.react-calendar__tile--active{background:#ff006e!important;color:#fff!important}.react-calendar__navigation button{color:#c026d3;font-weight:600}@media(max-width:768px){.addButton{font-size:0;width:44px;height:44px;padding:0;border-radius:25%;display:flex;align-items:center;justify-content:center}}.addButton:before{content:"+";font-size:1.5rem;color:#000;transition:color .25s ease}.addButton:hover:before{color:#fff}.modalOverlay{position:fixed;inset:0;background:#0f172a59;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;justify-content:center;align-items:center;padding:1.5rem;z-index:1500}.modalContainer{width:100%;max-width:560px;max-height:85vh;overflow-y:auto;padding:2rem;scrollbar-width:none;-ms-overflow-style:none}.modalContainer::-webkit-scrollbar{display:none}.dateInputContainer{display:flex;gap:.6rem;align-items:center}.dateInputContainer input{flex:1;text-align:left}.calendarToggle{padding:.6rem .8rem;border-radius:.7rem;border:1px solid #e5e7eb;background:#f3f4f6;cursor:pointer;transition:all .2s ease}.calendarToggle:hover{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff}.calendarWrapper{margin-top:.8rem}.priorityGroup{display:flex;gap:.6rem}.priorityButton{flex:1;padding:.6rem;border-radius:.7rem;border:2px solid transparent;background:#f3f4f6;font-weight:500;cursor:pointer}.priority-alta{border-color:#ef4444;color:#ef4444}.priority-alta.priorityActive{background:#ef4444;color:#fff;box-shadow:0 6px 15px #ef44444d}.priority-media{border-color:#f59e0b;color:#f59e0b}.priority-media.priorityActive{background:#f59e0b;color:#fff;box-shadow:0 6px 15px #f59e0b4d}.priority-baja{border-color:#22c55e;color:#22c55e}.priority-baja.priorityActive{background:#22c55e;color:#fff;box-shadow:0 6px 15px #22c55e4d}.priorityActive{animation:pop .2s ease}@keyframes pop{0%{transform:scale(.95)}to{transform:scale(1)}}.tagsSection{display:flex;flex-direction:column;gap:.8rem}.tagChips{display:flex;flex-wrap:wrap;gap:.5rem}.tagChip{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:.6rem;font-size:.85rem;font-weight:500}.tagChipRemove{background:none;border:none;cursor:pointer;color:inherit;opacity:.7;transition:opacity .2s;padding:0;margin-left:.2rem}.tagChipRemove:hover{opacity:1}.tagChip.subject{background:#dbeafe;color:#1e40af}.tagChip.category{background:#fef3c7;color:#92400e}.tagChip.priority-high{background:#fee2e2;color:#991b1b}.tagChip.priority-medium{background:#fed7aa;color:#9a3412}.tagChip.priority-low{background:#d1fae5;color:#065f46}.tagChip.custom{background:#f3f4f6;color:#374151}.tagInputRow{display:flex;gap:.6rem;align-items:center}.tagInputRow input{flex:2}.tagInputWrapper{position:relative;flex:2;display:flex}.tagInputWrapper input{width:100%}.tagDropdown{position:fixed;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 10px 25px #0000001f;overflow:hidden;z-index:9999;animation:tagDropdownIn .15s ease}@keyframes tagDropdownIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.tagDropdownList{padding:.25rem 0;max-height:200px;overflow-y:auto}.tagDropdownItem{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;cursor:pointer;transition:background .15s ease}.tagDropdownItem:hover{background:#f8fafc}.tagDropdownItemLabel{font-size:.875rem;font-weight:500;color:#374151}.tagDropdownItemActions{display:flex;gap:.25rem;opacity:0;transition:opacity .15s ease}.tagDropdownItem:hover .tagDropdownItemActions{opacity:1}.tagActionBtn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:.4rem;cursor:pointer;transition:background .15s ease,color .15s ease;background:transparent}.tagActionDelete{color:#ef4444}.tagActionDelete:hover{background:#fee2e2}.addTagButton{flex-shrink:0;width:40px;height:40px;border-radius:.7rem;border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#ff006e,#c026d3);background-origin:border-box;background-clip:padding-box,border-box;font-size:1.3rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.addTagButton:hover{background-image:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;transform:scale(1.05)}@media(max-width:1023px){.modalOverlay{align-items:center;padding:1rem}.modalContainer{width:100%;max-height:60dvh;overflow-y:auto;padding:1.2rem;gap:.6rem}.modalContainer h2{font-size:1.2rem;margin-bottom:.3rem}.modalClose{top:.6rem;right:.6rem;font-size:1rem}.modalContainer input,.modalContainer select,.modalContainer textarea{padding:.6rem;font-size:.85rem}.modalContainer textarea{height:65px}.modalActions{margin-top:.6rem;gap:.6rem}.cancelButton,.saveButton{padding:.6rem;font-size:.85rem}.errorMessage{font-size:.8rem;margin-bottom:.3rem}}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.confirmacion-message-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-family:system-ui,-apple-system,sans-serif;animation:fadeIn .2s ease}.confirmacion-message-overlay.closing{animation:fadeOut .2s ease forwards}.confirmacion-message-container{background:#fff;width:100%;max-width:28rem;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.confirmacion-message-gradient-bar{height:.5rem;background:linear-gradient(to right,#f6047b,#c820c5,#c820c5)}.confirmacion-message-content{padding:1.5rem}.confirmacion-message-close-container{display:flex;justify-content:flex-end;margin-bottom:.5rem}.confirmacion-message-close-btn{padding:.25rem;border-radius:9999px;background:none;border:none;color:#9ca3af;cursor:pointer;transition:background-color .2s}.confirmacion-message-close-btn:hover{background-color:#f3f4f6}.confirmacion-message-center{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:1.5rem}.confirmacion-message-icon-container{width:4rem;height:4rem;background-color:#fdf2f8;border-radius:9999px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:#d11c7f}.confirmacion-message-title{font-size:1.25rem;font-weight:700;color:#1f2937;margin-bottom:.5rem;margin:0 0 .5rem}.confirmacion-message-description{color:#6b7280;font-size:.875rem;line-height:1.5;max-width:17.5rem;margin:0}.confirmacion-message-actions{display:flex;flex-direction:column;gap:.75rem}@media(min-width:640px){.confirmacion-message-actions{flex-direction:row}}.confirmacion-message-cancel-btn{flex:1;padding:.625rem 1rem;border-radius:.75rem;border:2px solid #f3f4f6;background:#fff;color:#4b5563;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;outline:none}.confirmacion-message-cancel-btn:hover{background-color:#f9fafb}.confirmacion-message-confirm-btn{flex:1;padding:.625rem 1rem;border-radius:.75rem;background-color:#f40780;color:#fff;border:none;font-weight:600;font-size:.875rem;cursor:pointer;box-shadow:0 4px 6px -1px #db27771a,0 2px 4px -1px #db27770f;transition:all .2s;outline:none}.confirmacion-message-confirm-btn:hover{background-color:#b0166a}.confirmacion-message-footer{background-color:#f9fafb;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem;border-top:1px solid #f3f4f6}.confirmacion-message-footer-text{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;font-weight:700}.edit-button{background:none;border:none;color:#6b7280;display:inline-flex;align-items:center;justify-content:center;padding:2px;margin-right:6px;cursor:pointer}.edit-button svg{display:block;width:18px;height:18px}.edit-button:hover{color:#111827}.duplicate-button{background:none;border:none;color:#6b7280;display:inline-flex;align-items:center;justify-content:center;padding:2px;margin-right:6px;cursor:pointer}.duplicate-button svg{display:block;width:18px;height:18px}.duplicate-button:hover{color:#111827}.remindcard{display:flex;border-radius:.75rem;background:#fff;border:1px solid #e5e7eb;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;box-shadow:0 1px 3px #0000000a}.remindcard:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014;border-color:#d1d5db}.remindcard-accent{width:4px;min-height:100%;flex-shrink:0;background:#e5e7eb;transition:background .2s ease}.remindcard.remindcard-priority-alta .remindcard-accent{background:linear-gradient(180deg,#ff006e,#ef4444)}.remindcard.remindcard-priority-media .remindcard-accent{background:linear-gradient(180deg,#f59e0b,#eab308)}.remindcard.remindcard-priority-baja .remindcard-accent{background:linear-gradient(180deg,#22c55e,#16a34a)}.remindcard-body{flex:1;padding:10px 10px 8px;display:flex;flex-direction:column;gap:6px;min-width:0}.remindcard-top{display:flex;align-items:flex-start;gap:10px}.remindcard-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.remindcard-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.remindcard-name{font-size:.78rem;font-weight:600;color:#1f2937;line-height:1.35;text-align:left;word-break:break-word}.remindcard-status-toggle{display:inline-flex;align-items:center;justify-content:center;padding:1px 7px;border-radius:999px;font-size:.56rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border:1px solid;flex-shrink:0;background:#fff;cursor:pointer;transition:all .2s ease}.remindcard-status-toggle-pending{background:#fef2f2;color:#b91c1c;border-color:#fca5a5}.remindcard-status-toggle-completed{background:#f0fdf4;color:#166534;border-color:#86efac}.remindcard-status-toggle:hover{transform:translateY(-1px);box-shadow:0 3px 8px #00000014}.remindcard-status-toggle:focus-visible{outline:2px solid #2563eb;outline-offset:1px}.remindcard-description{font-size:.68rem;font-weight:400;color:#6b7280;line-height:1.3;text-align:left;word-break:break-word}.remindcard.completed .remindcard-name{text-decoration:line-through;color:#9ca3af}.remindcard.completed{opacity:.7}.remindcard.completed:hover{opacity:1}.remindcard-due{display:inline-flex;align-items:center;gap:4px;font-size:.62rem;font-weight:500;color:#6b7280;margin-top:1px}.remindcard-due svg{flex-shrink:0}.remindcard-actions{display:flex;align-items:center;gap:2px;margin-left:auto;align-self:flex-end}.remindcard-actions .edit-button{padding:4px;border-radius:.4rem;transition:background .15s ease,color .15s ease}.remindcard-actions .edit-button:hover{background:#f3f4f6;color:#16a34a}.remindcard-delete{background:none;border:none;color:#9ca3af;cursor:pointer;padding:4px;border-radius:.4rem;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.remindcard-delete:hover{background:#fef2f2;color:#ef4444}.remindcard-tags{display:flex;flex-wrap:wrap;gap:4px;padding-left:0}.remindcard.selection-mode .remindcard-tags{padding-left:28px}.remindcard-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.58rem;font-weight:600;border:1px solid;letter-spacing:.01em;transition:transform .15s ease,box-shadow .15s ease}.remindcard-tag:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0000000f}.remindcard-tag.subject{background:#eff6ff;color:#2563eb;border-color:#93c5fd}.remindcard-tag.category{background:#f9fafb;color:#374151;border-color:#d1d5db}.remindcard-tag.custom{background:#f0fdf4;color:#15803d;border-color:#86efac}.remindcard-tag.priority-high{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.remindcard-tag.priority-medium{background:#fefce8;color:#a16207;border-color:#fde047}.remindcard-tag.priority-low{background:#f0fdf4;color:#16a34a;border-color:#86efac}.onboarding-overlay{position:fixed;inset:0;z-index:10000;pointer-events:none;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.onboarding-backdrop{position:absolute;inset:0;background:transparent;animation:onboardingFadeIn .2s ease-out;pointer-events:none;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.onboarding-spotlight{position:absolute;border:2px solid #f6047b;border-radius:.9rem;box-shadow:0 0 0 9999px #00000073,0 0 0 6px #f6047b26;transition:all .2s ease;pointer-events:none;animation:onboardingSpotlight .25s ease-out;z-index:2}.onboarding-panel{position:absolute;right:1rem;bottom:1rem;max-width:460px;width:calc(100vw - 2rem);z-index:3;pointer-events:auto;animation:onboardingSlideUp .25s ease-out}.onboarding-panel.top-right{top:1rem;bottom:auto}.onboarding-panel.top{top:1rem;bottom:auto;left:1rem;right:auto}.onboarding-step-card{background:#fff;border-radius:1rem;overflow:hidden;border:1px solid #f0e4f4;box-shadow:0 20px 40px #0003;padding:1rem;color:#1f2937}.onboarding-step-header{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.5rem}.onboarding-step-header h3{margin:0;font-size:1.1rem;line-height:1.35;color:#111827}.onboarding-step-badge{display:inline-flex;align-self:flex-start;padding:.2rem .55rem;border-radius:999px;font-size:.78rem;font-weight:600;background:linear-gradient(135deg,#f6047b24,#c820c524);color:#7a1b86;border:1px solid rgba(200,32,197,.24)}.onboarding-step-description{margin:.4rem 0 0;font-size:.95rem;line-height:1.5;color:#374151}.onboarding-step-requirement{margin:.65rem 0 0;padding:.55rem .7rem;border-radius:.6rem;font-size:.82rem;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}.onboarding-step-requirement.is-complete{background:#ecfdf3;border-color:#86efac;color:#166534}.onboarding-step-note{margin:.65rem 0 0;padding:.55rem .7rem;border-radius:.6rem;font-size:.82rem;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}.onboarding-step-progress{margin:.85rem 0;height:7px;background:#eceff4;border-radius:999px;overflow:hidden;border:1px solid #e5e7eb}.onboarding-step-progress-bar{height:100%;background:linear-gradient(135deg,#f6047b,#c820c5);transition:width .2s ease}.onboarding-step-actions{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-top:.8rem;flex-wrap:wrap}.onboarding-step-actions-right{display:flex;gap:.55rem;margin-left:auto}.onboarding-btn{border:none;border-radius:.65rem;padding:.6rem .85rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.onboarding-btn:disabled{opacity:.55;cursor:not-allowed}.onboarding-btn-primary{background:linear-gradient(135deg,#f6047b,#c820c5);color:#fff;box-shadow:0 8px 18px #c820c540}.onboarding-btn-primary:hover{transform:translateY(-1px)}.onboarding-btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.onboarding-btn-tertiary{background:#fff;color:#374151;border:1px solid #d1d5db}.onboarding-highlight{box-shadow:none!important}@keyframes onboardingFadeIn{0%{opacity:0}to{opacity:1}}@keyframes onboardingSlideUp{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes onboardingSpotlight{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media(max-width:768px){.onboarding-panel{right:.5rem;left:.5rem;bottom:.5rem;width:auto;max-width:330px;max-height:70vh;overflow-y:auto;animation:onboardingSlideUp .3s ease-out}.onboarding-panel.top-right{top:.5rem;bottom:auto;max-height:70vh}.onboarding-panel.top{top:.5rem;bottom:auto;left:.5rem;right:.5rem;max-height:70vh}.onboarding-step-card{padding:.75rem;border-radius:.8rem;box-shadow:0 12px 30px #0000002e}.onboarding-step-header{gap:.25rem;margin-bottom:.35rem}.onboarding-step-header h3{font-size:.95rem;line-height:1.3}.onboarding-step-badge{padding:.15rem .45rem;font-size:.7rem}.onboarding-step-description{margin:.3rem 0 0;font-size:.85rem;line-height:1.4}.onboarding-step-requirement,.onboarding-step-note{margin:.5rem 0 0;padding:.4rem .6rem;font-size:.75rem}.onboarding-step-progress{margin:.65rem 0 0;height:5px}.onboarding-step-actions{flex-direction:column;align-items:stretch;gap:.4rem;margin-top:.6rem}.onboarding-step-actions-right{margin-left:0;display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.onboarding-btn{width:100%;padding:.5rem .7rem;font-size:.78rem}}@media(max-width:480px){.onboarding-panel{max-width:280px;right:.4rem;left:.4rem;bottom:.4rem}.onboarding-panel.top-right{top:.4rem}.onboarding-panel.top{top:.4rem;left:.4rem;right:.4rem}.onboarding-step-card{padding:.6rem;border-radius:.7rem}.onboarding-step-header{gap:.15rem;margin-bottom:.25rem}.onboarding-step-header h3{font-size:.85rem;line-height:1.25}.onboarding-step-badge{padding:.12rem .35rem;font-size:.65rem}.onboarding-step-description{margin:.2rem 0 0;font-size:.75rem;line-height:1.35}.onboarding-step-requirement,.onboarding-step-note{margin:.4rem 0 0;padding:.35rem .5rem;font-size:.7rem}.onboarding-step-actions{gap:.3rem;margin-top:.5rem}.onboarding-btn{padding:.45rem .6rem;font-size:.72rem}}.popup-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000;padding:16px;animation:fadeIn .25s ease}.popup-overlay.closing{animation:fadeOut .25s ease forwards}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.popup-container{background-color:#fff;border-radius:1.2rem;box-shadow:0 20px 40px #00000026;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease;display:flex;flex-direction:column}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.popup-container.closing{animation:slideDown .3s ease forwards}.popup-header{background:linear-gradient(135deg,#ff006e,#c026d3);border-radius:1rem 1rem 0 0;padding:20px 24px;color:#fff;border-bottom:none;flex-shrink:0}.popup-header h2{margin:0;font-size:18px;font-weight:600;letter-spacing:.5px}.popup-content{padding:24px;overflow-y:auto;flex:1}.subject-header{margin-bottom:28px;border-bottom:1px solid #e0e0e0;padding-bottom:16px}.subject-name{margin:0 0 12px;font-size:32px;font-weight:700;color:#1a1a1a;text-transform:uppercase}.subject-meta{display:flex;gap:32px;flex-wrap:wrap}.subject-code,.subject-date{font-size:14px;color:#666;font-weight:500}.subject-date{background-color:#f5f5f5;padding:6px 12px;border-radius:6px}.info-section{margin-bottom:28px}.section-title{margin:0 0 16px;font-size:16px;font-weight:700;color:#1a1a1a;text-transform:none}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.info-item{display:flex;gap:12px;padding:12px;background-color:#f9fafb;border-radius:.7rem;border-left:4px solid #ff006e;transition:all .2s ease}.info-item:hover{background-color:#fff5f9;border-left-color:#c026d3}.info-icon{font-size:20px;min-width:24px;display:flex;align-items:flex-start}.info-text{flex:1}.info-label{margin:0;font-size:11px;color:#999;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.info-value{margin:4px 0 0;font-size:15px;font-weight:600;color:#1a1a1a}.schedule-list{display:flex;flex-direction:column;gap:12px}.schedule-item{display:flex;gap:16px;padding:16px;background-color:#f9fafb;border-radius:.7rem;border-left:5px solid #ff006e;transition:all .2s ease}.schedule-item:hover{background-color:#fff5f9;border-left-color:#c026d3}.schedule-day-badge{display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;border-radius:.7rem;padding:12px 16px;min-width:80px;text-align:center;gap:4px}.schedule-day{margin:0;font-size:14px;font-weight:700}.schedule-type{font-size:10px;background-color:#ffffff40;padding:2px 8px;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.schedule-details{display:flex;gap:24px;flex:1;align-items:center}.schedule-detail{flex:1}.detail-label{display:block;font-size:10px;color:#999;font-weight:700;text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px}.detail-value{margin:0;font-size:15px;font-weight:600;color:#1a1a1a}.popup-footer{padding:16px 24px;border-top:1px solid #e0e0e0;display:flex;justify-content:center}.close-button{background-color:#f9fafb;border:1px solid #e5e7eb;padding:12px 32px;border-radius:.8rem;font-size:14px;font-weight:600;color:#666;cursor:pointer;transition:all .2s ease;min-width:200px}.close-button:hover{background-color:#f3f4f6;border-color:#d1d5db;color:#333}.close-button:active{transform:scale(.98)}@media(max-width:600px){.popup-container{border-radius:16px;margin-left:16px;margin-right:16px}.popup-content{padding:16px}.subject-name{font-size:24px}.subject-meta{gap:16px}.info-grid{grid-template-columns:1fr}.schedule-item{flex-direction:column}.schedule-details{width:100%;gap:16px}}.popup-container::-webkit-scrollbar{width:6px}.popup-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.popup-container::-webkit-scrollbar-thumb{background:#bbb;border-radius:10px}.popup-container::-webkit-scrollbar-thumb:hover{background:#999}.comments-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.comment-item{padding:12px;background-color:#f9fafb;border-left:4px solid #ff006e;border-radius:6px;word-break:break-word}.comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.comment-timestamp{font-size:11px;color:#999;font-weight:600}.edit-comment-button,.delete-comment-button{background:none;border:none;padding:4px;cursor:pointer;color:#999;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.edit-comment-button:hover{color:#0f766e;background-color:#ecfeff}.delete-comment-button:hover{color:#ff006e;background-color:#fff5f9}.edit-comment-button:disabled,.delete-comment-button:disabled,.add-comment-button:disabled,.add-comment-action-button:disabled,.add-comment-textarea:disabled{opacity:.6;cursor:not-allowed;transform:none}.edit-comment-button.is-loading,.delete-comment-button.is-loading{background-color:#f3f4f6}.delete-comment-button:active{transform:scale(.95)}.comment-text{margin:0;font-size:14px;color:#333;line-height:1.5}.no-comments{text-align:center;padding:20px 12px;color:#999;font-size:13px;font-style:italic;margin:0}.info-section .add-comment-container{margin-bottom:16px;display:flex;flex-direction:column;gap:10px}.add-comment-button{width:100%;padding:12px;background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff;border:none;border-radius:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px}.add-comment-plus{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background-color:#fff3;font-size:16px;line-height:1}.add-comment-label{letter-spacing:.2px}.add-comment-button:hover{box-shadow:0 6px 18px #c026d34d;transform:translateY(-2px)}.add-comment-button:disabled:hover{box-shadow:none;transform:none}.add-comment-button:focus-visible,.add-comment-action-button:focus-visible,.edit-comment-button:focus-visible,.delete-comment-button:focus-visible{outline:2px solid #c026d3;outline-offset:2px}.add-comment-dropdown{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.8rem;padding:12px;display:flex;flex-direction:column;gap:10px;transition:opacity .15s ease,transform .15s ease}.add-comment-dropdown.show{opacity:1;transform:translateY(0)}.add-comment-dropdown.hide{opacity:0;transform:translateY(-4px)}.add-comment-textarea{width:100%;min-height:92px;resize:vertical;border:1px solid #d1d5db;border-radius:.7rem;padding:10px 12px;font-size:14px;font-family:inherit;line-height:1.45;color:#1f2937;background-color:#fff;box-sizing:border-box}.add-comment-textarea:focus{outline:none;border-color:#ff006e;box-shadow:0 0 0 2px #ff006e1a}.add-comment-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.add-comment-action-button{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.add-comment-action-button.save{background:linear-gradient(135deg,#ff006e,#c026d3);color:#fff}.add-comment-action-button.save:hover:not(:disabled){box-shadow:0 4px 12px #c026d34d;transform:translateY(-1px)}.add-comment-action-button.save:disabled{background:#ccc;cursor:not-allowed}.add-comment-action-button.cancel{background-color:#f9fafb;color:#666;border:1px solid #e5e7eb}.add-comment-action-button.cancel:hover{background-color:#f3f4f6;border-color:#d1d5db}.comment-header-actions{display:flex;gap:4px}.comment-edit-area{display:flex;flex-direction:column;gap:8px}@media(max-width:600px){.add-comment-button,.add-comment-textarea{font-size:12px}.add-comment-action-button{width:100%}}.ContainerRecover{position:fixed;inset:0;display:flex;justify-content:flex-end;align-items:center;padding:20px clamp(16px,6vw,8%) 20px 16px;background-size:cover;background-position:center;background-repeat:no-repeat}.ContainerRecover:after{content:"";position:absolute;inset:0;background:#0006;z-index:0}.wrapperRecovery{position:relative;z-index:2;width:min(420px,100%)}.wrapperRecovery form{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;padding:clamp(32px,6vw,55px) clamp(20px,5vw,40px);background:#fff;border-radius:22px;box-shadow:0 30px 60px #00000040;overflow:hidden}.wrapperRecovery form:before{content:"";position:absolute;left:0;top:0;width:8px;height:100%;background:linear-gradient(to bottom,#a855f7,#ff005c)}.logoRecover{width:clamp(120px,38vw,180px);height:auto;margin-bottom:5px}.wrapperRecovery h1{margin-top:0;margin-bottom:8px;font-size:clamp(24px,7vw,30px);font-weight:700;color:#111;text-align:center}.subtitle{font-size:clamp(13px,3.6vw,14px);color:#666;text-align:center;margin-bottom:30px}.input-box{position:relative;width:100%;margin-bottom:20px}.input-box input{width:100%;height:48px;padding:0 48px 0 18px;border-radius:26px;border:1px solid #ddd;background:#f3f3f3;font-size:14px;transition:.3s ease}.input-box input:focus{border-color:#a855f7;background:#fff;box-shadow:0 0 0 3px #a855f726;outline:none}.input-box svg{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#888}.btn{width:100%;height:48px;border:none;border-radius:26px;font-size:15px;font-weight:600;color:#fff;cursor:pointer;background:linear-gradient(90deg,#a855f7,#ff005c);transition:.3s ease;margin-bottom:15px}.btn-return{width:auto;min-width:140px;height:44px;border-radius:22px;border:1px solid #ddd;background:#fff;font-size:14px;font-weight:500;color:#555;cursor:pointer;margin-top:10px;align-self:center;transition:.3s ease}@media(max-width:480px){.ContainerRecover{justify-content:center;padding:16px}.wrapperRecovery form{border-radius:18px;box-shadow:0 18px 42px #0003}.input-box input{font-size:16px}.btn{font-size:14px}}@media(max-width:360px){.ContainerRecover{padding:16px 12px}.wrapperRecovery form{padding:28px 16px}.input-box{margin-bottom:16px}}@media(min-width:768px){.ContainerRecover{justify-content:flex-end;padding:24px clamp(24px,6vw,8%) 24px 24px}}.dropzone{position:relative;margin-top:8px;border:3px dashed #c5c5c5;border-radius:24px;background:#f7f7f8;min-height:clamp(360px,46vh,460px);width:100%;display:grid;place-items:center;padding:44px 40px 52px;text-align:center;overflow:hidden;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease,background .22s ease}.dropzone .glow{position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,rgba(138,59,243,.12),transparent 50%),radial-gradient(circle at 50% 70%,rgba(255,93,177,.14),transparent 55%);opacity:0;transition:opacity .22s ease;pointer-events:none}.dropzone.is-dragging{border-color:#8a3bf3a6;background:#fdfaff;transform:translateY(-6px);box-shadow:0 20px 70px #8a3bf340}.dropzone.is-dragging .glow{opacity:1}.badge{position:relative;width:112px;height:112px;border-radius:50%;background:linear-gradient(180deg,#dff9ec,#b6f5d8);display:grid;place-items:center;box-shadow:0 12px 34px #0f9c6640;animation:float 3.2s ease-in-out infinite}.doc-icon svg{display:block}.texts{max-width:760px;display:grid;gap:12px;z-index:1}.texts h1{margin:0;font-size:clamp(24px,2.4vw,32px);line-height:1.2;color:#0e0e16}.texts p{margin:0;font-size:18px;color:#4b4b5a}.file-chip{display:inline-flex;align-items:center;gap:8px;align-self:center;padding:10px 14px;border-radius:14px;background:#8a3bf314;color:#4b2b92;font-weight:600;font-size:15px;box-shadow:inset 0 0 0 1px #8a3bf326;animation:fade-in .24s ease}.file-chip--error{background:#dc262614;color:#b91c1c;box-shadow:inset 0 0 0 1px #dc262640}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media(max-width:720px){.dropzone{min-height:320px;padding:28px 20px 34px}}.upload-button{display:flex;justify-content:center;margin-bottom:28px}.cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 28px;border:none;border-radius:14px;font-size:16px;font-weight:700;letter-spacing:.2px;color:#fff;background:linear-gradient(120deg,#ff4f73,#ff5db1 45%,#8a3bf3);box-shadow:0 16px 40px #8a3bf340;cursor:pointer;transition:transform .2s ease,box-shadow .22s ease}.cta:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 22px 52px #8a3bf352}.cta:active{transform:translateY(0) scale(.995)}.hidden-input{display:none}@media(max-width:720px){.cta{width:100%}}.addPeriodCard{width:100%;max-width:100%;height:auto;min-height:500px;padding:1.6rem;border-radius:1rem;background:#fff;border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(120deg,#ff4f73,#ff5db1 45%,#8a3bf3);background-origin:border-box;background-clip:padding-box,border-box;box-shadow:0 14px 28px #8a3bf31f;display:flex;flex-direction:column}.addPeriodCard__header h2{margin:0;font-size:1.4rem;color:#1f2b4a}.addPeriodCard__header p{margin:.45rem 0 0;color:#4b5563}.addPeriodCard__form{margin-top:1.2rem;display:grid;gap:.9rem}.addPeriodCard__field{display:grid;gap:.35rem}.addPeriodCard__field span{font-weight:600;color:#1f2b4a}.addPeriodCard__field input{border:1px solid #d1d5db;border-radius:.6rem;padding:.65rem .8rem;font-size:.98rem;color:#111827}.addPeriodCard__field input:focus{outline:none;border-color:#a855f7;box-shadow:0 0 0 3px #a855f726}.addPeriodCard__submit{border:none;border-radius:.65rem;padding:.7rem 1rem;font-weight:700;color:#fff;background:linear-gradient(120deg,#ff4f73,#ff5db1 45%,#8a3bf3);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.addPeriodCard__submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 18px #8a3bf347}.addPeriodCard__submit:disabled{opacity:.7;cursor:not-allowed}.addPeriodCard__message{margin:0;font-weight:600}.addPeriodCard__message--error{color:#b91c1c}.addPeriodCard__message--success{color:#047857}@media(max-width:700px){.addPeriodCard{padding:1rem}}.academicPeriodListCard{width:100%;border-radius:1rem;padding:1.2rem;background:#fff;border:1px solid #e5e7eb;box-shadow:0 8px 20px #0f172a14;display:flex;flex-direction:column;gap:.8rem}.academicPeriodListCard__header{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.academicPeriodListCard__header h2{margin:0;color:#111827;font-size:1.1rem}.academicPeriodListCard__refresh{border:1px solid #d1d5db;background:#f8fafc;color:#1f2937;border-radius:.55rem;padding:.45rem .75rem;font-weight:600;cursor:pointer}.academicPeriodListCard__refresh:disabled{cursor:not-allowed;opacity:.7}.academicPeriodListCard__message{margin:0;font-weight:600;font-size:.92rem}.academicPeriodListCard__message--error{color:#b91c1c}.academicPeriodListCard__message--success{color:#047857}.academicPeriodListCard__state{margin:0;color:#4b5563;font-size:.92rem}.academicPeriodListCard__list{list-style:none;padding:0;margin:0;display:grid;gap:.7rem;max-height:320px;overflow-y:auto}.academicPeriodListCard__item{display:flex;align-items:center;justify-content:space-between;gap:.6rem;border:1px solid #e5e7eb;border-radius:.75rem;padding:.6rem .8rem;background:#fcfcfd}.academicPeriodListCard__details{min-width:0}.academicPeriodListCard__name{margin:0;color:#111827;font-weight:700}.academicPeriodListCard__dates{margin:.2rem 0 0;color:#6b7280;font-size:.86rem}.academicPeriodListCard__actions{display:flex;align-items:center;gap:2px}.academicPeriodListCard__actions .edit-button{margin-right:0;border-radius:.4rem;transition:background .15s ease,color .15s ease}.academicPeriodListCard__actions .edit-button:hover{background:#f3f4f6;color:#16a34a}.academicPeriodListCard__editForm{width:100%;display:grid;gap:.5rem}.academicPeriodListCard__editForm input{border:1px solid #d1d5db;border-radius:.55rem;padding:.5rem .65rem;font-size:.92rem}.academicPeriodListCard__editForm input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.academicPeriodListCard__editActions{display:flex;gap:.5rem;justify-content:flex-end}.academicPeriodListCard__editActions button{border:none;border-radius:.55rem;padding:.45rem .75rem;cursor:pointer;font-weight:600}.academicPeriodListCard__editActions button:first-child{background:#0f766e;color:#fff}.academicPeriodListCard__editActions button:last-child{background:#e5e7eb;color:#111827}.academicPeriodListCard__editActions button:disabled{opacity:.7;cursor:not-allowed}@media(max-width:700px){.academicPeriodListCard{padding:1rem}.academicPeriodListCard__item{align-items:flex-start;flex-direction:column}.academicPeriodListCard__actions{align-self:flex-end}}.adminView{display:flex;align-items:center;justify-content:center;padding:2rem;height:calc(100vh - 60px);box-sizing:border-box;overflow:auto}.adminView__overview{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}.adminView__overview .page{width:100%;max-width:100%;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);gap:1.5rem;align-items:start}.adminView__overview .card{display:flex;flex-direction:column;align-items:stretch;gap:2rem;width:100%;min-width:0}.adminView__overview .card.adminPanel--period{justify-content:flex-start}@media(max-width:980px){.adminView__overview .page{grid-template-columns:1fr}}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}.ContainerRestore{position:fixed;inset:0;display:flex;justify-content:flex-end;align-items:center;padding:20px clamp(16px,6vw,8%) 20px 16px;background-size:cover;background-position:center;background-repeat:no-repeat}.ContainerRestore:after{content:"";position:absolute;inset:0;background:#0006;z-index:0}.wrapperRestore{position:relative;z-index:2;width:100%;max-width:420px}.wrapperRestore form{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;padding:clamp(32px,6vw,45px) clamp(20px,5vw,40px);background:#fff;border-radius:24px;box-shadow:0 35px 70px #00000059;overflow:hidden}.wrapperRestore form:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(to bottom,#a855f7,#ff005c);border-top-left-radius:inherit;border-bottom-left-radius:inherit}.logoRestore{width:clamp(110px,32vw,140px);height:auto;margin-bottom:8px}.wrapperRestore h1{margin:0;font-size:clamp(22px,6.5vw,28px);font-weight:700;color:#111;text-align:center}.subtitle{font-size:clamp(13px,3.4vw,14px);color:#666;text-align:center;margin-bottom:22px}.restore-alert{width:100%;border-radius:12px;padding:10px 12px;margin-bottom:12px;font-size:13px;font-weight:600;text-align:left}.restore-alert-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.restore-alert-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.input-box{position:relative;width:100%;margin-bottom:18px}.input-box input{width:100%;height:48px;padding:0 45px 0 18px;border-radius:25px;border:1px solid #ddd;background:#f3f3f3;font-size:14px;transition:.25s}.input-box input:focus{border-color:#a855f7;background:#fff;box-shadow:0 0 0 3px #a855f72e;outline:none}.toggle-password-recover{position:absolute;right:16px;top:50%;transform:translateY(-50%);cursor:pointer;color:#777;font-size:15px;transition:color .2s ease}.toggle-password-recover:hover{color:#a855f7}.password-checklist{width:100%;margin:-4px 0 12px;padding:12px 14px;border:1px solid #f2e8f4;background:linear-gradient(180deg,#fff7fb,#fff);border-radius:.75rem}.password-checklist-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.password-checklist-title{font-size:.72rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.password-checklist-score{font-size:.75rem;font-weight:700;color:#9d174d;background:#fde7f3;border-radius:999px;padding:2px 8px}.password-checklist-progress-track{width:100%;height:6px;border-radius:999px;background:#f3e8ff;overflow:hidden;margin-bottom:10px}.password-checklist-progress-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f6047b,#c820c5);transition:width .25s ease}.password-checklist-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.password-checklist-item{display:flex;align-items:center;gap:8px;font-size:.82rem;line-height:1.25;transition:color .2s ease}.password-checklist-item .password-checklist-icon{display:inline-flex;font-size:.9rem}.password-checklist-item.pending{color:#6b7280}.password-checklist-item.met{color:#0f766e;font-weight:600}.password-match-hint{width:100%;margin:0 2px 14px;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;animation:matchFade .3s ease-out}.password-match-hint.match{color:#22c55e}.password-match-hint.no-match{color:#ef4444}@keyframes matchFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.btn{width:100%;height:48px;border:none;border-radius:24px;font-size:14px;font-weight:600;color:#fff;cursor:pointer;background:linear-gradient(90deg,#a855f7,#ff005c);transition:.25s;margin-bottom:12px}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px #a855f766}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-return{width:auto;min-width:132px;height:42px;border-radius:21px;border:1px solid #ddd;background:#fff;font-size:13px;font-weight:500;color:#555;cursor:pointer;margin-top:6px;transition:.25s}.btn-return:hover{background:#f3f3f3;border-color:#a855f7;color:#a855f7}.btn-return:disabled{opacity:.5;cursor:not-allowed}@media(max-width:900px){.ContainerRestore{justify-content:center;padding:16px}.ContainerRestore{padding:20px 16px}.wrapperRestore{max-width:420px}}@media(max-width:500px){.wrapperRestore form{padding:32px 20px;border-radius:18px;box-shadow:0 18px 42px #0003}.wrapperRestore{max-width:100%}.input-box input,.btn{font-size:16px}}@media(max-width:360px){.ContainerRestore{padding:16px 12px}.wrapperRestore form{padding:28px 16px}.input-box{margin-bottom:16px}}@media(min-width:768px){.ContainerRestore{justify-content:flex-end;padding:24px clamp(24px,6vw,8%) 24px 24px}}.ContainerToken{position:fixed;inset:0;display:flex;justify-content:flex-end;align-items:center;padding:20px clamp(16px,6vw,8%) 20px 16px;background-size:cover;background-position:center;background-repeat:no-repeat}.ContainerToken:after{content:"";position:absolute;inset:0;background:#0006;z-index:1}.ContainerToken .wrapperToken{position:relative;z-index:2;width:min(420px,100%);max-width:420px}.ContainerToken .wrapperToken form{display:flex;flex-direction:column;align-items:center;padding:clamp(32px,6vw,55px) clamp(18px,5vw,40px);background:#fff;border-radius:24px;box-shadow:0 30px 80px #0000004d;position:relative;overflow:hidden}.ContainerToken .wrapperToken form:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(to bottom,#a855f7,#ff005c);border-top-left-radius:inherit;border-bottom-left-radius:inherit}.ContainerToken .logo{width:clamp(120px,34vw,160px);height:auto;margin-bottom:15px}.ContainerToken .wrapperToken h1{font-size:clamp(26px,7vw,32px);margin-bottom:10px;text-align:center}.ContainerToken .subtitle{font-size:clamp(13px,3.6vw,15px);color:#666;text-align:center;margin-bottom:30px}.ContainerToken .otp-container{display:flex;justify-content:center;gap:clamp(6px,2vw,10px);margin-bottom:30px}.ContainerToken .otp-container input{width:clamp(40px,11vw,55px);height:clamp(48px,14vw,65px);text-align:center;font-size:clamp(18px,5vw,22px);border-radius:12px;border:1px solid #ddd;background:#f7f7f7;transition:.2s}.ContainerToken .otp-container input:focus{border-color:#a855f7;background:#fff;box-shadow:0 0 0 3px #a855f733;outline:none;transform:scale(1.05)}.ContainerToken .btn{width:100%;max-width:100%;height:48px;border:none;border-radius:24px;font-size:15px;font-weight:600;color:#fff;cursor:pointer;background:linear-gradient(90deg,#a855f7,#ff005c);margin-bottom:15px}.ContainerToken .btn:hover{transform:translateY(-2px)}.ContainerToken .btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.ContainerToken .btn-return{width:auto;min-width:140px;height:44px;border-radius:22px;border:1px solid #ddd;background:#fff;color:#555;cursor:pointer}.ContainerToken .btn-return:hover{border-color:#a855f7;color:#a855f7}@media(max-width:480px){.ContainerToken{justify-content:center;padding:16px}.ContainerToken .wrapperToken form{border-radius:18px;box-shadow:0 18px 42px #0003}.ContainerToken .btn{font-size:14px}}@media(max-width:360px){.ContainerToken{padding:16px 12px}.ContainerToken .wrapperToken form{padding:28px 14px}.ContainerToken .otp-container{gap:4px}.ContainerToken .otp-container input{width:38px;height:46px;font-size:16px}}@media(min-width:768px){.ContainerToken{justify-content:flex-end;padding:24px clamp(24px,6vw,8%) 24px 24px}}.legal-view{min-height:100vh;min-height:100dvh;position:relative;padding:clamp(8px,1.8vw,18px);display:flex;justify-content:center;align-items:stretch;background-size:cover;background-position:center;background-repeat:no-repeat}.legal-view__ambient{position:fixed;inset:0;background-image:linear-gradient(to right,rgba(168,85,247,.07) 1px,transparent 1px),linear-gradient(to bottom,rgba(168,85,247,.07) 1px,transparent 1px);background-size:28px 28px;opacity:.24;pointer-events:none}.legal-view__card{width:min(1200px,100%);min-height:calc(100vh - clamp(16px,3.6vw,36px));position:relative;z-index:1;border-radius:24px;overflow:hidden;background:#fffffff5;box-shadow:0 24px 56px #40085629;border:1px solid rgba(168,85,247,.18);display:flex;flex-direction:column}.legal-view__header{padding:clamp(20px,4vw,34px) clamp(18px,4vw,34px) 18px;background:linear-gradient(120deg,#a855f71f,#ff005c1a);border-bottom:1px solid rgba(168,85,247,.16);display:flex;align-items:center;gap:10px;flex-wrap:nowrap}.legal-view__header--mobile{display:none}.legal-view__mobile-top{display:flex;align-items:center;gap:8px}.legal-view__eyebrow{margin:0;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:#8c2ab9;font-weight:700;white-space:nowrap}.legal-view__current{margin:0;font-size:clamp(.9rem,1.25vw,1rem);color:#4b2a5a;font-weight:600;white-space:nowrap}.legal-view__tabs{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.legal-view__tab{appearance:none;border:1px solid rgba(168,85,247,.35);background:#fff;color:#5f2a73;font-weight:600;border-radius:999px;padding:10px 14px;font-size:.92rem;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,color .18s ease}.legal-view__tab:hover{transform:translateY(-1px);box-shadow:0 8px 18px #a855f72e}.legal-view__tab:active{transform:scale(.98)}.legal-view__tab:focus-visible{outline:none;box-shadow:0 0 0 3px #a855f740}.legal-view__tab.is-active{color:#fff;border-color:transparent;background:linear-gradient(90deg,#a855f7,#ff005c)}.legal-view__content{padding:clamp(18px,4vw,34px);display:grid;gap:16px;flex:1;overflow:auto}.legal-view__content--mobile{display:none}.legal-view__block-title{border-left:4px solid #a855f7;padding:4px 0 4px 10px}.legal-view__block-title h2{margin:0;color:#32103f;font-size:1rem}.legal-view__section{border:1px solid #ece3f2;border-radius:16px;padding:16px;background:#fffdff}.legal-view__section h2{margin:0 0 10px;color:#351843;font-size:1.02rem}.legal-view__section p{margin:0;color:#4e4e58;line-height:1.58}.legal-view__section p+p{margin-top:10px}.legal-view__footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px clamp(16px,4vw,34px) 20px;border-top:1px solid #f0e4f6;background:#fff}.legal-view__footer p{margin:0;color:#6f6578;font-size:.88rem;max-width:780px}.legal-view__back{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:linear-gradient(90deg,#a855f7,#ff005c);color:#fff;border:1px solid transparent;border-radius:999px;padding:10px 16px;font-weight:600;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.legal-view__back:hover{background:#fff;color:#a855f7;border-color:#a855f7;transform:translateY(-1px);box-shadow:0 8px 18px #a855f72e;filter:brightness(1.05)}.legal-view__back:active{transform:scale(.98)}.legal-view__back:focus-visible{outline:none;box-shadow:0 0 0 3px #a855f740}@media(max-width:768px){.legal-view{padding:8px}.legal-view__card{border-radius:18px;min-height:calc(100vh - 16px)}.legal-view__content{max-height:none}.legal-view__footer{flex-direction:column;align-items:flex-start}.legal-view__header--desktop{display:none}.legal-view__header--mobile{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:14px 14px 12px}.legal-view__tabs--mobile{display:none}.legal-view__mobile-top{justify-content:space-between}.legal-view__tabs--mobile{display:grid;grid-template-columns:1fr;gap:7px;width:100%;margin-left:0}.legal-view__tabs--mobile .legal-view__tab{width:100%;text-align:left;white-space:normal;line-height:1.25;font-size:.82rem;padding:9px 11px;border-radius:999px}.legal-view__content--desktop{display:none}.legal-view__content--mobile{display:grid}.legal-view__eyebrow{font-size:10px;margin-right:4px}.legal-view__current{font-size:.82rem}}@media(max-width:480px){.legal-view__header--mobile{padding:12px 12px 10px}.legal-view__tabs--mobile .legal-view__tab{font-size:.78rem;padding:8px 10px}.legal-view__section{padding:14px}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:block;min-width:320px;min-height:100vh;min-height:100dvh}html,body{min-height:100vh;min-height:100dvh;overflow-x:hidden}.session-timeout-overlay{position:fixed;inset:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.session-timeout-modal{background:#fff;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;max-width:480px;width:90%;animation:slideUp .25s ease-out;position:relative;overflow:hidden}.session-timeout-modal:before{content:"";position:absolute;top:0;left:0;right:0;height:.25rem;background:linear-gradient(to right,#f6047b,#c820c5)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.session-timeout-header{background:linear-gradient(135deg,#f6047b,#c820c5);color:#fff;padding:1.5rem;border-radius:0}.session-timeout-header h2{margin:0;font-size:1.25rem;font-weight:700;letter-spacing:-.01em}.session-timeout-body{padding:1.5rem;text-align:center}.session-timeout-body p{margin:0 0 1rem;color:#1f2937;font-size:.938rem;line-height:1.6;font-weight:500}.session-timeout-body p:last-child{margin-bottom:0}.session-timeout-subtext{color:#6b7280;font-size:.875rem!important;margin-top:.75rem!important;font-weight:400}.session-timeout-timer{border-radius:.75rem;padding:1rem;margin:1rem 0;font-size:1.125rem;color:#1f2937;font-weight:600}.session-timeout-timer strong{color:#f6047b;font-size:1.5rem;font-weight:700;font-family:Courier New,monospace;display:block;margin-top:.5rem}.session-timeout-actions{display:flex;gap:.75rem;padding:0 1.5rem 1.5rem;justify-content:center}.session-timeout-btn{flex:1;padding:.75rem 1.25rem;border:0;border-radius:.75rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .25s ease;text-transform:uppercase;letter-spacing:.05em}.session-timeout-btn:active{transform:scale(.96)}.session-timeout-stay{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 6px -1px #10b98126}.session-timeout-stay:hover{transform:translateY(-2px);box-shadow:0 10px 25px -5px #10b98140}.session-timeout-logout{background:#fff;color:#1f2937;border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#f6047b,#c820c5);background-origin:border-box;background-clip:padding-box,border-box;box-shadow:0 1px 3px #f407801a}.session-timeout-logout:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#f6047b,#c820c5);transform:translateY(-2px);box-shadow:0 10px 25px -5px #f4078026}@media(max-width:480px){.session-timeout-modal{width:95%;max-width:90vw}.session-timeout-header{padding:1rem}.session-timeout-header h2{font-size:1.125rem}.session-timeout-body{padding:1rem}.session-timeout-body p{font-size:.875rem;margin-bottom:.75rem}.session-timeout-actions{flex-direction:column;padding:0 1rem 1rem;gap:.5rem}.session-timeout-btn{width:100%;padding:.625rem 1rem;font-size:.813rem}.session-timeout-timer{font-size:.938rem;padding:.75rem;margin:.75rem 0}.session-timeout-timer strong{font-size:1.25rem;margin-top:.375rem}}
