@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--bg-primary:#f5f5f7;--bg-secondary:#fafafc;--bg-tertiary:#fff;--bg-card:#fff;--bg-card-hover:#fff;--border-color:#00000014;--border-color-subtle:#0000000d;--border-color-card:#e5e5ea;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-tertiary:#86868b;--apple-blue:#0071e3;--apple-blue-hover:#0077ed;--apple-blue-rgb:0, 113, 227;--apple-green:#34c759;--apple-orange:#ff9500;--apple-red:#ff3b30;--apple-purple:#af52de;--apple-yellow:#fc0;--sidebar-width:240px;--header-height:64px;--font-family:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Plus Jakarta Sans", "Outfit", "Segoe UI", Roboto, sans-serif;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-full:9999px;--shadow-sm:0 1px 3px #0000000a;--shadow-md:0 4px 16px #0000000f, 0 1px 3px #00000005;--shadow-lg:0 12px 32px #00000014, 0 2px 6px #00000008;--shadow-modal:0 24px 60px #00000029, 0 4px 12px #0000000d;--transition-fast:.15s cubic-bezier(.16, 1, .3, 1);--transition-normal:.25s cubic-bezier(.16, 1, .3, 1)}[data-theme=dark]{--bg-primary:#202124;--bg-secondary:#292a2d;--bg-tertiary:#303134;--bg-card:#292a2d;--bg-card-hover:#35363a;--border-color:#ffffff1a;--border-color-subtle:#ffffff0f;--border-color-card:#3c4043;--text-primary:#e8eaed;--text-secondary:#9aa0a6;--text-tertiary:#80868b;--apple-blue:#8ab4f8;--apple-blue-hover:#adc8ff;--apple-blue-rgb:138, 180, 248;--apple-green:#81c995;--apple-orange:#fdd663;--apple-red:#f28b82;--apple-purple:#c58af9;--apple-yellow:#fdd663;--shadow-sm:0 1px 3px #00000059;--shadow-md:0 4px 16px #00000073;--shadow-lg:0 12px 32px #0000008c;--shadow-modal:0 24px 60px #000000b3}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;margin:0;padding:0}html{scrollbar-width:none;-ms-overflow-style:none;min-height:100%}body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);min-height:100%;padding:0;padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);-webkit-overflow-scrolling:touch;margin:0}@media (width>=901px){body{zoom:.9}}@media screen and (width<=768px){input[type=text],input[type=password],input[type=email],input[type=number],input[type=search],input[type=tel],input[type=url],select,textarea,.form-input{font-size:16px!important}}html,body{scrollbar-width:none!important;-ms-overflow-style:none!important}::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}.glass{-webkit-backdrop-filter:blur(12px)saturate(160%);border:1px solid var(--border-color);background:#ffffffd9;transform:translateZ(0)}.glass-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast)}@media (hover:hover) and (pointer:fine){.glass-card:hover{box-shadow:var(--shadow-md)}}@media (width<=768px){.glass{-webkit-backdrop-filter:blur(10px)saturate(140%)}.glass-card{transition:none}}.app-container{background-color:var(--bg-primary);width:100%;min-height:100dvh;padding-top:calc(60px + env(safe-area-inset-top,0px));box-sizing:border-box;flex-direction:column;display:flex;position:relative}.app-container.student-app-root{width:100%;max-width:100%;padding-top:0!important}@media (width<=900px){.app-container.student-app-root{padding-top:0!important}}.bg-glow-1,.bg-glow-2{display:none}.main-content{flex:1;width:100%;min-width:0;max-width:1280px;margin:0 auto;padding:32px 28px;overflow:visible}.main-content.student-main-content{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}@media (width<=900px){.main-content{padding:14px 12px;padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.main-content.student-main-content{padding:0!important}}.page-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:28px;padding-bottom:16px;display:flex}@media (width<=600px){.page-header{flex-direction:column;align-items:stretch;gap:14px}.page-header .btn,.page-header button{width:100%}}.page-title{letter-spacing:-.03em;color:var(--text-primary);font-size:1.85rem;font-weight:700}.page-subtitle{color:var(--text-secondary);margin-top:4px;font-size:.92rem;font-weight:400}.btn{border-radius:var(--radius-md);font-family:var(--font-family);cursor:pointer;letter-spacing:-.01em;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:9px 18px;font-size:.88rem;font-weight:600;display:inline-flex}.btn-sm{border-radius:var(--radius-sm);padding:6px 12px;font-size:.8rem}.btn-primary{color:#fff;background:#1d1d1f;box-shadow:0 1px 3px #0000001f}.btn-primary:hover{background:#333336;box-shadow:0 1px 3px #0000001f}.btn-primary:active{background:#1d1d1f}.btn-secondary{color:var(--text-primary);box-shadow:var(--shadow-sm);background:#fff;border:1px solid #d2d2d7}.btn-secondary:hover{background:#f5f5f7;border-color:#c7c7cc}.btn-secondary:active{background:#ebebed}.btn-danger{color:#dc2626;background:#fee2e2;border:1px solid #fecaca}.btn-danger:hover{color:#b91c1c;background:#fca5a5}.btn-danger:active{background:#f87171}.form-group{margin-bottom:18px}.form-label{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.form-input{border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-family:var(--font-family);transition:all var(--transition-fast);background:#fff;border:1px solid #d2d2d7;padding:10px 14px;font-size:.92rem}.form-input:focus{border-color:var(--apple-blue);outline:none;box-shadow:0 0 0 4px #0071e324}.toast-container{bottom:calc(28px + env(safe-area-inset-bottom));right:max(28px, env(safe-area-inset-right));z-index:9999;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed}.toast{pointer-events:auto;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(20px)saturate(180%);min-width:280px;box-shadow:var(--shadow-lg);color:var(--text-primary);background:#ffffffeb;border:1px solid #00000014;align-items:center;gap:12px;padding:12px 18px;font-size:.88rem;font-weight:600;display:flex}.toast-success{border-left:4px solid var(--apple-green)}.toast-error{border-left:4px solid var(--apple-red)}.toast-info{border-left:4px solid var(--apple-blue)}@media (width<=680px){.toast-container{bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:100002;align-items:center;left:16px;right:16px}.toast{min-width:unset;border-radius:var(--radius-full);justify-content:center;width:100%;max-width:380px;box-shadow:0 4px 20px #00000026}}.modal-overlay{-webkit-backdrop-filter:blur(12px);z-index:2000;box-sizing:border-box;background:#00000061;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out forwards modalBackdropFadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-content{box-sizing:border-box;border-radius:var(--radius-xl);width:100%;max-width:480px;box-shadow:var(--shadow-modal);background:#fff;border:1px solid #00000014;max-height:calc(100dvh - 50px);margin:auto;padding:28px 24px 22px;animation:.25s cubic-bezier(.16,1,.3,1) forwards modalScaleIn;position:relative;overflow-y:auto}.modal-close-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-full);width:32px;height:32px;transition:all var(--transition-fast);z-index:20;background:#f5f5f7;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:14px;right:14px}.modal-close-btn:hover{color:var(--text-primary);background:#e5e5ea}.modal-close-btn:active{background:#d1d1d6}@media (width<=900px){.modal-overlay{padding:12px;padding-bottom:calc(85px + env(safe-area-inset-bottom,0px))}.modal-content{border-radius:var(--radius-lg);max-width:100%;padding:22px 18px 16px}}.avatar-tabs-header{border-radius:var(--radius-sm);background:#f5f5f7;border:1px solid #0000000a;margin-bottom:12px;padding:3px;display:flex}.avatar-tab-btn{font-family:var(--font-family);cursor:pointer;transition:all var(--transition-fast);color:var(--text-secondary);background:0 0;border:none;border-radius:6px;flex:1;padding:7px 12px;font-size:.8rem;font-weight:600}.avatar-tab-btn:hover{color:var(--text-primary)}.avatar-tab-btn.active{color:var(--text-primary);background:#fff;box-shadow:0 1px 4px #00000014}@keyframes modalBackdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-title{letter-spacing:-.02em;border-bottom:1px solid var(--border-color);color:var(--text-primary);margin-bottom:16px;padding-bottom:12px;font-size:1.25rem;font-weight:700}.modal-actions{border-top:1px solid var(--border-color);gap:10px;margin-top:22px;padding-top:14px;display:flex}.modal-actions .btn{flex:1}.avatar-gallery-picker-grid{border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;background:#f5f5f7;border:1px solid #0000000a;grid-template-columns:repeat(5,1fr);gap:8px;max-height:220px;padding:8px;display:grid;overflow-y:auto}@media (width<=480px){.avatar-gallery-picker-grid{grid-template-columns:repeat(4,1fr);gap:6px;max-height:190px}}.avatar-gallery-item-btn{aspect-ratio:1;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);content-visibility:auto;contain-intrinsic-size:60px 60px;background:#fff;border:2.5px solid #0000;justify-content:center;align-items:center;padding:0;display:flex;position:relative;overflow:hidden}.avatar-gallery-item-btn:hover{box-shadow:var(--shadow-md)}.avatar-gallery-item-btn.selected{border-color:var(--apple-blue);box-shadow:0 0 0 2px #0071e359}.gallery-thumb-img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.gallery-selected-badge{background:var(--apple-blue);color:#fff;z-index:2;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;top:3px;right:3px;box-shadow:0 1px 4px #0000004d}.student-svg-picker-grid{border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;background:#f5f5f7;border:1px solid #0000000a;grid-template-columns:repeat(6,1fr);gap:8px;max-height:220px;padding:8px;display:grid;overflow-y:auto}@media (width<=480px){.student-svg-picker-grid{grid-template-columns:repeat(4,1fr);gap:6px;max-height:190px}}.student-svg-btn{aspect-ratio:1;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-fast);background:#fff;border:2px solid #0000;justify-content:center;align-items:center;padding:6px;display:flex}.student-svg-btn:hover{box-shadow:var(--shadow-md)}.student-svg-btn.selected{border-color:var(--apple-blue);background:#fff;box-shadow:0 0 0 2px #0071e359}.emoji-picker-grid{border-radius:var(--radius-md);background:#f5f5f7;border:1px solid #0000000a;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:6px;padding:8px;display:grid}.emoji-btn{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:#fff;border:1px solid #0000;justify-content:center;align-items:center;padding:6px;font-size:1.3rem;display:flex}.emoji-btn:hover{box-shadow:var(--shadow-sm)}.emoji-btn.selected{color:#fff;background:#1d1d1f}.color-picker-grid{border-radius:var(--radius-md);background:#f5f5f7;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:10px;padding:8px;display:grid}.color-btn{aspect-ratio:1;cursor:pointer;transition:all var(--transition-fast);border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #0000001a}.color-btn:hover{box-shadow:0 0 0 2px #0071e359}.color-btn.selected{box-shadow:0 0 0 2.5px var(--apple-blue)}.quick-tags-picker{border-radius:var(--radius-md);background:#f5f5f7;flex-wrap:wrap;gap:8px;padding:10px;display:flex}.quick-tag-bubble{color:var(--text-primary);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);background:#fff;border:1px solid #00000014;padding:6px 14px;font-size:.82rem;font-weight:600}.quick-tag-bubble:hover{color:#fff;background:#1d1d1f;border-color:#1d1d1f}.quick-tag-bubble:active{background:#333336}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;display:grid}.avatar-circle{border-radius:var(--radius-md);width:44px;height:44px;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;font-size:1.3rem;font-weight:700;display:flex}.badge{border-radius:var(--radius-full);letter-spacing:-.01em;color:var(--text-primary);background:#f5f5f7;border:1px solid #0000000f;align-items:center;padding:4px 10px;font-size:.76rem;font-weight:600;display:inline-flex}.logo-badge{color:#fff;border-radius:var(--radius-full);letter-spacing:.02em;transition:background-color var(--transition-fast), color var(--transition-fast);background:#1d1d1f;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-block}.login-wrapper{background-color:var(--bg-primary);z-index:10000;justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:24px 16px;display:flex;position:relative;overflow-y:auto}.login-card{border-radius:var(--radius-xl);width:90%;max-width:420px;box-shadow:var(--shadow-lg);background:#fff;border:1px solid #00000014;padding:44px 36px}.login-title{letter-spacing:-.03em;text-align:center;color:var(--text-primary);margin-bottom:6px;font-size:2.1rem;font-weight:700}.login-subtitle{color:var(--text-secondary);text-align:center;margin-bottom:32px;font-size:.9rem;font-weight:400}.password-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.password-input{padding-right:48px}.password-toggle-btn{cursor:pointer;color:var(--text-secondary);transition:transform var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;font-size:1.15rem;display:flex;position:absolute;right:12px}.login-error-text{color:var(--apple-red);border-radius:var(--radius-sm);background:#fee2e2;border:1px solid #fecaca;margin-top:10px;padding:8px 12px;font-size:.82rem;font-weight:600}.login-btn{width:100%;margin-top:18px;padding:12px 18px;font-size:.95rem}.sync-indicator{top:max(16px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(16px);box-shadow:var(--shadow-sm);color:var(--text-primary);border-radius:var(--radius-full);z-index:9998;background:#ffffffe6;border:1px solid #00000014;align-items:center;gap:8px;padding:6px 14px;font-size:.76rem;font-weight:600;animation:.2s forwards pageFadeIn;display:flex;position:fixed;right:20px}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.sync-dot{background:var(--apple-green);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.2s ease-in-out infinite pulseDot}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page-fade-in{animation:.2s forwards pageFadeIn}*{-webkit-tap-highlight-color:transparent}button,a,[role=button]{touch-action:manipulation}button:focus,a:focus,input:focus,select:focus,textarea:focus,[role=button]:focus{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--apple-blue);outline-offset:2px}.scale-active{transition:opacity .12s}.scale-active:active{opacity:.85}.full-screen-loader{box-sizing:border-box;-webkit-backdrop-filter:blur(20px);z-index:99999;background:#f5f5f7d9;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;min-height:100dvh;margin:0;padding:0;display:flex;position:fixed;inset:0}.loader-spinner{border:3px solid #00000014;border-top-color:#1d1d1f;border-radius:50%;flex-shrink:0;width:44px;height:44px;margin-bottom:16px;animation:.8s linear infinite spin}.loader-text{font-family:var(--font-family);color:var(--text-secondary);letter-spacing:-.01em;text-align:center;margin:0;font-size:.95rem;font-weight:600;animation:1.5s ease-in-out infinite pulse}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}[data-theme=dark] body{background-color:var(--bg-primary);color:var(--text-primary)}[data-theme=dark] .glass{border-color:var(--border-color);background:#292a2dd9}[data-theme=dark] .glass-card{background:var(--bg-card);border-color:var(--border-color);box-shadow:var(--shadow-sm)}@media (hover:hover) and (pointer:fine){[data-theme=dark] .glass-card:hover{box-shadow:var(--shadow-md)}}[data-theme=dark] .btn-primary{color:#202124;background:#e8eaed;box-shadow:0 1px 3px #0006}[data-theme=dark] .btn-primary:hover{background:#fff;box-shadow:0 4px 12px #00000080}[data-theme=dark] .btn-secondary{color:#e8eaed;box-shadow:var(--shadow-sm);background:#303134;border-color:#494c50}[data-theme=dark] .btn-secondary:hover{background:#3c4043;border-color:#5f6368}[data-theme=dark] .btn-danger{color:#f28b82;background:#f28b8226;border-color:#f28b824d}[data-theme=dark] .btn-danger:hover{color:#f6aea9;background:#f28b8240}.theme-toggle-btn{border-radius:var(--radius-md);cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);justify-content:center;align-items:center;padding:0;display:inline-flex}[data-theme=dark] .theme-toggle-btn{color:#fdd663;background:#303134;border-color:#494c50}[data-theme=dark] .theme-toggle-btn:hover{color:#ffe082;background:#3c4043}[data-theme=dark] .form-input,[data-theme=dark] input[type=text],[data-theme=dark] input[type=number],[data-theme=dark] input[type=password],[data-theme=dark] input[type=date],[data-theme=dark] select,[data-theme=dark] textarea{color:#e8eaed;background:#303134;border-color:#494c50}[data-theme=dark] .form-input:focus,[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px #8ab4f840}[data-theme=dark] .form-label{color:var(--text-primary)}[data-theme=dark] .modal-overlay{background:#000000b3}[data-theme=dark] .modal-content{color:var(--text-primary);background:#292a2d;border-color:#3c4043;box-shadow:0 24px 60px #000000bf}[data-theme=dark] .modal-close-btn{color:#9aa0a6;background:#35363a}[data-theme=dark] .modal-close-btn:hover{color:#e8eaed;background:#3c4043}[data-theme=dark] .modal-title{color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] .modal-actions{border-color:var(--border-color)}[data-theme=dark] .avatar-tabs-header,[data-theme=dark] .avatar-gallery-picker-grid,[data-theme=dark] .student-svg-picker-grid,[data-theme=dark] .emoji-picker-grid,[data-theme=dark] .color-picker-grid,[data-theme=dark] .quick-tags-picker{background:#202124;border-color:#3c4043}[data-theme=dark] .avatar-tab-btn{color:var(--text-secondary)}[data-theme=dark] .avatar-tab-btn:hover{color:var(--text-primary)}[data-theme=dark] .avatar-tab-btn.active{color:#e8eaed;background:#303134;box-shadow:0 1px 4px #0006}[data-theme=dark] .avatar-gallery-item-btn,[data-theme=dark] .student-svg-btn,[data-theme=dark] .emoji-btn{background:#292a2d;border-color:#0000}[data-theme=dark] .avatar-gallery-item-btn:hover,[data-theme=dark] .student-svg-btn:hover,[data-theme=dark] .emoji-btn:hover{background:#35363a}[data-theme=dark] .avatar-gallery-item-btn.selected,[data-theme=dark] .student-svg-btn.selected{border-color:var(--apple-blue);background:#303134;box-shadow:0 0 0 2px #8ab4f866}[data-theme=dark] .emoji-btn.selected{color:#202124;background:#8ab4f8}[data-theme=dark] .quick-tag-bubble{color:#e8eaed;background:#292a2d;border-color:#3c4043}[data-theme=dark] .quick-tag-bubble:hover{color:#202124;background:#8ab4f8;border-color:#8ab4f8}[data-theme=dark] .color-btn{border-color:#202124;box-shadow:0 0 0 1px #ffffff26}[data-theme=dark] .badge{color:#e8eaed;background:#303134;border-color:#3c4043}[data-theme=dark] .toast{color:#e8eaed;box-shadow:var(--shadow-lg);background:#292a2df2;border-color:#3c4043}[data-theme=dark] .sync-indicator{color:#e8eaed;background:#292a2deb;border-color:#3c4043}[data-theme=dark] .full-screen-loader{background:#202124e6}[data-theme=dark] .loader-spinner{border-color:#8ab4f8 #ffffff1f #ffffff1f}[data-theme=dark] .loader-text{color:var(--text-secondary)}.app-navbar{z-index:1000;-webkit-backdrop-filter:blur(12px)saturate(160%);width:100%;padding-top:env(safe-area-inset-top,0px);box-sizing:border-box;background:#ffffffd9;border-bottom:1px solid #00000014;position:fixed;top:0;left:0;right:0;transform:translate(0,0)}.navbar-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1280px;margin:0 auto;padding:12px 24px;display:flex}.navbar-brand-section{cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;display:flex}.navbar-logo-text{letter-spacing:-.02em;color:var(--text-primary);align-items:center;gap:8px;margin:0;font-size:1.15rem;font-weight:700;display:flex}.logo-badge{color:#fff;border-radius:var(--radius-full);letter-spacing:.02em;transition:background-color var(--transition-fast), color var(--transition-fast);background:#1d1d1f;padding:2px 8px;font-size:.72rem;font-weight:700}.admin-nav-role-badge{color:#fff;border-radius:var(--radius-full);letter-spacing:.02em;background:#8b5cf6;padding:2px 8px;font-size:.72rem;font-weight:700}.student-header-actions,.teacher-header-actions{align-items:center;gap:8px;display:flex}.student-logout-btn{font-family:var(--font-family);color:#dc2626;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:#fee2e2;border:1px solid #fecaca;align-items:center;gap:6px;padding:7px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.student-logout-btn:hover{background:#fca5a5}.navbar-nav-desktop{border-radius:var(--radius-md);background:#f5f5f7;border:1px solid #0000000a;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;padding:4px;display:flex}.nav-item-btn{border-radius:var(--radius-sm);font-family:var(--font-family);color:var(--text-secondary);letter-spacing:-.01em;cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:7px;padding:7px 14px;font-size:.84rem;font-weight:600;display:inline-flex}.nav-item-btn:hover{color:var(--text-primary);background:#0000000a}.nav-item-btn.active{color:var(--text-primary);background:#fff;box-shadow:0 1px 4px #00000014}.nav-item-btn.nav-item-icon-only{padding:7px 10px}.nav-icon{justify-content:center;align-items:center;display:flex}.landing-nav-login-btn{font-family:var(--font-family);border-radius:var(--radius-md);justify-content:center;align-items:center;padding:7px 16px;font-size:.84rem;font-weight:600;display:inline-flex}.navbar-settings-btn{display:none}@media (width<=900px){.navbar-nav-desktop{display:none}.navbar-inner{padding:10px 16px}.navbar-settings-btn{border-radius:var(--radius-md);cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.navbar-settings-btn:hover{color:var(--text-primary)}.navbar-settings-btn.active{color:#fff;background:#1d1d1f;border-color:#1d1d1f}}[data-theme=dark] .app-navbar{-webkit-backdrop-filter:blur(16px)saturate(180%);background:#202124e0;border-bottom:1px solid #3c4043}[data-theme=dark] .app-navbar .navbar-logo-text{color:#e8eaed}[data-theme=dark] .app-navbar .logo-badge{color:#e8eaed;background:#3c4043}[data-theme=dark] .app-navbar .navbar-nav-desktop{background:#202124;border-color:#3c4043}[data-theme=dark] .app-navbar .nav-item-btn{color:#9aa0a6}.navbar-logo-text{color:var(--text-primary);font-family:var(--font-family);-webkit-user-select:none;user-select:none}[data-theme=dark] .logo-badge{color:#e8eaed;background:#3c4043}.mobile-menu-overlay{z-index:9999999!important;pointer-events:auto!important;flex-direction:column!important;width:100%!important;height:100%!important;min-height:100dvh!important;display:flex!important;position:fixed!important;inset:0!important;overflow:hidden!important}@media (width>=768px){.mobile-menu-overlay{display:none!important}}[data-theme=dark] .nav-item-btn:hover{color:#e8eaed;background:#ffffff0f}[data-theme=dark] .nav-item-btn.active{color:#fff;background:#3c4043;box-shadow:0 1px 4px #00000040}[data-theme=dark] .student-logout-btn{color:#f87171;background:#ef444426;border-color:#ef44444d}[data-theme=dark] .student-logout-btn:hover{color:#fca5a5;background:#ef444440}[data-theme=dark] .app-navbar .theme-toggle-btn{color:#fdd663;background:#202124;border-color:#3c4043}[data-theme=dark] .app-navbar .theme-toggle-btn:hover{color:#ffe082;background:#303134;border-color:#fff3}[data-theme=dark] .app-navbar .navbar-settings-btn{color:#9aa0a6;background:#202124;border-color:#3c4043}[data-theme=dark] .app-navbar .navbar-settings-btn:hover{color:#e8eaed;background:#303134;border-color:#fff3}[data-theme=dark] .app-navbar .navbar-settings-btn.active{color:#fff;background:#3c4043;border-color:#5f6368;box-shadow:0 1px 4px #0000004d}[data-theme=dark] .mobile-bottom-navbar{background:#292a2df2;border-color:#3c4043}[data-theme=dark] .mobile-tab-btn{color:var(--text-secondary)}[data-theme=dark] .mobile-tab-btn.active{color:#8ab4f8}[data-theme=dark] .tab-control-brutalist{background:#202124;border-color:#3c4043}[data-theme=dark] .tab-btn-brutalist{color:var(--text-secondary)}[data-theme=dark] .tab-btn-brutalist:hover{color:var(--text-primary)}[data-theme=dark] .tab-btn-brutalist.active{color:#e8eaed;background:#303134;font-weight:600;box-shadow:0 1px 4px #0006}[data-theme=dark] .filters-toolbar{background:#292a2d;border-color:#3c4043}[data-theme=dark] .student-scope-toggle,[data-theme=dark] .timeframe-toggle,[data-theme=dark] .segmented-control{background:#202124;border-color:#3c4043}[data-theme=dark] .student-scope-btn,[data-theme=dark] .toggle-btn,[data-theme=dark] .seg-btn{color:var(--text-secondary)}[data-theme=dark] .student-scope-btn:hover,[data-theme=dark] .toggle-btn:hover,[data-theme=dark] .seg-btn:hover{color:var(--text-primary)}[data-theme=dark] .student-scope-btn.active,[data-theme=dark] .toggle-btn.active,[data-theme=dark] .seg-btn.active{color:#e8eaed;background:#303134;font-weight:600;box-shadow:0 1px 4px #0006}[data-theme=dark] .filter-select-btn{color:#e8eaed;background:#303134;border-color:#494c50}[data-theme=dark] .custom-dropdown-list{box-shadow:var(--shadow-lg);background:#292a2d;border-color:#3c4043}[data-theme=dark] .custom-dropdown-item{color:var(--text-primary);border-bottom-color:#ffffff0d}[data-theme=dark] .custom-dropdown-item:hover,[data-theme=dark] .custom-dropdown-item.active{color:#8ab4f8;background:#35363a}[data-theme=dark] .standings-card{background:#292a2d;border-color:#3c4043}[data-theme=dark] .standings-header{color:var(--text-secondary);background:#202124;border-bottom-color:#3c4043}[data-theme=dark] .standings-row{border-bottom-color:#ffffff0d}[data-theme=dark] .standings-row:hover{background:#303134}[data-theme=dark] .row-rank-1{background:#fdd66314!important}[data-theme=dark] .row-rank-1:hover{background:#fdd66324!important}[data-theme=dark] .rank-badge{color:var(--text-primary);background:#303134}[data-theme=dark] .rank-gold{color:#202124;background:#fdd663}[data-theme=dark] .rank-silver{color:#202124;background:#bdc1c6}[data-theme=dark] .rank-bronze{color:#fff;background:#cd7f32}[data-theme=dark] .profile-modal{color:#e8eaed;background:#292a2d}[data-theme=dark] .profile-stat-box{background:#202124;border-color:#3c4043}[data-theme=dark] .dashboard-hero,[data-theme=dark] .stat-card,[data-theme=dark] .card-spotlight,[data-theme=dark] .dashboard-card{background:#292a2d;border-color:#3c4043}[data-theme=dark] .stat-icon-wrapper{background:#202124}[data-theme=dark] .spotlight-card-item{background:#202124;border-color:#3c4043}[data-theme=dark] .group-card-modern{box-shadow:var(--shadow-sm);border-color:#3c4043}[data-theme=dark] .group-card-badge{background:#ffffff0f;border-color:#ffffff14}[data-theme=dark] .group-stat-pill{color:var(--text-secondary);background:#202124;border-color:#3c4043}[data-theme=dark] .group-action-btn{color:var(--text-secondary);background:#303134;border-color:#494c50}[data-theme=dark] .group-action-btn:hover{color:var(--text-primary);background:#3c4043}[data-theme=dark] .student-card-modern{background:#292a2d;border-color:#3c4043}[data-theme=dark] .student-card-modern:hover{border-color:#5f6368}[data-theme=dark] .btn-points-action{color:var(--text-primary);background:#303134;border-color:#494c50}[data-theme=dark] .btn-points-action:hover{background:#3c4043}[data-theme=dark] .attendance-card,[data-theme=dark] .attendance-table-container{background:#292a2d;border-color:#3c4043}[data-theme=dark] .attendance-table-header{color:var(--text-secondary);background:#202124;border-bottom-color:#3c4043}[data-theme=dark] .attendance-table-row{border-bottom-color:#ffffff0d}[data-theme=dark] .attendance-table-row:hover{background:#303134}[data-theme=dark] .status-btn{color:var(--text-secondary);background:#303134;border-color:#494c50}[data-theme=dark] .status-btn.present{color:#81c995;background:#81c99526;border-color:#81c9954d}[data-theme=dark] .status-btn.absent{color:#f28b82;background:#f28b8226;border-color:#f28b824d}[data-theme=dark] .status-btn.late{color:#fdd663;background:#fdd66326;border-color:#fdd6634d}[data-theme=dark] .date-nav-btn{color:#e8eaed;background:#303134;border-color:#494c50}[data-theme=dark] .date-nav-btn:hover{background:#3c4043}[data-theme=dark] .attendance-summary-card{background:#202124;border-color:#3c4043}[data-theme=dark] .history-card{background:#292a2d;border-color:#3c4043}[data-theme=dark] .history-table-header{color:var(--text-secondary);background:#202124;border-bottom-color:#3c4043}[data-theme=dark] .history-row-item{border-bottom-color:#ffffff0d}[data-theme=dark] .history-row-item:hover{background:#303134}[data-theme=dark] .settings-card,[data-theme=dark] .settings-hero{background:#292a2d;border-color:#3c4043}[data-theme=dark] .tag-card-modern,[data-theme=dark] .trash-item-card,[data-theme=dark] .snapshot-item-card{background:#202124;border-color:#3c4043}[data-theme=dark] .tag-card-modern:hover,[data-theme=dark] .trash-item-card:hover{background:#292a2d}.theme-selector-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin-top:14px;display:grid}@media (width<=600px){.theme-selector-grid{grid-template-columns:1fr}}.theme-option-card{border:2px solid var(--border-color-card);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:#fff;flex-direction:column;gap:10px;padding:14px;display:flex}.theme-option-card:hover{border-color:var(--apple-blue)}.theme-option-card.active{border-color:var(--apple-blue);box-shadow:0 0 0 2px rgba(var(--apple-blue-rgb), .25);background:#fafafc}[data-theme=dark] .theme-option-card{background:#202124;border-color:#3c4043}[data-theme=dark] .theme-option-card.active{background:#303134;border-color:#8ab4f8;box-shadow:0 0 0 2px #8ab4f84d}.theme-preview-box{border:1px solid #00000014;border-radius:8px;flex-direction:column;gap:4px;height:68px;padding:6px;display:flex}.theme-preview-box.light-preview{background:#f5f5f7}.theme-preview-box.light-preview .preview-header{background:#fff;border:1px solid #e5e5ea;border-radius:4px;height:14px}.theme-preview-box.light-preview .preview-body{background:#fff;border:1px solid #e5e5ea;border-radius:4px;flex:1}.theme-preview-box.dark-preview{background:#202124;border-color:#3c4043}.theme-preview-box.dark-preview .preview-header{background:#292a2d;border:1px solid #3c4043;border-radius:4px;height:14px}.theme-preview-box.dark-preview .preview-body{background:#292a2d;border:1px solid #3c4043;border-radius:4px;flex:1}.theme-option-info{justify-content:space-between;align-items:center;display:flex}.theme-option-name{color:var(--text-primary);font-size:.9rem;font-weight:700}.landing-header{z-index:1000;width:100%;padding-top:env(safe-area-inset-top,0px);box-sizing:border-box;position:fixed;top:0;left:0;right:0;transform:translate(0,0)}.landing-header-inner{box-sizing:border-box;justify-content:space-between;align-items:center;min-height:60px;display:flex}.login-page-apple{padding-top:calc(60px + env(safe-area-inset-top,0px));box-sizing:border-box}.landing-main-split{min-height:calc(100vh - 60px - 45px - env(safe-area-inset-top,0px));flex:1;display:flex}.landing-left-panel{background-color:var(--bg-primary)}.landing-right-panel{border-left:1px solid var(--border-color);background-color:#fff}@media (width<=1023px){.landing-right-panel{border-left:none;border-top:1px solid var(--border-color)}}.landing-feature-card{box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast);background:#fff;border:1px solid #0000000f}.landing-feature-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.landing-support-divider{border-top:1px solid #00000014}.landing-footer{border-top:1px solid var(--border-color);color:var(--text-secondary)}.landing-footer-link{color:var(--text-secondary);transition:color var(--transition-fast);text-decoration:none}.landing-footer-link:hover{color:var(--text-primary)}[data-theme=dark] .login-page-apple{color:#e8eaed!important;background-color:#202124!important}[data-theme=dark] .login-card{background:#292a2d;border-color:#3c4043}[data-theme=dark] .login-title{color:#e8eaed}[data-theme=dark] .login-subtitle{color:#9aa0a6}[data-theme=dark] .login-page-apple .bg-white{background-color:#292a2d!important;border-color:#3c4043!important}[data-theme=dark] .login-page-apple .text-gray-900{color:#e8eaed!important}[data-theme=dark] .login-page-apple .text-gray-500{color:#9aa0a6!important}[data-theme=dark] .landing-left-panel{background-color:#202124!important}[data-theme=dark] .landing-right-panel{background-color:#292a2d!important;border-color:#3c4043!important}@media (width<=1023px){[data-theme=dark] .landing-right-panel{border-color:#3c4043!important}}[data-theme=dark] .landing-feature-card{box-shadow:var(--shadow-sm);background:#292a2d;border-color:#3c4043}[data-theme=dark] .landing-support-divider{border-top-color:#3c4043}[data-theme=dark] .login-error-text{color:#f28b82;background:#f28b8226;border-color:#f28b824d}[data-theme=dark] .login-page-apple footer,[data-theme=dark] .landing-footer{border-color:#3c4043}@keyframes loginShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.login-bg-grid{background-image:repeating-linear-gradient(-45deg,#0000,#0000 100px,#0000000d 100px 101.5px)}[data-theme=dark] .login-bg-grid{background-image:repeating-linear-gradient(-45deg,#0000,#0000 100px,#ffffff0a 100px 101.5px)}@keyframes slideDownNotice{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-slide-down{animation:.28s cubic-bezier(.16,1,.3,1) forwards slideDownNotice}:root{--stack-base-top:calc(76px + env(safe-area-inset-top,0px));--stack-step-y:8px;--stack-gap:32vh}.landing-root{width:100%;max-width:100%;position:relative;overflow-x:clip}.landing-root ::selection{color:#fff!important;background-color:#0071e3!important}.landing-root ::selection{color:#fff!important;background-color:#0071e3!important}:root{--stack-base-top:calc(80px + env(safe-area-inset-top,0px));--stack-step-y:8px;--stack-gap:25vh;--stack-end-spacer:40vh}.stacking-cards-container{width:100%;display:flow-root;position:relative}@keyframes fadeInBackdrop{0%{opacity:0}to{opacity:1}}@keyframes slideDownDrawer{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.2s ease-out forwards fadeInBackdrop}.animate-drawer-down{animation:.25s cubic-bezier(.16,1,.3,1) forwards slideDownDrawer}@media (width<=767px){.stacking-card-item{will-change:transform;margin-bottom:var(--stack-gap,25vh)!important;position:sticky!important}.stacking-card-frame{transform-origin:top;will-change:transform;transition:transform .2s,border-color .2s;height:calc(100dvh - 150px)!important;min-height:320px!important;max-height:540px!important}}@media (width>=768px){:root{--stack-base-top:calc(80px + env(safe-area-inset-top,0px));--stack-step-y:10px;--stack-gap:35vh;--stack-end-spacer:50vh}.stacking-card-item{will-change:transform;margin-bottom:var(--stack-gap,35vh)!important;position:sticky!important}.stacking-card-frame{transform-origin:top;will-change:transform;transition:transform .2s,border-color .2s}.stacking-card-frame:hover{border-color:#ffffff59}}@media (width>=1024px){:root{--stack-base-top:calc(88px + env(safe-area-inset-top,0px));--stack-step-y:10px;--stack-gap:34vh;--stack-end-spacer:50vh}}@media (width>=1200px){:root{--stack-base-top:calc(92px + env(safe-area-inset-top,0px));--stack-step-y:12px;--stack-gap:32vh;--stack-end-spacer:50vh}}@media (width>=1536px){:root{--stack-base-top:calc(100px + env(safe-area-inset-top,0px));--stack-step-y:14px;--stack-gap:30vh;--stack-end-spacer:50vh}}@keyframes slideInRightDrawer{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeBackdropIn{0%{opacity:0}to{opacity:1}}.animate-drawer-right{animation:.28s cubic-bezier(.16,1,.3,1) forwards slideInRightDrawer}.animate-backdrop-in{animation:.22s ease-out forwards fadeBackdropIn}html{scroll-padding-top:80px}@media (width<=680px){html{scroll-padding-top:72px}}.account-section-card,.account-hero-card,#account-student-list-section,#account-avatar-picker-section,#account-groups-section,#student-attendance-calendar,.student-schedule-wrap,.student-calendar-card{scroll-margin-top:80px}@media (width<=680px){.account-section-card,.account-hero-card,#account-student-list-section,#account-avatar-picker-section,#account-groups-section,#student-attendance-calendar,.student-schedule-wrap,.student-calendar-card{scroll-margin-top:72px}}.student-portal-wrapper{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex-direction:column;width:100%;min-height:100vh;display:flex}.student-portal-container{box-sizing:border-box;width:100%;max-width:860px;margin:0 auto;padding:16px 14px 78px}@media (width<=480px){.student-portal-container{padding:10px 10px 70px}}@media (width>=901px){.student-portal-container{padding-top:20px;padding-bottom:40px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.animate-fadeIn{animation:.24s cubic-bezier(.16,1,.3,1) forwards fadeIn}.animate-slideUpSheet{animation:.28s cubic-bezier(.16,1,.3,1) forwards slideUpSheet}.animate-backdropFadeIn{animation:.2s cubic-bezier(.16,1,.3,1) forwards modalBackdropFadeIn}.animate-slideDown{animation:.2s cubic-bezier(.16,1,.3,1) forwards slideDown}.animate-shake{animation:.35s ease-in-out shake}.student-navbar{z-index:90;background:var(--bg-card);border-bottom:1px solid var(--border-color);width:100%;position:sticky;top:0;box-shadow:none!important;border-radius:0!important;margin:0!important;padding:0!important}[data-theme=dark] .student-navbar{background:var(--bg-card);border-bottom-color:var(--border-color)}.student-navbar-inner{box-sizing:border-box;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:12px 24px;display:flex}@media (width<=680px){.student-navbar-inner{gap:8px;padding:10px 16px}}.navbar-brand-col{align-items:center;min-width:0;display:flex}.navbar-brand-btn{cursor:pointer;background:0 0;border:none;outline:none;align-items:center;margin:0;padding:0;text-decoration:none;transition:none;display:inline-flex}.navbar-brand-btn:hover,.navbar-brand-btn:active{opacity:1;background:0 0;transform:none}.navbar-brand-btn .navbar-logo-text{letter-spacing:-.02em;color:var(--text-primary);align-items:center;gap:8px;margin:0;font-size:1.15rem;font-weight:700;display:flex}.navbar-brand-btn .logo-badge{color:#fff;letter-spacing:.02em;background:#1d1d1f;border-radius:9999px;padding:2px 8px;font-size:.72rem;font-weight:700}[data-theme=dark] .navbar-brand-btn .logo-badge{color:#1d1d1f;background:#fff}.navbar-desktop-nav{display:none}@media (width>=901px){.student-navbar-inner{grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.navbar-brand-col{justify-self:start}.navbar-desktop-nav{justify-self:center;align-items:center;display:flex}.navbar-actions-row{justify-self:end}}.desktop-segmented-control{background:#0000000d;border-radius:9999px;align-items:center;gap:2px;padding:3px;display:inline-flex}[data-theme=dark] .desktop-segmented-control{background:#ffffff14}.desktop-nav-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:9999px;align-items:center;gap:6px;padding:7px 18px;font-size:.88rem;font-weight:500;transition:none;display:inline-flex}.desktop-nav-btn:hover{color:var(--text-secondary);background:0 0}.desktop-nav-btn.active{background:var(--bg-card);color:var(--text-primary);font-weight:600;box-shadow:0 1px 3px #00000014}[data-theme=dark] .desktop-nav-btn.active{color:#fff;background:#303134;box-shadow:0 1px 3px #0000004d}.desktop-nav-btn.active:hover{color:var(--text-primary);background:var(--bg-card)}[data-theme=dark] .desktop-nav-btn.active:hover{color:#fff;background:#303134}.navbar-actions-row{flex-shrink:0;align-items:center;gap:8px;display:flex}.navbar-profile-pill{background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;box-sizing:border-box;border-radius:9999px;align-items:center;gap:8px;height:38px;min-height:38px;max-height:38px;padding:4px 12px 4px 5px;transition:none;display:inline-flex}.navbar-profile-pill:hover,.navbar-profile-pill:active{background:var(--bg-card);border-color:var(--border-color);transform:none}.navbar-avatar-circle{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;overflow:hidden}.navbar-avatar-circle.unpinned{color:var(--apple-blue);background:#0071e31a;border-color:#0071e333}.navbar-profile-info{align-items:center;gap:6px;display:flex}.navbar-user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:90px;font-size:.84rem;font-weight:600;overflow:hidden}.navbar-likes-pill{color:#d97706;background:#f59e0b1f;border-radius:9999px;align-items:center;gap:3px;padding:2px 7px;font-size:.76rem;font-weight:700;display:inline-flex}[data-theme=dark] .navbar-likes-pill{color:#fbbf24;background:#f59e0b38}.navbar-unpinned-text{color:var(--apple-blue);white-space:nowrap;font-size:.82rem;font-weight:600}.navbar-icon-btn{background:var(--bg-card);border:1px solid var(--border-color);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:none;display:inline-flex}.navbar-icon-btn:hover,.navbar-icon-btn:active{color:var(--text-secondary);background:var(--bg-card);border-color:var(--border-color);transform:none}.student-mobile-dock{z-index:1000;pointer-events:none;padding:0 12px max(8px, env(safe-area-inset-bottom,8px));display:block;position:fixed;bottom:0;left:0;right:0}@media (width>=901px){.student-mobile-dock{display:none}}.mobile-dock-inner{pointer-events:auto;-webkit-backdrop-filter:blur(24px)saturate(180%);background:#ffffffe0;border:1px solid #00000014;border-radius:20px;grid-template-columns:repeat(4,1fr);gap:3px;max-width:400px;margin:0 auto;padding:4px 6px;display:grid;box-shadow:0 6px 24px #0000001a,0 2px 6px #0000000a}[data-theme=dark] .mobile-dock-inner{background:#1e1f23eb;border-color:#ffffff1a;box-shadow:0 6px 24px #0006}.dock-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:42px;padding:5px 2px 4px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.dock-tab-btn:active{transform:scale(.92)}.dock-tab-btn.active{color:var(--apple-blue);background:#0071e314}[data-theme=dark] .dock-tab-btn.active{color:#8ab4f8;background:#8ab4f81f}.dock-tab-icon{justify-content:center;align-items:center;width:20px;height:20px;transition:transform .2s cubic-bezier(.16,1,.3,1);display:flex}.dock-tab-icon svg{width:19px;height:19px}.dock-tab-btn.active .dock-tab-icon{transform:translateY(-1px)}.dock-tab-label{letter-spacing:-.1px;font-size:.65rem;font-weight:600;line-height:1}.dock-tab-btn.active .dock-tab-label{font-weight:700}.home-welcome-hero{background:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;margin-bottom:12px;padding:16px 18px;box-shadow:0 4px 16px #0000000a}[data-theme=dark] .home-welcome-hero{box-shadow:0 4px 16px #00000040}@media (width<=480px){.home-welcome-hero{border-radius:16px;margin-bottom:10px;padding:12px}}.welcome-greeting-row{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}@media (width<=480px){.welcome-greeting-row{gap:8px;margin-bottom:10px}}.welcome-title-col{flex-direction:column;gap:2px;display:flex}.welcome-title{color:var(--text-primary);letter-spacing:-.3px;margin:0;font-size:1.15rem;font-weight:700}@media (width<=480px){.welcome-title{font-size:1.02rem}}.welcome-date-sub{color:var(--text-secondary);font-size:.78rem}@media (width<=480px){.welcome-date-sub{font-size:.7rem}}.welcome-group-badge{color:var(--apple-blue);white-space:nowrap;background:#0071e31a;border-radius:9999px;padding:3px 9px;font-size:.72rem;font-weight:600}[data-theme=dark] .welcome-group-badge{color:#8ab4f8;background:#8ab4f826}.home-stats-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (width<=540px){.home-stats-grid{grid-template-columns:repeat(2,1fr);gap:8px}}.home-stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;flex-direction:column;gap:3px;padding:10px;display:flex}@media (width<=480px){.home-stat-card{border-radius:12px;gap:2px;padding:8px}}.stat-card-eyebrow{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;font-size:.66rem;font-weight:600}.stat-card-value{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}@media (width<=480px){.stat-card-value{font-size:.88rem}}.stat-card-hint{color:var(--text-secondary);font-size:.68rem}.native-schedule-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;flex-direction:column;gap:12px;margin-bottom:12px;padding:16px 18px;display:flex;box-shadow:0 4px 16px #00000008}@media (width<=480px){.native-schedule-card{border-radius:16px;gap:10px;margin-bottom:10px;padding:12px}}[data-theme=dark] .native-schedule-card{box-shadow:0 4px 16px #0003}.native-schedule-strip{background:var(--bg-secondary);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;display:flex}.native-schedule-strip.is-live{color:#248a3d;background:#34c7591f}[data-theme=dark] .native-schedule-strip.is-live{color:#4cd964;background:#34c75938}.native-schedule-strip.is-today{color:#b45309;background:#ff95001f}[data-theme=dark] .native-schedule-strip.is-today{color:#fbbf24;background:#ff950038}.schedule-status-eyebrow{letter-spacing:.5px;font-size:.72rem;font-weight:700}.schedule-status-time{font-size:.8rem;font-weight:600}.native-schedule-header{justify-content:space-between;align-items:center;display:flex}.schedule-group-name{color:var(--text-primary);margin:0;font-size:1.15rem;font-weight:700}.schedule-room-pill{color:var(--apple-blue);background:#0071e31a;border-radius:8px;padding:3px 8px;font-size:.76rem;font-weight:600}.native-weekdays-row{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.native-weekday-cell{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;display:flex;position:relative}.native-weekday-cell.has-class{color:var(--apple-blue);background:#0071e314;border-color:#0071e34d;font-weight:600}.native-weekday-cell.is-today{border-color:var(--apple-blue);box-shadow:0 0 0 2px #0071e333}.cell-day-text{font-size:.76rem}.cell-dot{background:var(--apple-blue);border-radius:50%;width:5px;height:5px}.native-schedule-meta-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.schedule-meta-box{background:var(--bg-secondary);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.meta-label{color:var(--text-secondary);font-size:.7rem}.meta-value{color:var(--text-primary);font-size:.85rem;font-weight:600}.native-calendar-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:20px;flex-direction:column;gap:12px;margin-bottom:12px;padding:16px 18px;display:flex;box-shadow:0 4px 16px #00000008}@media (width<=480px){.native-calendar-card{border-radius:16px;gap:10px;margin-bottom:10px;padding:12px 10px}}[data-theme=dark] .native-calendar-card{box-shadow:0 4px 16px #0003}.native-calendar-header{justify-content:space-between;align-items:center;display:flex}.calendar-header-titles h3{color:var(--text-primary);margin:0 0 2px;font-size:1.05rem;font-weight:700}@media (width<=480px){.calendar-header-titles h3{font-size:.96rem}}.calendar-subtitle{color:var(--text-secondary);font-size:.76rem}@media (width<=480px){.calendar-subtitle{font-size:.68rem}}.calendar-month-controls{align-items:center;gap:5px;display:flex}.calendar-arrow-btn{background:var(--bg-secondary);border:1px solid var(--border-color);width:28px;height:28px;color:var(--text-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex}.calendar-today-btn{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--apple-blue);cursor:pointer;border-radius:9999px;padding:4px 8px;font-size:.72rem;font-weight:600}.calendar-stats-row{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}@media (width<=480px){.calendar-stats-row{gap:4px}}.calendar-stat-pill{background:var(--bg-secondary);border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:6px 3px;display:flex}@media (width<=480px){.calendar-stat-pill{border-radius:8px;padding:5px 2px}}.calendar-stat-pill.present{color:#248a3d;background:#34c7591a}[data-theme=dark] .calendar-stat-pill.present{color:#4cd964;background:#34c7592e}.calendar-stat-pill.absent{color:#d32f2f;background:#ff3b301a}[data-theme=dark] .calendar-stat-pill.absent{color:#ff6961;background:#ff3b302e}.calendar-stat-pill.late{color:#b45309;background:#ff95001a}[data-theme=dark] .calendar-stat-pill.late{color:#fbbf24;background:#ff95002e}.calendar-stat-pill.rate,.calendar-stat-pill.group-lessons{color:var(--apple-blue);background:#0071e31a}[data-theme=dark] .calendar-stat-pill.group-lessons{color:#3b99fc;background:#0071e32e}.calendar-stat-pill.scheduled{background:var(--bg-tertiary,#8e8e931a);color:var(--text-secondary)}.calendar-stat-pill.profile-action{color:var(--apple-blue);cursor:pointer;background:#0071e314;border:1px dashed #0071e359;transition:all .2s}.calendar-stat-pill.profile-action:hover{background:#0071e326;transform:translateY(-1px)}.calendar-stat-pill.profile-action .action-text{font-size:.76rem;font-weight:600}.stat-pill-label{font-size:.65rem;font-weight:500}@media (width<=480px){.stat-pill-label{font-size:.6rem}}.stat-pill-val{font-size:.88rem;font-weight:700}@media (width<=480px){.stat-pill-val{font-size:.82rem}}.calendar-weekdays-header{text-align:center;color:var(--text-tertiary);grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;font-size:.72rem;font-weight:600;display:grid}.calendar-grid-cells{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}@media (width<=480px){.calendar-weekdays-header,.calendar-grid-cells{gap:3px}}.day-cell{aspect-ratio:1;background:var(--bg-secondary);cursor:pointer;color:var(--text-primary);border:1px solid #0000;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.78rem;transition:all .15s;display:flex;position:relative}@media (width<=480px){.day-cell{border-radius:8px;gap:1px;font-size:.74rem}}.day-cell:hover{border-color:var(--border-color)}.day-cell.is-today{border-color:var(--apple-blue);font-weight:700}.day-cell.is-selected{background:var(--apple-blue);color:#fff}.cell-status-dot{border-radius:50%;width:5px;height:5px}@media (width<=480px){.cell-status-dot{width:4px;height:4px}}.cell-status-dot.dot-present{background:#34c759}.cell-status-dot.dot-absent{background:#ff3b30}.cell-status-dot.dot-late{background:#ff9500}.cell-status-dot.dot-excused{background:#af52de}.cell-status-dot.dot-group-lesson{background:#0071e3}.cell-status-dot.dot-scheduled{background:#0071e366}.native-day-inspector{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.native-day-inspector .inspector-content{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.inspector-action-btn{background:var(--apple-blue);color:#fff;cursor:pointer;border:none;border-radius:999px;margin-left:6px;padding:3px 10px;font-size:.72rem;font-weight:600;transition:opacity .2s}.inspector-action-btn:hover{opacity:.88}.inspector-date{color:var(--text-primary);margin-right:8px;font-size:.84rem;font-weight:600}.inspector-status{font-size:.8rem;font-weight:500}.inspector-close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:.9rem}.native-legend-bar{color:var(--text-secondary);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding-top:4px;font-size:.72rem;display:flex}.legend-item{align-items:center;gap:4px;display:flex}.legend-dot{border-radius:50%;width:6px;height:6px}.native-rating-container{flex-direction:column;gap:14px;display:flex}.native-rating-hero{box-sizing:border-box;background:linear-gradient(#ffb80038 0%,#ff950014 55%,#0000 100%);border:1px solid #ffb80040;border-radius:22px;flex-direction:column;justify-content:space-between;height:335px;padding:16px 16px 0;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 30px #ffb8000f}@media (width<=480px){.native-rating-hero{border-radius:18px;height:280px;padding:12px 10px 0}}[data-theme=dark] .native-rating-hero{background:linear-gradient(#ffb8002e 0%,#18191db3 65%,#0000 100%);border-color:#ffb80033}.native-hero-header{flex-shrink:0;justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.native-hero-title-wrap{flex-direction:column;gap:2px;display:flex}.native-hero-eyebrow{color:#d97706;letter-spacing:.8px;font-size:.7rem;font-weight:800}@media (width<=480px){.native-hero-eyebrow{font-size:.64rem}}[data-theme=dark] .native-hero-eyebrow{color:#fbbf24}.native-hero-title{color:var(--text-primary);letter-spacing:-.3px;margin:0;font-size:1.25rem;font-weight:800}@media (width<=480px){.native-hero-title{font-size:1.05rem}}.native-hero-badge{color:#1d1d1f;background:#fc0;border-radius:9999px;padding:3px 10px;font-size:.72rem;font-weight:700;box-shadow:0 2px 8px #ffcc0059}@media (width<=480px){.native-hero-badge{padding:2px 8px;font-size:.68rem}}.native-podium-stage{box-sizing:border-box;justify-content:center;align-items:flex-end;gap:8px;width:100%;margin-top:auto;padding:0 4px;display:flex}.podium-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;max-width:140px;display:flex}.podium-card{flex-direction:column;justify-content:flex-end;align-items:center;width:100%;display:flex}.podium-avatar-ring{box-sizing:border-box;background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:3px;padding:3px;display:flex;box-shadow:0 4px 16px #0000001a}.podium-col-1 .podium-avatar-ring{width:74px;height:74px}.podium-col-2 .podium-avatar-ring{width:60px;height:60px}.podium-col-3 .podium-avatar-ring{width:54px;height:54px}@media (width<=480px){.podium-avatar-ring{margin-bottom:2px;padding:2px}.podium-col-1 .podium-avatar-ring{width:56px;height:56px}.podium-col-2 .podium-avatar-ring{width:46px;height:46px}.podium-col-3 .podium-avatar-ring{width:42px;height:42px}}[data-theme=dark] .podium-avatar-ring{background:#25262b}.ring-gold{background:linear-gradient(135deg,#ffe259 0%,#ffa751 100%);box-shadow:0 4px 18px #ffa75166}.ring-silver{background:linear-gradient(135deg,#e0e0e0 0%,#bdbdbd 100%)}.ring-bronze{background:linear-gradient(135deg,#f39c12 0%,#d35400 100%)}[data-theme=dark] .ring-gold{box-shadow:0 0 16px #ffcc0059}[data-theme=dark] .ring-silver{box-shadow:0 0 12px #fff3}[data-theme=dark] .ring-bronze{box-shadow:0 0 12px #f39c1240}.podium-avatar-inner{background:var(--bg-card);box-sizing:border-box;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.podium-avatar-inner.inner-1{width:68px;height:68px}.podium-avatar-inner.inner-2{width:54px;height:54px}.podium-avatar-inner.inner-3{width:48px;height:48px}@media (width<=480px){.podium-avatar-inner.inner-1{width:52px;height:52px}.podium-avatar-inner.inner-2{width:42px;height:42px}.podium-avatar-inner.inner-3{width:38px;height:38px}}.podium-avatar-inner img,.stat-box-avatar-inner img{object-fit:cover!important;border-radius:50%!important;width:100%!important;height:100%!important;display:block!important}.podium-avatar-inner svg,.stat-box-avatar-inner svg{width:100%!important;height:100%!important;display:block!important}.stat-box-avatar-inner{box-sizing:border-box;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}@media (width<=480px){.stat-box-avatar-inner{width:36px;height:36px}}.podium-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;text-align:center;max-width:90px;margin-bottom:2px;font-size:.82rem;font-weight:700;line-height:1.2;overflow:hidden}.podium-name.champion-name{color:#b45309;font-size:.9rem}@media (width<=480px){.podium-name{max-width:78px;font-size:.74rem}.podium-name.champion-name{font-size:.82rem}}[data-theme=dark] .podium-name{color:#fff}[data-theme=dark] .podium-name.champion-name{color:#fbbf24}.podium-group-tag{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;background:#0000000d;border-radius:9999px;max-width:85px;margin-bottom:2px;padding:1px 6px;font-size:.62rem;font-weight:600;line-height:1.2;overflow:hidden}@media (width<=480px){.podium-group-tag{margin-bottom:2px;padding:0 4px;font-size:.58rem}}[data-theme=dark] .podium-group-tag{color:#ffffffbf;background:#ffffff1a}.podium-group-tag.champion-group-tag{color:#b45309;background:#b4530926}[data-theme=dark] .podium-group-tag.champion-group-tag{color:#fbbf24;background:#fbbf2433}.podium-points-tag{color:#b45309;background:#ffcc0040;border:1px solid #fc06;border-radius:9999px;margin-bottom:5px;padding:2px 7px;font-size:.68rem;font-weight:700;line-height:1.2}@media (width<=480px){.podium-points-tag{margin-bottom:3px;padding:1px 5px;font-size:.62rem}}[data-theme=dark] .podium-points-tag{color:#fbbf24;background:#fbbf242e;border-color:#fbbf2466}.podium-points-tag.champion-tag{color:#1d1d1f;background:#fc0;border-color:#fc0;box-shadow:0 2px 6px #ffcc0059}[data-theme=dark] .podium-points-tag.champion-tag{color:#1d1d1f;background:#fc0;border-color:#fc0}.podium-pedestal{border-radius:14px 14px 0 0;flex-direction:column;align-items:center;width:100%;padding-top:8px;display:flex;position:relative;box-shadow:inset 0 2px #fff6}.pedestal-1{background:linear-gradient(#f5a623 0%,#e68a00 100%);height:110px}.pedestal-2{background:linear-gradient(#f8b84e 0%,#eb9c24 100%);height:82px}.pedestal-3{background:linear-gradient(#f5ac3a 0%,#de8716 100%);height:60px}@media (width<=480px){.pedestal-1{height:82px}.pedestal-2{height:60px}.pedestal-3{height:44px}.podium-pedestal{border-radius:12px 12px 0 0;padding-top:5px}}.pedestal-number-circle{color:#8c4e00;background:#fffdf7;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.95rem;font-weight:900;display:flex;box-shadow:0 3px 8px #0000002e}@media (width<=480px){.pedestal-number-circle{width:24px;height:24px;font-size:.82rem}}.native-hero-empty-state{text-align:center;box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:14px 14px 20px;display:flex}.empty-state-icon-wrap{color:#f59e0b;background:#f59e0b26;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;margin-bottom:10px;display:flex}.empty-state-badge{color:#d97706;background:#ffcc0040;border-radius:9999px;margin-bottom:8px;padding:3px 10px;font-size:.72rem;font-weight:700}[data-theme=dark] .empty-state-badge{color:#fbbf24;background:#fbbf2433}.empty-state-desc{color:var(--text-secondary);max-width:340px;margin:0;font-size:.82rem;line-height:1.45}.native-hero-history-summary{box-sizing:border-box;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;width:100%;padding:0 4px 10px;animation:.25s fadeIn;display:flex}@media (width<=480px){.native-hero-history-summary{padding:0 4px 8px}}.hero-history-stats-grid{box-sizing:border-box;justify-content:center;align-items:flex-end;gap:8px;width:100%;max-width:440px;margin-top:auto;display:flex}.hero-history-stat-box{-webkit-backdrop-filter:blur(12px);text-align:center;box-sizing:border-box;background:#ffffffa6;border:1px solid #ffb80047;border-radius:16px 16px 12px 12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;min-width:0;max-width:140px;padding:10px 6px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 4px 14px #0000000a}.hero-history-stat-box.stat-box-left{background:linear-gradient(#fffc 0%,#f5f5f8bf 100%);border-color:#bdbdbd73;height:185px}.hero-history-stat-box.stat-box-center{z-index:2;background:linear-gradient(#fff8e1f2 0%,#ffecb3cc 100%);border:1.5px solid #fc0;height:225px;box-shadow:0 6px 20px #ffb80038}.hero-history-stat-box.stat-box-right{background:linear-gradient(#fffc 0%,#f8f3eebf 100%);border-color:#d354004d;height:155px}[data-theme=dark] .hero-history-stat-box.stat-box-left{background:linear-gradient(#ffffff14 0%,#ffffff08 100%);border-color:#ffffff24;box-shadow:0 4px 16px #0000004d}[data-theme=dark] .hero-history-stat-box.stat-box-center{background:linear-gradient(#fbbf243d 0%,#fbbf2414 100%);border-color:#fbbf248c;box-shadow:0 6px 22px #fbbf2433}[data-theme=dark] .hero-history-stat-box.stat-box-right{background:linear-gradient(#ffffff14 0%,#ffffff08 100%);border-color:#ffffff24;box-shadow:0 4px 16px #0000004d}.stat-box-icon-ring{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;margin-bottom:2px;display:flex;box-shadow:0 3px 10px #00000014}.stat-box-icon-ring.ring-silver{color:#424242;background:linear-gradient(135deg,#e0e0e0 0%,#bdbdbd 100%)}.stat-box-icon-ring.ring-gold{color:#8c4e00;background:linear-gradient(135deg,#ffe259 0%,#ffa751 100%);box-shadow:0 4px 16px #ffa75166}.stat-box-icon-ring.ring-bronze{color:#fff;background:linear-gradient(135deg,#f39c12 0%,#d35400 100%)}.stat-box-center .stat-box-icon-ring{width:46px;height:46px;margin-bottom:3px}.hero-stat-value{color:var(--text-primary);letter-spacing:-.4px;font-size:1.3rem;font-weight:800;line-height:1.1}.hero-stat-value.champion-val{color:#b45309;font-size:1.65rem}[data-theme=dark] .hero-stat-value.champion-val{color:#fbbf24}.hero-stat-label{color:var(--text-secondary);white-space:nowrap;letter-spacing:.2px;font-size:.68rem;font-weight:700}.hero-stat-label.champion-lbl{color:#92400e;font-weight:800}[data-theme=dark] .hero-stat-label.champion-lbl{color:#fcd34d}.stat-box-sub-pill{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;background:#0000000d;border-radius:9999px;max-width:95%;margin-top:1px;padding:1px 7px;font-size:.62rem;font-weight:600;overflow:hidden}[data-theme=dark] .stat-box-sub-pill{color:#ffffffbf;background:#ffffff14}.stat-box-sub-pill.champion-pill{color:#1d1d1f;background:#fc0;font-weight:700;box-shadow:0 2px 6px #ffcc0059}@media (width<=480px){.hero-history-stat-box.stat-box-left{border-radius:14px 14px 10px 10px;height:135px;padding:8px 4px 6px}.hero-history-stat-box.stat-box-center{border-radius:16px 16px 12px 12px;height:165px;padding:10px 4px 8px}.hero-history-stat-box.stat-box-right{border-radius:14px 14px 10px 10px;height:118px;padding:8px 4px 6px}.stat-box-icon-ring{width:32px;height:32px;margin-bottom:2px}.stat-box-center .stat-box-icon-ring{width:40px;height:40px;margin-bottom:3px}.hero-stat-value{font-size:1.15rem}.hero-stat-value.champion-val{font-size:1.45rem}.hero-stat-label{font-size:.64rem}.stat-box-sub-pill{padding:1px 5px;font-size:.58rem}}.native-segmented-section{flex-direction:column;gap:6px;display:flex}.native-segmented-control{background:var(--bg-card);border:1px solid var(--border-color);box-sizing:border-box;border-radius:12px;align-items:center;gap:3px;width:100%;padding:3px;display:flex}.native-segment-btn{min-width:0;color:var(--text-secondary);cursor:pointer;text-align:center;white-space:nowrap;box-sizing:border-box;background:0 0;border:none;border-radius:9px;flex:1;justify-content:center;align-items:center;padding:6px 4px;font-size:.8rem;font-weight:600;transition:all .15s;display:flex}.native-segment-btn:hover{color:var(--text-primary)}.native-segment-btn.active{background:var(--bg-secondary);color:var(--text-primary);font-weight:700;box-shadow:0 1px 3px #00000014}[data-theme=dark] .native-segment-btn.active{color:#fff;background:#3a3b40;box-shadow:0 1px 3px #0000004d}.native-timeframe-bar{scrollbar-width:none;align-items:center;gap:5px;padding:2px 0;display:flex;overflow-x:auto}.native-timeframe-bar::-webkit-scrollbar{display:none}.native-pill-btn{color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;white-space:nowrap;border-radius:9999px;padding:5px 13px;font-size:.78rem;font-weight:600;transition:all .15s}@media (width<=480px){.native-pill-btn{padding:4px 9px;font-size:.72rem}}.native-pill-btn.active{color:#1d1d1f;background:#fc0;border-color:#fc0;font-weight:700;box-shadow:0 2px 8px #ffcc004d}.native-standing-card{background:#0071e314;border:1.5px solid #0071e340;border-radius:16px;align-items:center;gap:12px;padding:10px 14px;display:flex}[data-theme=dark] .native-standing-card{background:#8ab4f81a;border-color:#8ab4f84d}@media (width<=480px){.native-standing-card{border-radius:13px;gap:9px;padding:8px 10px}}.standing-rank-badge{color:var(--apple-blue);align-items:baseline;font-weight:900;display:flex}.standing-hash{font-size:.88rem}.standing-num{font-size:1.25rem}@media (width<=480px){.standing-hash{font-size:.82rem}.standing-num{font-size:1.12rem}}.standing-info-col{flex-direction:column;flex:1;gap:2px;display:flex}.standing-title-row{align-items:center;gap:6px;display:flex}.standing-name{color:var(--text-primary);font-size:.88rem;font-weight:700}.standing-you-chip{background:var(--apple-blue);color:#fff;border-radius:9999px;padding:1px 6px;font-size:.65rem;font-weight:700}.standing-top10-chip{color:#b45309;background:#fc03;border:1px solid #fc06;border-radius:9999px;flex-shrink:0;padding:1px 6px;font-size:.64rem;font-weight:700}[data-theme=dark] .standing-top10-chip{color:#fbbf24;background:#fbbf242e;border-color:#fbbf2459}.standing-status-desc{color:var(--text-secondary);font-size:.72rem}.standing-score-badge{flex-direction:column;align-items:flex-end;display:flex}.score-val{color:#d97706;font-size:1.02rem;font-weight:800}[data-theme=dark] .score-val{color:#fbbf24}.score-lbl{color:var(--text-secondary);font-size:.66rem}.native-list-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:18px;padding:14px 16px;box-shadow:0 4px 16px #00000008}@media (width<=480px){.native-list-card{border-radius:14px;padding:10px}}.list-card-header{margin-bottom:8px}@media (width<=480px){.list-card-header{margin-bottom:6px}}.header-main-title{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:700}.header-sub-count{color:var(--text-secondary);font-size:.72rem}.native-student-rows{flex-direction:column;gap:4px;display:flex}.native-student-row{background:var(--bg-secondary);box-sizing:border-box;border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;min-height:44px;padding:7px 10px;transition:all .15s;display:flex}@media (width<=480px){.native-student-row{border-radius:10px;gap:8px;min-height:38px;padding:5px 8px}}.native-student-row:hover{border-color:var(--border-color)}.native-student-row.is-me-row{background:#0071e30f;border-color:#0071e333}[data-theme=dark] .native-student-row.is-me-row{background:#8ab4f81a;border-color:#8ab4f840}.row-rank-col{flex-shrink:0;justify-content:center;align-items:center;width:24px;display:flex}.rank-medal-badge{font-size:1rem}.rank-standard-number{color:var(--text-tertiary);font-size:.82rem;font-weight:700}.row-avatar-col{flex-shrink:0}.row-avatar-wrap{background:var(--bg-card);border:1.5px solid var(--border-color);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}@media (width<=480px){.row-avatar-wrap{width:32px;height:32px}}.row-name-col{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.name-line{align-items:center;gap:5px;display:flex}.student-name-text{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.84rem;font-weight:600;overflow:hidden}@media (width<=480px){.student-name-text{font-size:.8rem}}.verified-check-svg{flex-shrink:0}.you-chip{background:var(--apple-blue);color:#fff;border-radius:9999px;flex-shrink:0;padding:1px 5px;font-size:.64rem;font-weight:700}.group-meta-sub{color:var(--text-secondary);font-size:.68rem}.row-score-col{flex-shrink:0}.score-capsule{background:var(--bg-card);border:1px solid var(--border-color);border-radius:9999px;align-items:center;gap:3px;padding:4px 8px;display:inline-flex}@media (width<=480px){.score-capsule{gap:2px;padding:3px 6px}}.score-number{color:var(--text-primary);font-size:.82rem;font-weight:800}@media (width<=480px){.score-number{font-size:.78rem}}.score-star-icon{font-size:.78rem}.score-unit{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;font-size:.65rem;font-weight:700}.native-history-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:18px;padding:14px 16px}@media (width<=480px){.native-history-card{border-radius:14px;padding:10px}}.history-header-bar{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.history-filter-toggle{background:var(--bg-secondary);border-radius:9999px;gap:3px;padding:2px;display:flex}.history-toggle-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:9999px;padding:3px 10px;font-size:.72rem;font-weight:600}.history-toggle-btn.active{background:var(--bg-card);color:var(--text-primary);box-shadow:0 1px 4px #0000000f}.history-stream{flex-direction:column;gap:5px;display:flex}.history-row{background:var(--bg-secondary);border:1px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}@media (width<=480px){.history-row{border-radius:10px;gap:8px;padding:6px 9px}}.history-row.is-me-history{border-color:#0071e333}.history-row-left{flex-direction:column;gap:2px;display:flex}.history-name-line{align-items:center;gap:6px;display:flex}.history-student-name{color:var(--text-primary);font-size:.82rem;font-weight:600}@media (width<=480px){.history-student-name{font-size:.78rem}}.history-time-stamp{color:var(--text-tertiary);font-size:.68rem}.history-comment-text{color:var(--text-secondary);margin:0;font-size:.74rem}@media (width<=480px){.history-comment-text{font-size:.7rem}}.history-amount-badge{white-space:nowrap;border-radius:9999px;padding:3px 8px;font-size:.78rem;font-weight:700}.history-amount-badge.positive{color:#248a3d;background:#34c7591f}[data-theme=dark] .history-amount-badge.positive{color:#4cd964;background:#34c75938}.history-amount-badge.negative{color:#ff3b30;background:#ff3b301f}.native-shop-container{flex-direction:column;gap:10px;display:flex}.shop-carousel-container{-webkit-user-select:none;user-select:none;border-radius:20px;width:100%;position:relative;overflow:hidden;box-shadow:0 8px 24px #00000029}.shop-carousel-viewport{width:100%;height:145px;position:relative;overflow:hidden}@media (width<=480px){.shop-carousel-viewport{height:126px}}.shop-carousel-track{will-change:transform;width:100%;height:100%;transition:transform .45s cubic-bezier(.22,1,.36,1);display:flex}.shop-slide-card{box-sizing:border-box;color:#fff;flex-direction:column;flex:0 0 100%;justify-content:flex-start;gap:6px;width:100%;height:100%;padding:14px 16px 26px;display:flex}@media (width<=480px){.shop-slide-card{gap:4px;padding:10px 12px 22px}}.slide-card-bg-0{background:linear-gradient(135deg,#18191e 0%,#242630 100%)}.slide-card-bg-1{background:linear-gradient(135deg,#161a26 0%,#1f2636 100%)}.slide-card-bg-2{background:linear-gradient(135deg,#1f1a14 0%,#2d2318 100%)}.slide-card-header{justify-content:space-between;align-items:center;gap:6px;display:flex}.slide-eyebrow-pill{color:#fc0;letter-spacing:.6px;font-size:.62rem;font-weight:800}.slide-eyebrow-actions{align-items:center;gap:6px;display:flex}.slide-balance-pill{color:#fc0;white-space:nowrap;background:#fc03;border-radius:9999px;padding:2px 8px;font-size:.68rem;font-weight:700}.slide-card-body{flex-direction:column;gap:3px;display:flex}.slide-headline{letter-spacing:-.2px;color:#fff;max-width:520px;margin:0;font-size:1.05rem;font-weight:800;line-height:1.25}@media (width<=480px){.slide-headline{font-size:.92rem}}.slide-sub{color:#ffffffb8;max-width:520px;margin:0;font-size:.74rem;line-height:1.35}@media (width<=480px){.slide-sub{font-size:.68rem;line-height:1.25}}.shop-carousel-dots{z-index:5;justify-content:center;align-items:center;gap:5px;display:flex;position:absolute;bottom:8px;left:0;right:0}.shop-carousel-dot{cursor:pointer;background:#ffffff4d;border:none;border-radius:50%;width:5px;height:5px;padding:0;transition:all .35s cubic-bezier(.4,0,.2,1)}.shop-carousel-dot:hover{background:#ffffffa6}.shop-carousel-dot.active{background:#fc0;border-radius:9999px;width:18px}.shop-target-tracker-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;flex-direction:column;gap:4px;padding:8px 12px;display:flex;box-shadow:0 2px 8px #00000008}[data-theme=dark] .shop-target-tracker-card{background:#23242a;border-color:#ffffff1a}.target-tracker-header{justify-content:space-between;align-items:center;font-size:.72rem;display:flex}.target-goal-title{color:#b45309;font-weight:600}[data-theme=dark] .target-goal-title{color:#fbbf24}.target-goal-stats{color:var(--text-secondary);font-weight:600}.target-progress-track{background:#00000014;border-radius:9999px;width:100%;height:5px;overflow:hidden}[data-theme=dark] .target-progress-track{background:#ffffff1f}.target-progress-bar{background:#fc0;border-radius:9999px;height:100%;transition:width .3s}.shop-categories-wrapper{scrollbar-width:none;padding:2px 0;overflow-x:auto}.shop-categories-wrapper::-webkit-scrollbar{display:none}.shop-categories-scroll{align-items:center;gap:6px;display:flex}.shop-category-pill{color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;white-space:nowrap;border-radius:9999px;padding:5px 12px;font-size:.75rem;font-weight:600;transition:all .15s}@media (width<=480px){.shop-category-pill{padding:4px 10px;font-size:.72rem}}.shop-category-pill.active{color:#1d1d1f;background:#fc0;border-color:#fc0;font-weight:700;box-shadow:0 2px 8px #ffcc0052}.shop-products-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (width>=640px){.shop-products-grid{grid-template-columns:repeat(3,1fr);gap:10px}}@media (width>=860px){.shop-products-grid{grid-template-columns:repeat(4,1fr);gap:12px}}.shop-product-card{background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;border-radius:16px;flex-direction:column;gap:6px;padding:8px 8px 10px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}@media (width<=480px){.shop-product-card{border-radius:14px;gap:5px;padding:7px 7px 9px}}.shop-product-card:hover{border-color:#0071e34d;transform:translateY(-2px);box-shadow:0 4px 14px #0000000d}.shop-product-card:active{transform:scale(.97)}.shop-product-card.is-target-card{border-color:#fc0;box-shadow:0 0 0 2px #ffcc0059}.product-image-container{background:var(--bg-secondary);border-radius:12px;justify-content:center;align-items:center;height:96px;display:flex;position:relative}@media (width<=480px){.product-image-container{border-radius:10px;height:88px}}.product-target-badge{color:#1d1d1f;background:#fc0;border-radius:9999px;padding:1px 5px;font-size:.58rem;font-weight:700;position:absolute;top:5px;left:5px;box-shadow:0 1px 4px #00000026}.product-affordable-badge{color:#fff;background:#34c759;border-radius:9999px;padding:1px 5px;font-size:.58rem;font-weight:700;position:absolute;top:5px;right:5px}.product-info-block{flex-direction:column;gap:1px;display:flex}.product-card-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.78rem;font-weight:700;overflow:hidden}.product-stock-text{color:var(--text-secondary);font-size:.68rem}.product-price-row{align-items:center;display:flex}.product-price-pill{color:var(--text-primary);align-items:center;gap:3px;font-size:.78rem;font-weight:800;display:inline-flex}.price-coin-icon{font-size:.82rem}.shop-empty-state{text-align:center;background:var(--bg-card);border:1px solid var(--border-color);box-sizing:border-box;border-radius:24px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;margin:12px 0 24px;padding:44px 24px;animation:.25s fadeIn;display:flex;box-shadow:0 4px 20px #0000000a}[data-theme=dark] .shop-empty-state{box-shadow:none;background:#ffffff08;border-color:#ffffff14}.shop-empty-icon-wrap{color:#f59e0b;background:#f59e0b1f;border-radius:50%;justify-content:center;align-items:center;width:68px;height:68px;margin-bottom:16px;transition:transform .2s;display:flex}.shop-empty-icon-wrap.neutral{color:var(--text-secondary);background:#8e8e9324}.shop-empty-badge{color:#d97706;background:#f59e0b1f;border-radius:9999px;align-items:center;gap:6px;margin-bottom:12px;padding:5px 14px;font-size:.8rem;font-weight:700;display:inline-flex}[data-theme=dark] .shop-empty-badge{color:#fbbf24;background:#f59e0b2e}.shop-empty-title{color:var(--text-primary);letter-spacing:-.01em;margin:0 0 8px;font-size:1.15rem;font-weight:700}.shop-empty-desc{color:var(--text-secondary);max-width:400px;margin:0 0 20px;font-size:.88rem;line-height:1.55}.shop-empty-desc strong{color:var(--text-primary);font-weight:700}.shop-empty-action-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border:none;border-radius:9999px;justify-content:center;align-items:center;gap:8px;padding:11px 24px;font-size:.86rem;font-weight:700;transition:transform .15s,box-shadow .15s,filter .15s;display:inline-flex;box-shadow:0 4px 14px #f59e0b4d}.shop-empty-action-btn:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 6px 18px #f59e0b66}.shop-empty-action-btn:active{transform:scale(.97)}.shop-empty-action-btn.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);box-shadow:none}.shop-empty-action-btn.secondary:hover{background:var(--bg-card);border-color:var(--text-tertiary)}.shop-detail-modal{max-width:480px}.shop-detail-body{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:10px 20px 24px;display:flex}.detail-visual-center{padding:12px}.detail-price-banner{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:9999px;align-items:center;gap:8px;padding:8px 18px;display:inline-flex}.detail-price-val{color:var(--text-primary);font-size:1.15rem;font-weight:800}.detail-stock-badge{color:var(--text-secondary);font-size:.74rem}.detail-description{color:var(--text-secondary);margin:0;font-size:.88rem;line-height:1.5}.detail-progress-card{background:var(--bg-secondary);text-align:left;border-radius:16px;flex-direction:column;gap:6px;width:100%;padding:12px 14px;display:flex}.progress-header{color:var(--text-primary);justify-content:space-between;font-size:.78rem;font-weight:600;display:flex}.detail-progress-track{background:#00000014;border-radius:9999px;width:100%;height:8px;overflow:hidden}[data-theme=dark] .detail-progress-track{background:#ffffff1f}.detail-progress-fill{background:var(--apple-blue);border-radius:9999px;height:100%}.progress-status-text{color:var(--text-secondary);font-size:.75rem}.detail-actions-row{width:100%}.detail-set-target-btn{color:#1d1d1f;cursor:pointer;background:#fc0;border:none;border-radius:12px;width:100%;padding:10px 14px;font-size:.86rem;font-weight:700;transition:transform .15s}.detail-set-target-btn:active{transform:scale(.97)}.detail-cancel-target-btn{color:#ff3b30;cursor:pointer;background:#ff3b301a;border:1px solid #ff3b3033;border-radius:12px;width:100%;padding:10px 14px;font-size:.84rem;font-weight:600}.student-account-page{flex-direction:column;gap:10px;display:flex}.account-hero-card{background:var(--bg-card);border:1px solid var(--border-color);box-sizing:border-box;border-radius:20px;flex-direction:column;justify-content:flex-start;align-items:center;height:248px;min-height:248px;max-height:248px;padding:16px;display:flex;overflow:hidden;box-shadow:0 4px 16px #0000000a}@media (width<=680px){.account-hero-card{border-radius:16px;height:228px;min-height:228px;max-height:228px;padding:12px 10px}}.account-hero-inner,.account-unpinned-banner{text-align:center;flex-direction:column;align-items:center;width:100%;margin:0;padding:0;display:flex}.account-avatar-wrapper{box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 8px;display:flex;position:relative}@media (width<=680px){.account-avatar-wrapper{width:54px;height:54px;margin:0 auto 6px}}.account-avatar-circle{box-sizing:border-box;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:flex;overflow:hidden;box-shadow:0 4px 14px #00000014}@media (width<=680px){.account-avatar-circle{width:54px;height:54px}}.account-avatar-circle.unpinned-hero-avatar{color:var(--apple-blue);box-shadow:none;background:#0071e314;border:2px dashed #0071e359}[data-theme=dark] .account-avatar-circle.unpinned-hero-avatar{color:#388af6;background:#0071e326;border-color:#0071e373}.account-avatar-edit-btn{background:var(--apple-blue);color:#fff;border:2px solid var(--bg-card);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;bottom:-2px;right:-2px;box-shadow:0 2px 6px #00000026}.account-hero-info{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;width:100%;margin-bottom:8px;display:flex}.account-hero-badge-row{box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;gap:5px;height:20px;display:flex}.account-group-tag{color:var(--apple-blue);background:#0071e31a;border-radius:9999px;padding:1px 7px;font-size:.68rem;font-weight:600;line-height:1.2}.account-pin-status-tag{border-radius:9999px;padding:1px 7px;font-size:.68rem;font-weight:600;line-height:1.2}.account-pin-status-tag.has-pin{color:#248a3d;background:#34c7591f}[data-theme=dark] .account-pin-status-tag.has-pin{color:#4cd964;background:#34c75938}.account-pin-status-tag.no-pin{color:#b45309;background:#ff95001f}[data-theme=dark] .account-pin-status-tag.no-pin{color:#fbbf24;background:#ff950038}.account-hero-name{color:var(--text-primary);text-align:center;white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;max-width:90%;height:24px;margin:0;font-size:1.15rem;font-weight:800;line-height:24px;display:flex;overflow:hidden}@media (width<=680px){.account-hero-name{font-size:1.02rem}}.account-points-row{box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;height:28px;display:flex}.account-points-pill{color:#b45309;box-sizing:border-box;background:#fc03;border-radius:9999px;align-items:center;gap:5px;height:26px;min-height:26px;padding:2px 10px;font-size:.76rem;font-weight:700;display:inline-flex}[data-theme=dark] .account-points-pill{color:#fbbf24;background:#ffcc0038}.account-unpinned-pill{color:var(--apple-blue);box-sizing:border-box;background:#0071e314;border-radius:9999px;align-items:center;gap:5px;height:26px;min-height:26px;padding:2px 10px;font-size:.76rem;font-weight:600;display:inline-flex}[data-theme=dark] .account-unpinned-pill{color:#388af6;background:#0071e329}.account-hero-actions{box-sizing:border-box;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:6px;width:100%;height:32px;min-height:32px;max-height:32px;display:flex}.account-action-pill-btn{box-sizing:border-box;cursor:pointer;border:1px solid var(--border-color);background:var(--bg-secondary);height:32px;min-height:32px;max-height:32px;color:var(--text-primary);white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:9999px;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:.75rem;font-weight:600;transition:background-color .15s,opacity .15s;display:inline-flex}.account-action-pill-btn:hover{background:var(--bg-card)}.account-action-pill-btn:active{opacity:.8}.account-action-pill-btn.danger{color:#ff3b30;border-color:#ff3b3033}.account-action-pill-btn.primary-pick{background:var(--apple-blue);color:#fff;border-color:#0000;padding:0 16px;font-weight:600}.account-action-pill-btn.primary-pick:hover{background:#0062cc}.account-section-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:18px;flex-direction:column;gap:10px;padding:14px;display:flex}@media (width<=680px){.account-section-card{border-radius:14px;gap:8px;padding:10px}}.account-section-header{justify-content:space-between;align-items:center;display:flex}.account-section-title{color:var(--text-primary);margin:0 0 1px;font-size:.95rem;font-weight:700}@media (width<=680px){.account-section-title{font-size:.88rem}}.account-section-sub{color:var(--text-secondary);font-size:.72rem}.account-section-action-btn{color:var(--apple-blue);cursor:pointer;background:0 0;border:none;font-size:.76rem;font-weight:600}.account-add-group-form{background:var(--bg-secondary);border-radius:14px;padding:10px 12px}.add-group-input-wrap{flex-direction:column;gap:5px;display:flex}.add-group-label{color:var(--text-secondary);font-size:.74rem;font-weight:600}.add-group-row{gap:6px;display:flex}.add-group-input{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);border-radius:10px;outline:none;flex:1;padding:8px 12px;font-size:.82rem}.add-group-submit-btn{background:var(--apple-blue);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:8px 14px;font-size:.82rem;font-weight:600}.add-group-error-msg{color:#ff3b30;font-size:.74rem}.account-groups-grid{flex-direction:column;gap:6px;display:flex}.account-group-card{background:var(--bg-secondary);box-sizing:border-box;border:1.5px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;min-height:46px;padding:8px 10px;transition:background-color .15s,border-color .15s;display:flex}.account-group-card.is-active-group{background:#0071e30f;border-color:#0071e340}.account-group-left{flex:1;min-width:0}.group-title-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.account-group-name{color:var(--text-primary);font-size:.85rem;font-weight:700}.group-active-tag{color:#fff;background:#34c759;border-radius:9999px;padding:1px 6px;font-size:.64rem;font-weight:700;line-height:1.2}.group-meta-row{color:var(--text-secondary);margin-top:2px;font-size:.7rem}.account-group-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.group-active-pill{box-sizing:border-box;text-align:center;color:#248a3d;white-space:nowrap;-webkit-user-select:none;user-select:none;background:#34c75924;border-radius:8px;justify-content:center;align-items:center;min-width:68px;min-height:30px;padding:0 10px;font-size:.74rem;font-weight:700;display:inline-flex}[data-theme=dark] .group-active-pill{color:#4cd964;background:#34c75938}.group-switch-btn{box-sizing:border-box;text-align:center;background:var(--apple-blue);color:#fff;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:none;border-radius:8px;justify-content:center;align-items:center;min-width:68px;min-height:30px;padding:0 10px;font-size:.74rem;font-weight:600;transition:background-color .15s,opacity .15s;display:inline-flex}.group-switch-btn:hover{background:#0062cc}.group-switch-btn:active{opacity:.82}.group-delete-btn{box-sizing:border-box;color:#ff3b30;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;min-height:30px;padding:0 6px;font-size:.74rem;transition:opacity .15s;display:inline-flex}.group-delete-btn:active{opacity:.65}.group-remove-confirm-box{white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;font-size:.74rem;display:flex}.remove-confirm-btn{cursor:pointer;-webkit-user-select:none;user-select:none;border:none;border-radius:6px;padding:4px 10px;font-size:.72rem;font-weight:600;transition:opacity .15s}.remove-confirm-btn:active{opacity:.8}.remove-confirm-btn.yes{color:#fff;background:#ff3b30}.remove-confirm-btn.no{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.account-search-bar{background:var(--bg-secondary);border:1.5px solid var(--border-color);box-sizing:border-box;border-radius:10px;align-items:center;gap:6px;height:38px;min-height:38px;padding:0 10px;transition:border-color .2s,box-shadow .2s;display:flex}[data-theme=dark] .account-search-bar{background:#ffffff0d;border-color:#ffffff1f}.account-search-bar:focus-within{border-color:var(--apple-blue);box-shadow:0 0 0 3px #0071e326}[data-theme=dark] .account-search-bar:focus-within{border-color:#8ab4f8;box-shadow:0 0 0 3px #8ab4f833}.account-search-input,[data-theme=dark] .account-search-input,[data-theme=dark] input[type=text].account-search-input,input[type=text].account-search-input{-webkit-appearance:none;flex:1;min-width:0;font-family:inherit;height:100%!important;box-shadow:none!important;color:var(--text-primary)!important;background:0 0!important;border:none!important;border-radius:0!important;outline:none!important;margin:0!important;padding:0!important;font-size:14px!important}.account-search-input:focus,[data-theme=dark] .account-search-input:focus,[data-theme=dark] input[type=text].account-search-input:focus{box-shadow:none!important;border:none!important;outline:none!important}.account-search-clear{width:20px;height:20px;color:var(--text-secondary);cursor:pointer;background:#8e8e932e;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;font-size:.68rem;line-height:1;transition:background-color .15s,color .15s;display:inline-flex}.account-search-clear:hover{color:var(--text-primary);background:#8e8e9352}.account-students-list{flex-direction:column;gap:5px;min-height:100px;max-height:360px;display:flex;overflow-y:auto}.account-student-row{background:var(--bg-secondary);cursor:pointer;box-sizing:border-box;border:1.5px solid #0000;border-radius:12px;align-items:center;gap:8px;min-height:42px;padding:6px 10px;transition:background-color .15s,border-color .15s,transform .1s;display:flex}@media (width<=680px){.account-student-row{border-radius:10px;min-height:38px;padding:5px 8px}}.account-student-row:hover{border-color:var(--border-color)}.account-student-row:active{background:#0071e30d}.account-student-row.is-selected{background:#0071e314;border-color:#0071e340}.student-row-avatar{background:var(--bg-card);border:1px solid var(--border-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;overflow:hidden}.student-row-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.student-row-name-line{align-items:center;gap:5px;display:flex}.student-row-name{color:var(--text-primary);font-size:.82rem;font-weight:600}@media (width<=680px){.student-row-name{font-size:.78rem}}.student-pin-badge{border-radius:5px;padding:1px 5px;font-size:.62rem;font-weight:500}.student-pin-badge.protected{color:#248a3d;background:#34c7591f}.student-pin-badge.open{color:var(--apple-blue);background:#0071e31a}.student-row-current-tag{color:var(--apple-blue);font-size:.68rem;font-weight:600}.student-row-action{flex-shrink:0}.selected-checkmark-bubble{background:var(--apple-blue);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.select-action-text{color:var(--apple-blue);font-size:.74rem;font-weight:600}.student-status-badge{-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:9999px;align-items:center;gap:4px;padding:2px 7px;font-size:.68rem;font-weight:600;line-height:1.2;display:inline-flex}.student-status-badge.is-self{color:#248a3d;background:#34c75924;border:1px solid #34c7594d}[data-theme=dark] .student-status-badge.is-self{color:#4cd964;background:#34c75938;border-color:#34c75966}.student-status-badge.is-peer{color:var(--text-secondary);background:#8e8e931f;border:1px solid #8e8e932e;font-weight:500}[data-theme=dark] .student-status-badge.is-peer{color:#98989d;background:#ffffff0f;border-color:#ffffff1a}.account-student-row.is-locked-peer{opacity:.76}.account-student-row.is-locked-peer:hover{opacity:.95;border-color:#8e8e9338}.account-student-row.is-locked-peer:active{background:#8e8e9314}.student-status-badge.is-device-locked{color:#d97706;background:#ff95001f;border:1px solid #ff950040;font-weight:600}[data-theme=dark] .student-status-badge.is-device-locked{color:#fbbf24;background:#ff9f0a2e;border-color:#ff9f0a59}.account-student-row.is-device-blocked{opacity:.62;cursor:not-allowed}.account-student-row.is-device-blocked:hover{opacity:.78;border-color:#ff95004d}.account-student-row.is-device-match{background:#0071e308;border-color:#0071e352}[data-theme=dark] .account-student-row.is-device-match{background:#2997ff0f;border-color:#2997ff61}.student-row-device-tag{color:var(--apple-blue);background:#0071e314;border-radius:6px;width:fit-content;padding:2px 7px;font-size:.68rem;font-weight:600;display:inline-block}[data-theme=dark] .student-row-device-tag{color:#2997ff;background:#2997ff29}.select-action-text.device-match{color:var(--apple-blue);font-weight:700}.account-picker-tab-bar{background:var(--bg-secondary);border-radius:12px;gap:6px;padding:4px;display:flex}.picker-tab-pill{color:var(--text-secondary);cursor:pointer;text-align:center;background:0 0;border:none;border-radius:10px;flex:1;padding:8px;font-size:.82rem;font-weight:600;transition:background-color .15s,color .15s,box-shadow .15s}.picker-tab-pill.active{background:var(--bg-card);color:var(--text-primary);box-shadow:0 2px 6px #0000000d}.account-avatar-grid-container{min-height:260px;max-height:380px;overflow-y:auto}.account-gallery-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}@media (width>=600px){.account-gallery-grid{grid-template-columns:repeat(6,1fr)}}.gallery-grid-btn{aspect-ratio:1;background:var(--bg-secondary);cursor:pointer;content-visibility:auto;contain-intrinsic-size:70px 70px;border:2px solid #0000;border-radius:16px;padding:0;transition:border-color .15s,box-shadow .15s,transform .1s;position:relative;overflow:hidden}.gallery-grid-btn:hover{border-color:#0071e359}.gallery-grid-btn:active{opacity:.82}.gallery-grid-btn.selected{border-color:var(--apple-blue);box-shadow:0 0 0 2px #0071e34d}.gallery-thumb-img{object-fit:cover;width:100%;height:100%;display:block}.avatar-check-badge{background:var(--apple-blue);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;top:4px;right:4px}.account-svg-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}@media (width>=600px){.account-svg-grid{grid-template-columns:repeat(4,1fr)}}.svg-grid-btn{background:var(--bg-secondary);cursor:pointer;border:2px solid #0000;border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;transition:background-color .15s,border-color .15s,opacity .1s;display:flex;position:relative}.svg-grid-btn:hover{border-color:#0071e359}.svg-grid-btn:active{opacity:.82}.svg-grid-btn.selected{border-color:var(--apple-blue);background:#0071e314}.svg-item-name{color:var(--text-primary);font-size:.74rem}.account-theme-selector-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.theme-card-btn{background:var(--bg-secondary);border:1.5px solid var(--border-color);cursor:pointer;text-align:left;border-radius:14px;align-items:center;gap:8px;padding:10px 12px;transition:background-color .15s,border-color .15s,opacity .1s;display:flex;position:relative}.theme-card-btn:active{opacity:.88}.theme-card-btn.active{border-color:var(--apple-blue);background:#0071e30f}[data-theme=dark] .theme-card-btn.active{background:#8ab4f81a}.theme-card-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.theme-card-icon.sun{color:#ff9500;background:#ff950026}.theme-card-icon.moon{color:#af52de;background:#af52de26}.theme-card-text{flex-direction:column;gap:1px;display:flex}.theme-card-title{color:var(--text-primary);font-size:.85rem;font-weight:700}.theme-card-sub{color:var(--text-secondary);font-size:.7rem}.theme-active-dot{background:var(--apple-blue);border-radius:50%;width:6px;height:6px;position:absolute;top:10px;right:10px}.account-section-card.danger-zone{border-color:#ff3b3033}.account-logout-card{flex-direction:column;gap:8px;display:flex}.account-logout-desc{color:var(--text-secondary);margin:0;font-size:.78rem;line-height:1.35}.account-logout-btn{color:#ff3b30;cursor:pointer;background:#ff3b301a;border:1px solid #ff3b3033;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:9px 16px;font-size:.84rem;font-weight:600;transition:all .15s;display:inline-flex}.account-logout-btn:hover{background:#ff3b3029}.account-logout-btn:active{opacity:.82}.sheet-backdrop{-webkit-backdrop-filter:blur(10px);z-index:99999;box-sizing:border-box;touch-action:none;overscroll-behavior:contain;background:#00000085;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=641px){.sheet-backdrop{align-items:center;padding:20px}}.sheet-container{background:var(--bg-card);box-sizing:border-box;touch-action:pan-y;overscroll-behavior:contain;width:100%;max-width:460px;max-height:90dvh;padding-bottom:max(12px, env(safe-area-inset-bottom,12px));border-radius:22px 22px 0 0;flex-direction:column;animation:.28s cubic-bezier(.16,1,.3,1) forwards slideUpSheet;display:flex;overflow:hidden;box-shadow:0 -8px 40px #00000040}@media (width>=641px){.sheet-container{border-radius:22px;max-width:420px;padding-bottom:16px;animation:.22s cubic-bezier(.16,1,.3,1) forwards modalScaleIn;box-shadow:0 20px 50px #0000004d}}.sheet-drag-zone{cursor:grab;touch-action:none;justify-content:center;padding:8px 0 2px;display:flex}@media (width>=641px){.sheet-drag-zone{display:none}}.sheet-drag-handle{background:#0003;border-radius:9999px;width:32px;height:4px}[data-theme=dark] .sheet-drag-handle{background:#ffffff40}.sheet-header{border-bottom:1px solid var(--border-color);box-sizing:border-box;justify-content:center;align-items:center;min-height:44px;padding:10px 16px 8px;display:flex;position:relative}.sheet-title-wrap{text-align:center}.sheet-title{color:var(--text-primary);margin:0;font-size:1.02rem;font-weight:700}@media (width<=480px){.sheet-title{font-size:.95rem}}.sheet-sub{color:var(--text-secondary);margin:1px 0 0;font-size:.72rem}.sheet-close-btn{background:var(--bg-secondary);border:1px solid var(--border-color);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:background-color .15s,color .15s,transform .1s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.sheet-close-btn:active{opacity:.7}.sheet-body{padding:12px 16px;overflow-y:auto}.pin-modal-body{flex-direction:column;align-items:center;max-height:calc(85dvh - 60px);padding:12px 16px 18px;display:flex;overflow-y:auto}.pin-form{flex-direction:column;gap:12px;width:100%;max-width:320px;display:flex}.confirm-select-actions{flex-direction:column;gap:8px;width:100%;margin-top:6px;display:flex}.pin-profile-preview{text-align:center;flex-direction:column;align-items:center;gap:5px;display:flex}.pin-preview-avatar{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden;box-shadow:0 3px 10px #00000014}.pin-preview-name{color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:700}.pin-preview-hint{color:var(--text-secondary);margin:0;font-size:.75rem}.pin-boxes-container{justify-content:center;width:100%;display:flex;position:relative}.pin-boxes-row{cursor:pointer;justify-content:center;gap:8px;margin:6px 0 2px;display:flex}.pin-digit-box{background:var(--bg-secondary);border:2px solid var(--border-color);width:44px;height:48px;color:var(--text-primary);-webkit-user-select:none;user-select:none;border-radius:10px;justify-content:center;align-items:center;font-size:1.35rem;font-weight:700;transition:border-color .15s,box-shadow .15s,background-color .15s;display:flex}@media (width<=480px){.pin-digit-box{border-radius:8px;width:38px;height:44px;font-size:1.2rem}}.pin-digit-box.active{border-color:var(--apple-blue);background:var(--bg-card);box-shadow:0 0 0 3px #0071e32e}.pin-digit-box.filled{border-color:var(--apple-blue);color:var(--apple-blue)}.pin-sr-only-input{opacity:0;pointer-events:auto;cursor:pointer;z-index:2;width:100%;height:50px;position:absolute;top:0;left:0;font-size:16px!important}[data-theme=dark] .pin-digit-box{color:#fff;background:#ffffff0d;border-color:#ffffff1f}[data-theme=dark] .pin-digit-box.active{background:#ffffff17;border-color:#8ab4f8;box-shadow:0 0 0 3px #8ab4f833}[data-theme=dark] .pin-digit-box.filled{color:#8ab4f8;border-color:#8ab4f8}.pin-fields-list{flex-direction:column;gap:10px;width:100%;display:flex}.pin-field-item{flex-direction:column;gap:4px;display:flex}.pin-field-label{color:var(--text-secondary);font-size:.76rem;font-weight:600}.pin-field-input-wrap{align-items:center;display:flex;position:relative}.pin-clean-input{background:var(--bg-secondary);border:1.5px solid var(--border-color);width:100%;height:40px;color:var(--text-primary);letter-spacing:3px;box-sizing:border-box;border-radius:10px;outline:none;padding:0 38px 0 12px;font-weight:600;transition:border-color .15s,box-shadow .15s;font-size:14px!important}.pin-clean-input:focus{border-color:var(--apple-blue);box-shadow:0 0 0 3px #0071e326}[data-theme=dark] .pin-clean-input{color:#fff;background:#ffffff0d;border-color:#ffffff1f}[data-theme=dark] .pin-clean-input:focus{border-color:#8ab4f8;box-shadow:0 0 0 3px #8ab4f833}.pin-eye-btn{cursor:pointer;opacity:.75;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;font-size:.9rem;transition:opacity .15s;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.pin-eye-btn:hover{opacity:1}.pin-secondary-action-btn{width:100%;color:var(--text-secondary);border:1px dashed var(--border-color);cursor:pointer;background:0 0;border-radius:10px;padding:8px 12px;font-size:.78rem;font-weight:600;transition:background-color .15s,color .15s,border-color .15s}.pin-secondary-action-btn:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--text-secondary)}.pin-secondary-action-btn:active{opacity:.8}.pin-error-banner{color:#ff3b30;text-align:center;background:#ff3b301a;border:1px solid #ff3b3033;border-radius:8px;padding:6px 10px;font-size:.78rem}.pin-primary-btn{background:var(--apple-blue);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;border-radius:12px;width:100%;padding:11px;font-size:.86rem;font-weight:600;transition:opacity .15s,background-color .15s}.pin-primary-btn:disabled{opacity:.45;cursor:not-allowed}.pin-primary-btn:not(:disabled):hover{background:#0062cc}.pin-primary-btn:not(:disabled):active{opacity:.88}.pin-forgot-wrap{flex-direction:column;align-items:center;gap:5px;display:flex}.pin-forgot-link{color:var(--apple-blue);cursor:pointer;background:0 0;border:none;font-size:.78rem;text-decoration:underline}.pin-forgot-box{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);text-align:left;border-radius:10px;padding:8px 12px;font-size:.74rem;line-height:1.35}.pin-notice-card{text-align:left;background:#0071e314;border:1px solid #0071e333;border-radius:12px;padding:10px 12px}.pin-notice-title{color:var(--text-primary);margin:0 0 2px;font-size:.82rem;font-weight:600}.pin-notice-desc{color:var(--text-secondary);margin:0;font-size:.74rem;line-height:1.35}.logout-dialog{gap:12px;max-width:380px;padding:18px}.logout-dialog-header{text-align:center;flex-direction:column;gap:4px;display:flex}.logout-dialog-title{color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:700}.logout-dialog-desc{color:var(--text-secondary);margin:0;font-size:.8rem;line-height:1.35}.logout-dialog-actions{gap:8px;display:flex}.dialog-btn{cursor:pointer;border:none;border-radius:12px;flex:1;padding:10px;font-size:.84rem;font-weight:600}.dialog-btn.cancel{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.dialog-btn.confirm{color:#fff;background:#ff3b30}@media (width<=480px){.student-navbar{padding:0!important}.student-navbar-inner{gap:8px;padding:8px 12px}.navbar-profile-pill{gap:5px;min-height:34px;padding:4px 8px 4px 4px}.navbar-user-name{display:none}.navbar-likes-pill{padding:2px 6px;font-size:.72rem}.navbar-icon-btn{width:34px;height:34px}}.home-welcome-hero .welcome-avatar-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;padding:0;transition:transform .15s}.home-welcome-hero .welcome-avatar-btn:hover{transform:scale(1.05)}.home-welcome-hero .welcome-avatar-circle{border:2px solid var(--border-color);background:var(--bg-card);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.home-welcome-hero .welcome-avatar-placeholder{width:48px;height:48px;color:var(--apple-blue);cursor:pointer;background:#0071e31a;border-radius:50%;justify-content:center;align-items:center;display:flex}.home-welcome-hero .welcome-group-badge{cursor:pointer;border:none;transition:transform .15s}.home-welcome-hero .welcome-group-badge:hover{transform:scale(1.03)}.home-stat-card.is-clickable{text-align:left;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}.home-stat-card.is-clickable:hover{border-color:#0071e34d;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.home-stat-card.is-clickable:active{transform:scale(.97)}.podium-avatar-placeholder{width:50px;height:50px;color:var(--text-tertiary);border:2px dashed #0000002e;border-radius:50%;justify-content:center;align-items:center;margin-bottom:6px;font-size:1.1rem;font-weight:700;display:flex}[data-theme=dark] .podium-avatar-placeholder{border-color:#fff3}.podium-name.empty{color:var(--text-tertiary);opacity:.6}.podium-points-tag.empty{color:var(--text-tertiary);background:#0000000d}[data-theme=dark] .podium-points-tag.empty{background:#ffffff0f}.podium-pedestal.empty{opacity:.45;filter:grayscale(40%)}.rank-badge-capsule{color:#fff;border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;font-size:.8rem;font-weight:800;display:flex}.rank-badge-capsule.gold{background:linear-gradient(135deg,#f5a623 0%,#d97706 100%);box-shadow:0 2px 6px #d9770659}.rank-badge-capsule.silver{background:linear-gradient(135deg,#9ca3af 0%,#6b7280 100%);box-shadow:0 2px 6px #6b728059}.rank-badge-capsule.bronze{background:linear-gradient(135deg,#d97706 0%,#b45309 100%);box-shadow:0 2px 6px #b4530959}.shop-search-wrapper{width:100%}.shop-search-bar{background:var(--bg-card);border:1px solid var(--border-color);box-sizing:border-box;border-radius:10px;align-items:center;gap:8px;height:38px;padding:0 10px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex}[data-theme=dark] .shop-search-bar{background:#ffffff0d;border-color:#ffffff1a}.shop-search-bar:focus-within{background:var(--bg-card);border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b26}[data-theme=dark] .shop-search-bar:focus-within{background:#ffffff14;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}.shop-search-bar .search-svg{color:var(--text-tertiary);flex-shrink:0;transition:color .2s}.shop-search-bar:focus-within .search-svg{color:#f59e0b}.shop-search-input,[data-theme=dark] .shop-search-input,[data-theme=dark] input[type=text].shop-search-input,input[type=text].shop-search-input{flex:1;min-width:0;font-family:inherit;height:100%!important;box-shadow:none!important;color:var(--text-primary)!important;background:0 0!important;border:none!important;border-radius:0!important;outline:none!important;margin:0!important;padding:0!important;font-size:.84rem!important;line-height:normal!important}.shop-search-input:focus,[data-theme=dark] .shop-search-input:focus,[data-theme=dark] input[type=text].shop-search-input:focus{box-shadow:none!important;border:none!important;outline:none!important}.shop-search-input::placeholder{color:var(--text-tertiary);opacity:.75}.shop-search-clear{width:20px;height:20px;color:var(--text-secondary);cursor:pointer;background:#8e8e932e;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;font-size:.68rem;line-height:1;transition:background .15s,color .15s;display:inline-flex}.shop-search-clear:hover{color:var(--text-primary);background:#8e8e9359}.hero-eyebrow-actions{align-items:center;gap:8px;display:flex}.hero-requests-pill-btn{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #ffffff40;border-radius:9999px;padding:2px 8px;font-size:.68rem;font-weight:700;transition:all .15s}.hero-requests-pill-btn:hover{background:#ffffff40}.detail-actions-col{flex-direction:column;gap:6px;width:100%;display:flex}.detail-order-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#34c759 0%,#28a745 100%);border:none;border-radius:12px;width:100%;padding:11px;font-size:.88rem;font-weight:700;transition:transform .15s;box-shadow:0 3px 10px #34c7594d}.detail-order-btn:active{transform:scale(.97)}.detail-secondary-target-btn{background:var(--bg-secondary);width:100%;color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;border-radius:10px;padding:8px;font-size:.78rem;font-weight:600}.detail-secondary-target-btn:hover{background:var(--bg-card);color:var(--text-primary)}.confirm-order-dialog{text-align:center;flex-direction:column;gap:12px;max-width:380px;padding:18px;display:flex}.confirm-order-header{flex-direction:column;align-items:center;gap:4px;display:flex}.confirm-order-title{color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:700}.confirm-order-desc{color:var(--text-secondary);margin:0;font-size:.8rem;line-height:1.35}.confirm-order-points-badge{color:#b45309;background:#f59e0b1f;border-radius:9999px;align-items:center;gap:5px;margin-top:2px;padding:4px 10px;font-size:.8rem;font-weight:700;display:inline-flex}[data-theme=dark] .confirm-order-points-badge{color:#fbbf24;background:#f59e0b38}.confirm-order-actions{gap:8px;display:flex}.order-confirm-btn{color:#fff;background:#34c759}.requests-sheet-modal{max-width:440px}.requests-modal-list{flex-direction:column;gap:8px;max-height:360px;padding:10px 14px 18px;display:flex;overflow-y:auto}.request-card-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;align-items:center;gap:8px;padding:9px 12px;display:flex}.req-item-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.req-item-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.84rem;font-weight:700;overflow:hidden}.req-item-sub{color:var(--text-secondary);font-size:.7rem}.req-item-right{align-items:center;gap:6px;display:flex}.req-status-tag.pending{color:#b45309;background:#f59e0b26;border-radius:6px;padding:2px 6px;font-size:.65rem;font-weight:700}[data-theme=dark] .req-status-tag.pending{color:#fbbf24;background:#f59e0b40}.req-cancel-btn{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;font-size:.8rem;display:flex}.req-cancel-btn:hover{color:#ff3b30}.requests-empty{text-align:center;color:var(--text-secondary);padding:24px 14px;font-size:.82rem}
