*{-webkit-tap-highlight-color:transparent}body{font-family:'Onest',sans-serif;overscroll-behavior:none}body.guest-mode:not(.guest-profile-mode){overflow:hidden;max-height:100vh}.snap-feed{scroll-snap-type:y mandatory}.snap-item{scroll-snap-align:start}#shorts-container{position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:420px}@media (min-width:768px){#shorts-container{top:20px;bottom:20px;max-height:860px;border-radius:18px;overflow:hidden}}#shorts-swiper{width:100%;height:100%}#shorts-swiper .swiper-slide{position:relative;overflow:hidden;background:#000}#shorts-swiper .swiper-slide video{object-fit:contain;transition:transform 0.2s ease}.short-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:rgba(255,255,255,.15);z-index:10}.short-progress-fill{height:100%;background:#fff;width:0%;transition:none;border-radius:2px}.short-action-btn{width:44px;height:44px;border-radius:50%;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}.short-mute-btn{position:absolute;top:12px;right:12px;z-index:20}.short-close-btn{position:absolute;top:12px;left:12px;z-index:20}#shorts-overlay .swiper-pagination{display:none}.dbl-heart{position:absolute;z-index:30;pointer-events:none;animation:dblHeart 0.8s ease forwards}.dbl-heart svg{width:80px;height:80px;fill:#ef4444;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}@keyframes dblHeart{0%{transform:scale(0);opacity:1}30%{transform:scale(1.3)}50%{transform:scale(1)}100%{transform:scale(1);opacity:0}}.pause-indicator{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:15;pointer-events:none;animation:pauseFade 0.3s ease forwards}.pause-indicator svg{width:64px;height:64px;fill:white;filter:drop-shadow(0 2px 12px rgba(0,0,0,.6))}@keyframes pauseFade{0%{opacity:0;transform:scale(0.6)}50%{opacity:1;transform:scale(1.1)}100%{opacity:0.85;transform:scale(1)}}.play-flash{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:15;pointer-events:none;animation:playFlash 0.4s ease forwards}.play-flash svg{width:64px;height:64px;fill:white;filter:drop-shadow(0 2px 12px rgba(0,0,0,.6))}@keyframes playFlash{0%{opacity:0.85;transform:scale(1)}100%{opacity:0;transform:scale(1.3)}}.speed-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;background:rgba(0,0,0,.7);color:#fff;font-size:14px;font-weight:600;padding:6px 16px;border-radius:20px;pointer-events:none}.quality-menu{position:absolute;bottom:60px;right:12px;z-index:25;background:rgba(0,0,0,.85);border-radius:12px;overflow:hidden;backdrop-filter:blur(8px)}.quality-menu button{display:block;width:100%;padding:8px 20px;font-size:13px;color:#ccc;text-align:left;white-space:nowrap}.quality-menu button:hover,.quality-menu button.active{color:#fff;background:rgba(255,255,255,.1)}.quality-menu button.active{color:#14b8a6}.short-desc-wrap{max-height:2.8em;overflow:hidden;transition:max-height 0.3s ease}.short-desc-wrap.expanded{max-height:200px}.short-avatar{width:40px;height:40px;border-radius:50%;border:2px solid #fff;object-fit:cover}#video-comments-panel:not(.hidden){display:flex;flex-direction:column}.skeleton{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%);background-size:200% 100%;animation:shimmer 1.5s infinite linear}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}.highlights-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-top:8px}.highlight-tile{background:#ffffff;border:1px solid #e5e7eb;border-radius:12px;padding:14px 12px;transition:.2s}.highlight-tile:hover{border-color:#0d9488;background:#0d948808}.highlight-tile .hl-val{font-family:'JetBrains Mono',monospace;font-size:1.2rem;font-weight:700;color:#0d9488}.highlight-tile .hl-sub{font-size:0.72rem;color:#9ca3af;margin-top:4px}.profile-stats-block{margin-bottom:18px}.profile-stats-block h4{font-size:0.8rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.profile-stats-kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}@media (max-width:480px){.profile-stats-kv{grid-template-columns:1fr}}.profile-stat-cell{background:#ffffff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px}.profile-stat-cell .psv{font-family:'JetBrains Mono',monospace;font-size:1.05rem;font-weight:700;color:#111827}.profile-stat-cell .psl{font-size:0.72rem;color:#9ca3af;margin-top:4px;line-height:1.35}.subject-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.subject-chip{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;padding:4px 12px;font-size:0.8rem;color:#4b5563}.rank-comp-rows{display:flex;flex-direction:column;gap:8px}.rank-comp-row{font-size:0.78rem}.rank-comp-top{display:flex;justify-content:space-between;margin-bottom:4px;color:#9ca3af}.rank-comp-track{height:7px;background:#f3f4f6;border-radius:4px;overflow:hidden}.rank-comp-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#0d9488,#6366f1);transition:width 0.85s}.mem-status-line{font-size:0.78rem;color:#9ca3af;margin-top:8px;padding:8px 12px;background:#ffffff;border-radius:8px}.wall-hidden-note{font-size:0.85rem;color:#9ca3af;padding:16px;text-align:center;background:#ffffff;border-radius:10px}.skill-tree-central{display:flex;align-items:center;gap:14px;padding:14px 16px;background:linear-gradient(135deg,#0d948811,#6366f111);border:1px solid #e5e7eb;border-radius:14px;margin-bottom:12px}.skill-tree-central .stc-emoji{font-size:2.1rem;line-height:1;flex-shrink:0;width:52px;height:52px;display:grid;place-items:center;background:#f3f4f6;border-radius:50%;border:2px solid #0d9488}.skill-tree-central .stc-body{flex:1;min-width:0}.skill-tree-central .stc-name{font-size:0.78rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em}.skill-tree-central .stc-level{font-family:'JetBrains Mono',monospace;font-size:1.35rem;font-weight:700;color:#111827;line-height:1.1;margin-top:2px}.skill-tree-central .stc-level .stc-lv-label{font-size:0.7rem;color:#9ca3af;font-weight:500;margin-right:4px}.skill-tree-central .stc-xp{font-size:0.72rem;color:#9ca3af;margin-top:4px}.skill-tree-central .stc-bar{height:6px;background:#f3f4f6;border-radius:3px;overflow:hidden;margin-top:6px}.skill-tree-central .stc-bar-fill{height:100%;background:linear-gradient(90deg,#0d9488,#6366f1);transition:width 0.7s ease}.skill-tree-branches{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.skill-tree-branch{background:#ffffff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;transition:.2s}.skill-tree-branch:hover{border-color:#0d9488;background:#0d948808}.skill-tree-branch.is-locked{opacity:.55}.skill-tree-branch .stb-row{display:flex;align-items:center;gap:8px}.skill-tree-branch .stb-emoji{font-size:1.2rem;line-height:1;flex-shrink:0}.skill-tree-branch .stb-name{font-size:0.82rem;color:#4b5563;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-tree-branch .stb-level{font-family:'JetBrains Mono',monospace;font-size:0.95rem;font-weight:700;color:#0d9488}.skill-tree-branch.is-locked .stb-level{color:#6b7280}.skill-tree-branch .stb-bar{height:4px;background:#f3f4f6;border-radius:2px;overflow:hidden;margin-top:8px}.skill-tree-branch .stb-bar-fill{height:100%;background:linear-gradient(90deg,#0d9488,#6366f1);transition:width 0.7s ease}.material-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-bottom:14px}.material-hero .mhx{background:linear-gradient(135deg,#0d948811,#6366f111);border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px}.material-hero .mhx-val{font-family:'JetBrains Mono',monospace;font-size:1.35rem;font-weight:700;color:#0d9488;line-height:1.1}.material-hero .mhx-sub{font-size:0.72rem;color:#6b7280;margin-top:4px}.material-records{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-bottom:14px}.material-records .mrc{background:#ffffff;border:1px solid #e5e7eb;border-radius:10px;padding:9px 12px}.material-records .mrc-eyebrow{font-size:0.66rem;text-transform:uppercase;letter-spacing:.04em;color:#f59e0b;font-weight:600}.material-records .mrc-val{font-family:'JetBrains Mono',monospace;font-size:0.98rem;font-weight:700;color:#111827;margin-top:2px}.material-records .mrc-sub{font-size:0.68rem;color:#6b7280;margin-top:2px}.material-subjects{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.material-subject-row{background:#ffffff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px}.material-subject-row .msr-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.material-subject-row .msr-name{font-size:0.86rem;color:#111827;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-subject-row .msr-pct{font-family:'JetBrains Mono',monospace;font-size:0.86rem;font-weight:700;color:#0d9488;flex-shrink:0}.material-subject-row .msr-bar{height:5px;background:#f3f4f6;border-radius:3px;overflow:hidden;margin-top:6px}.material-subject-row .msr-bar-fill{height:100%;background:linear-gradient(90deg,#0d9488,#6366f1);transition:width 0.7s ease}.material-subject-row .msr-sub{font-size:0.7rem;color:#9ca3af;margin-top:4px}.material-tracks{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.material-tracks .mtr{background:#ffffff;border:1px solid #e5e7eb;border-radius:10px;padding:9px 12px}.material-tracks .mtr-name{font-size:0.72rem;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.material-tracks .mtr-val{font-family:'JetBrains Mono',monospace;font-size:1rem;font-weight:700;color:#111827;margin-top:2px}.material-tracks .mtr-acc{font-size:0.72rem;color:#0d9488;font-weight:600}.material-cal-wrap{margin-top:14px;padding-top:14px;border-top:1px solid #e5e7eb;position:relative}.material-cal-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:8px}.material-cal-title{font-size:0.78rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.material-cal-sub{font-size:0.72rem;color:#9ca3af;margin-left:6px}.material-cal-toggle{background:none;border:1px solid #e5e7eb;border-radius:999px;padding:4px 12px;font-size:0.72rem;color:#0d9488;cursor:pointer;transition:background .15s,border-color .15s}.material-cal-toggle:hover{background:#0d948811;border-color:#0d9488}.material-cal-scroll{overflow-x:auto;padding:6px 0}.material-cal{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,12px);grid-auto-columns:12px;gap:3px}.material-cal-cell{width:12px;height:12px;border-radius:2px;background:#f3f4f6;flex-shrink:0;display:inline-block;cursor:default;transition:transform .12s ease}.material-cal-cell:hover{transform:scale(1.4);z-index:2;outline:1px solid #0d9488;outline-offset:1px}.material-cal-l0{background:#f3f4f6}.material-cal-l1{background:#99f6e4}.material-cal-l2{background:#2dd4bf}.material-cal-l3{background:#0d9488}.material-cal-cell.is-future{background:transparent;cursor:default}.material-cal-cell.is-future:hover{transform:none;outline:none}.material-cal-tooltip{position:absolute;pointer-events:none;background:#111827;color:#fff;font-size:0.7rem;line-height:1.3;padding:6px 9px;border-radius:6px;white-space:nowrap;opacity:0;transition:opacity .12s;z-index:20;transform:translate(-50%,-100%)}.material-cal-tooltip.is-shown{opacity:1}.material-cal-legend{display:flex;align-items:center;gap:4px;font-size:0.68rem;color:#9ca3af;margin-top:6px}@keyframes ambPulseGlow{0%,100%{box-shadow:0 0 8px rgba(13,148,136,.2)}50%{box-shadow:0 0 22px rgba(13,148,136,.45)}}@keyframes ambUnlock{from{filter:blur(2px);opacity:.4;transform:scale(.95)}to{filter:blur(0);opacity:1;transform:scale(1)}}.amb-tier-unlocked{animation:ambUnlock .5s ease-out forwards}.amb-quiz-opt:active{transform:scale(.97)}.social-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:100;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:.25s}.social-modal-overlay.open{opacity:1;pointer-events:auto}.social-modal{width:100%;max-width:480px;background:#ffffff;border-radius:18px 18px 0 0;max-height:70vh;display:flex;flex-direction:column}.social-modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 10px;border-bottom:1px solid #e5e7eb}.social-modal-head h3{font-size:1rem;font-weight:600}.social-modal-body{overflow-y:auto;flex:1}.social-modal-row{display:flex;align-items:center;gap:12px;padding:12px 18px;cursor:pointer;border-bottom:1px solid #e5e7eb;transition:background .15s}.social-modal-row:hover{background:#f3f4f6}.social-modal-av{width:36px;height:36px;border-radius:50%;background:#0d948833;display:flex;align-items:center;justify-content:center;font-size:0.95rem;flex-shrink:0}.privacy-row{display:flex;align-items:flex-start;gap:10px;padding:8px 0}.privacy-note{font-size:0.8rem;color:#9ca3af}.animate-scale-in{animation:scaleIn .15s ease-out}@keyframes scaleIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.msg-appear{animation:msgIn .2s ease-out}@keyframes msgIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-date-sep{display:flex;align-items:center;gap:12px;padding:8px 0}.chat-date-sep::before,.chat-date-sep::after{content:'';flex:1;height:1px;background:#e5e7eb}.msg-bubble{position:relative;transition:background .15s}.msg-bubble.ctx-active{background:rgba(13,148,136,.08)!important}.msg-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.msg-react-pill{display:inline-flex;align-items:center;gap:2px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;padding:2px 8px 2px 4px;font-size:12px;cursor:pointer;transition:.15s}.msg-react-pill:hover{border-color:#0d9488}.msg-react-pill.mine{border-color:#0d9488;background:#0d948820}.reply-preview{border-left:2px solid #0d9488;padding:2px 8px;margin-bottom:4px;border-radius:0 6px 6px 0;background:rgba(13,148,136,.06);cursor:pointer}.reply-preview-mine{border-left-color:#6ee7b7;background:rgba(110,231,183,.06)}