*{box-sizing:border-box;margin:0;padding:0}body{color:#1a1a2e;background:#eef0f4;min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif}.navbar{z-index:100;background:#fff;border-bottom:1px solid #e9ecef;justify-content:space-between;align-items:center;height:60px;padding:0 2rem;display:flex;position:sticky;top:0}.navbar--landing{background:linear-gradient(90deg,#3949ab 52%,#fff 52%);border-bottom:none}.navbar--landing .navbar-brand{color:#fff}.navbar-brand{color:#5c6bc0;font-size:1.4rem;font-weight:700;text-decoration:none}.navbar-links{gap:1.5rem;display:flex}.navbar-links a{color:#495057;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .2s}.navbar-links a:hover{color:#5c6bc0}.main-content{max-width:1100px;margin:0 auto;padding:2.5rem 1.5rem}.landing{flex-direction:column;display:flex}.landing-hero{background:#fff;grid-template-columns:1fr 1fr;min-height:520px;display:grid;position:relative;overflow:hidden}.landing-hero:before{content:"";clip-path:polygon(0 0,52% 0,41% 100%,0 100%);background:linear-gradient(150deg,#3949ab 0%,#5c6bc0 100%);position:absolute;inset:0}.landing-hero-left{z-index:1;color:#fff;flex-direction:column;justify-content:center;padding:4.5rem 2rem 4.5rem 8%;display:flex;position:relative}.landing-headline{letter-spacing:-.02em;margin-bottom:1.25rem;font-size:3.2rem;font-weight:800;line-height:1.1}.landing-subline{color:#ffffffd9;max-width:340px;font-size:1.05rem;line-height:1.65}.landing-hero-right{z-index:1;flex-direction:column;justify-content:center;padding:4.5rem 8% 4.5rem 5rem;display:flex;position:relative}.landing-cta-heading{color:#1a1a2e;margin-bottom:.4rem;font-size:1.4rem;font-weight:700}.landing-cta-sub{color:#6c757d;margin-bottom:1.75rem;font-size:.9rem}.landing-cta-buttons{flex-direction:column;gap:.75rem;max-width:320px;display:flex}.landing-cta-login{color:#6c757d;margin-top:1.25rem;font-size:.85rem}.landing-cta-login a{color:#5c6bc0;font-weight:600;text-decoration:none}.landing-container{max-width:1100px;margin:0 auto;padding:0 1.5rem}.landing-section{background:#fff;padding:5rem 0}.landing-section--alt{background:#eef0f4}.landing-section-title{color:#1a1a2e;text-align:center;margin-bottom:3rem;font-size:1.7rem;font-weight:700}.landing-features{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.landing-feature-card{background:#fff;border:1px solid #e9ecef;border-radius:14px;padding:2rem 1.75rem;transition:box-shadow .2s,transform .15s;box-shadow:0 2px 12px #0000000f}.landing-section--alt .landing-feature-card{background:#fff}.landing-feature-card:hover{transform:translateY(-3px);box-shadow:0 6px 24px #5c6bc021}.landing-feature-icon{margin-bottom:.9rem;font-size:2rem}.landing-feature-card h3{color:#1a1a2e;margin-bottom:.5rem;font-size:1.05rem;font-weight:700}.landing-feature-card p{color:#6c757d;font-size:.9rem;line-height:1.6}.landing-steps{justify-content:center;align-items:flex-start;gap:1rem;display:flex}.landing-step{text-align:center;flex:1;max-width:240px}.landing-step-num{color:#fff;background:linear-gradient(135deg,#3949ab,#5c6bc0);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 1rem;font-size:1.3rem;font-weight:800;display:flex}.landing-step h3{color:#1a1a2e;margin-bottom:.4rem;font-size:1rem;font-weight:700}.landing-step p{color:#6c757d;font-size:.88rem;line-height:1.55}.landing-step-arrow{color:#adb5bd;flex-shrink:0;margin-top:1rem;font-size:1.5rem}.landing-stats{background:linear-gradient(135deg,#3949ab 0%,#5c6bc0 100%);padding:3rem 1.5rem}.landing-stats-inner{justify-content:center;align-items:center;gap:2rem;max-width:700px;margin:0 auto;display:flex}.landing-stat{flex-direction:column;align-items:center;gap:.25rem;display:flex}.landing-stat-num{color:#fff;font-size:2rem;font-weight:800}.landing-stat-label{color:#ffffffbf;text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.landing-stat-divider{background:#ffffff40;width:1px;height:40px}.landing-footer{background:#1a1a2e;padding:1.75rem 1.5rem}.landing-footer-inner{justify-content:space-between;align-items:center;display:flex}.landing-footer-brand{color:#fff;font-size:1.1rem;font-weight:700}.landing-footer-links{gap:1.5rem;display:flex}.landing-footer-links a{color:#ffffffa6;font-size:.88rem;text-decoration:none;transition:color .2s}.landing-footer-links a:hover{color:#fff}@media (width<=768px){.landing-hero{grid-template-columns:1fr;min-height:auto}.landing-hero:before{clip-path:polygon(0 0,100% 0,100% 52%,0 60%)}.landing-hero-left{padding:4rem 1.5rem 5rem}.landing-headline{font-size:2.2rem}.landing-subline{max-width:100%}.landing-hero-right{padding:3rem 1.5rem 3.5rem}.landing-cta-buttons{max-width:100%}.landing-features{grid-template-columns:1fr}.landing-steps{flex-direction:column;align-items:center}.landing-step-arrow{margin:0;transform:rotate(90deg)}.landing-stats-inner{flex-direction:column;gap:1.5rem}.landing-stat-divider{width:40px;height:1px}.navbar--landing{background:#3949ab;border-bottom:none}.landing-figures{display:none}}.landing-figures{pointer-events:none;z-index:2;position:absolute;inset:0}.landing-figure{filter:drop-shadow(0 1px 3px #0006)drop-shadow(0 0 1px #00000040);opacity:0;animation-name:figureSlide;animation-timing-function:linear;animation-iteration-count:1;animation-fill-mode:forwards;position:absolute}@keyframes figureSlide{0%{opacity:0;transform:translate(0)}6%{opacity:1}88%{opacity:1}to{opacity:0;transform:translate(calc(100vw + 160px))}}.lf-1{animation-duration:5.5s;animation-delay:0s;bottom:32px;left:-90px}.lf-2{animation-duration:5s;animation-delay:.8s;bottom:26px;left:-100px}.lf-3{animation-duration:4s;animation-delay:.3s;bottom:36px;left:-75px}.lf-4{animation-duration:5.5s;animation-delay:1.5s;bottom:22px;left:-90px}.lf-5{animation-duration:6s;animation-delay:1s;bottom:30px;left:-85px}.lf-6{animation-name:figureGrind;animation-duration:5s;animation-timing-function:linear;animation-iteration-count:1;animation-delay:.5s;animation-fill-mode:forwards;bottom:-80px;left:calc(41% - 22px)}@keyframes figureGrind{0%{opacity:0;transform:translate(0)}10%{opacity:1}88%{opacity:1}to{opacity:0;transform:translate(165px,-640px)}}@media (prefers-reduced-motion:reduce){.landing-figures{display:none}}.btn{cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.75rem;font-size:1rem;font-weight:600;text-decoration:none;transition:opacity .2s,transform .1s;display:inline-block}.btn:hover{opacity:.9;transform:translateY(-1px)}.btn-primary{color:#fff;background:#5c6bc0}.btn-secondary{color:#1a1a2e;background:#e9ecef}.btn-danger{color:#fff;background:#dc3545}.btn-outline{color:#5c6bc0;background:0 0;border:2px solid #5c6bc0}.btn-outline:hover{color:#fff;background:#5c6bc0}.btn-lg{text-align:center;width:100%;padding:.9rem 2rem;font-size:1.05rem}.auth-page{background:#fff;border-radius:12px;max-width:420px;margin:4rem auto;padding:2.5rem;box-shadow:0 4px 24px #0000001a}.auth-page h2{margin-bottom:1.5rem;font-size:1.6rem}.auth-page form{flex-direction:column;gap:.9rem;display:flex}.auth-page input{border:1px solid #dee2e6;border-radius:8px;outline:none;padding:.7rem 1rem;font-size:.95rem;transition:border-color .2s}.auth-page input:focus{border-color:#5c6bc0}.auth-page button{color:#fff;cursor:pointer;background:#5c6bc0;border:none;border-radius:8px;margin-top:.5rem;padding:.75rem;font-size:1rem;font-weight:600;transition:opacity .2s}.auth-page button:hover{opacity:.9}.auth-page p{color:#6c757d;margin-top:1rem;font-size:.9rem}.auth-page a{color:#5c6bc0}.page h2{margin-bottom:1rem;font-size:1.8rem}.page p{color:#6c757d}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.page-subtitle{color:#6c757d;margin-top:.25rem;margin-bottom:0}.btn-full{text-align:center;width:100%}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.nav-logout{cursor:pointer;color:#dc3545;background:0 0;border:none;padding:0;font-size:.9rem;font-weight:500;transition:opacity .2s}.nav-logout:hover{opacity:.75}.nav-register{background:#5c6bc0;border-radius:6px;padding:.35rem .85rem;color:#fff!important}.create-club-form{background:#fff;border-radius:12px;flex-direction:column;gap:1.25rem;max-width:560px;margin-top:1rem;padding:2rem;display:flex;box-shadow:0 4px 24px #0000001a}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:#495057;font-size:.9rem;font-weight:600}.form-group input,.form-group textarea,.form-group select{resize:vertical;background:#fff;border:1px solid #dee2e6;border-radius:8px;outline:none;padding:.7rem 1rem;font-family:inherit;font-size:.95rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#5c6bc0}.required{color:#dc3545}.field-hint{color:#adb5bd;margin:0;font-size:.78rem}p.field-error{color:#dc3545;margin:0;font-size:.85rem}p.form-error{color:#dc3545;background:#fff5f5;border:1px solid #f5c6cb;border-radius:8px;padding:.6rem 1rem;font-size:.9rem}.tag-input-wrapper{background:#fff;border:1px solid #dee2e6;border-radius:8px;flex-wrap:wrap;gap:.4rem;padding:.5rem;transition:border-color .2s;display:flex}.tag-input-wrapper:focus-within{border-color:#5c6bc0}.tag-input-wrapper input{background:0 0;border:none;outline:none;flex:1;min-width:140px;padding:.25rem .35rem;font-size:.9rem}.tags-list{flex-wrap:wrap;gap:.35rem;display:flex}.tag{color:#3949ab;letter-spacing:.01em;background:#e8eaf6;border-radius:20px;align-items:center;gap:.25rem;padding:.25rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.tag-remove{cursor:pointer;color:#3949ab;opacity:.6;background:0 0;border:none;padding:0;font-size:1rem;line-height:1;transition:opacity .15s}.tag-remove:hover{opacity:1}.suggestions{flex-wrap:wrap;gap:.4rem;margin-top:.25rem;display:flex}.suggestion-chip{cursor:pointer;color:#495057;background:#f8f9fa;border:1px solid #dee2e6;border-radius:20px;padding:.2rem .7rem;font-size:.8rem;transition:background .15s,border-color .15s}.suggestion-chip:hover{color:#3949ab;background:#e8eaf6;border-color:#5c6bc0}.explore-search-row{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.explore-search-wrap{flex:1;min-width:220px;position:relative}.explore-search-icon{color:#adb5bd;pointer-events:none;flex-shrink:0;width:16px;height:16px;position:absolute;top:50%;left:.9rem;transform:translateY(-50%)}.explore-search-input{background:#f4f5f7;border:1.5px solid #dee2e6;border-radius:24px;outline:none;width:100%;padding:.75rem 2.5rem .75rem 2.6rem;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s,background .15s}.explore-search-input:focus{background:#fff;border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc01f}.explore-search-hint{color:#adb5bd;pointer-events:none;-webkit-user-select:none;user-select:none;background:#e9ecef;border:1px solid #dee2e6;border-radius:4px;padding:.1rem .4rem;font-family:inherit;font-size:.75rem;line-height:1.5;position:absolute;top:50%;right:.8rem;transform:translateY(-50%)}.explore-search-clear{color:#adb5bd;cursor:pointer;background:0 0;border:none;padding:0;font-size:1.1rem;line-height:1;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.explore-search-clear:hover{color:#495057}.explore-interests{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.explore-interest-chip{cursor:pointer;color:#495057;background:#f8f9fa;border:1.5px solid #dee2e6;border-radius:20px;padding:.3rem .85rem;font-family:inherit;font-size:.82rem;transition:background .15s,border-color .15s,color .15s}.explore-interest-chip:hover{color:#3949ab;background:#e8eaf6;border-color:#5c6bc0}.explore-interest-chip.active{color:#fff;background:linear-gradient(135deg,#3949ab,#5c6bc0);border-color:#0000}.explore-active-filter{color:#6c757d;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.85rem;display:flex}.explore-active-chip{color:#3949ab;background:#e8eaf6;border-radius:20px;align-items:center;gap:.3rem;padding:.2rem .65rem;font-size:.82rem;font-weight:500;display:inline-flex}.explore-active-chip button{cursor:pointer;color:#3949ab;opacity:.6;background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.explore-active-chip button:hover{opacity:1}.clubs-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;margin-top:.5rem;display:grid}.club-card{color:inherit;background:#fff;border:none;border-top:3px solid #5c6bc0;border-radius:12px;text-decoration:none;transition:box-shadow .2s,transform .15s;overflow:hidden;box-shadow:0 2px 12px #00000012}.club-card:hover{transform:translateY(-2px);box-shadow:0 6px 24px #5c6bc026}.club-card-private{background:#fafafa;border-top-color:#adb5bd}.club-card-private:hover{box-shadow:0 6px 20px #00000017}.club-card-name-row{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.club-card-name-row .club-card-name{margin-bottom:0}.club-card-body{padding:1.25rem}.club-card-name{color:#1a1a2e;letter-spacing:-.01em;margin-bottom:.4rem;font-size:1.1rem;font-weight:700}.club-card-desc{color:#6c757d;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.75rem;font-size:.88rem;line-height:1.5;display:-webkit-box;overflow:hidden}.club-card-meta{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.meta-chip{color:#495057;background:#f0f2f5;border-radius:20px;align-items:center;padding:.15rem .6rem;font-size:.78rem;display:inline-flex}.club-card-tags{flex-wrap:wrap;gap:.35rem;display:flex}.explore-count{color:#3949ab;background:#e8eaf6;border-radius:20px;margin-top:.3rem;padding:.1rem .65rem;font-size:.8rem;font-weight:600;display:inline-block}.empty-state{text-align:center;color:#6c757d;padding:4rem 1rem}.empty-state p{margin-bottom:1.25rem;font-size:1.1rem}.status-msg{color:#6c757d;font-size:1rem}.auth-page button:disabled{opacity:.6;cursor:not-allowed}.back-link{color:#5c6bc0;margin-bottom:1.5rem;font-size:.88rem;font-weight:500;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.club-detail{background:#fff;border:1px solid #e9ecef;border-radius:12px;max-width:720px;padding:2rem}.club-detail-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.club-detail-name{color:#1a1a2e;margin-bottom:.5rem;font-size:1.9rem;font-weight:800;line-height:1.2}.visibility-badge{border-radius:20px;padding:.2rem .65rem;font-size:.78rem;font-weight:600;display:inline-block}.visibility-badge.public{color:#2e7d32;background:#e8f5e9}.visibility-badge.private{color:#c62828;background:#fce4ec}.owner-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.join-badge{border-radius:8px;padding:.4rem .9rem;font-size:.85rem;font-weight:600;display:inline-block}.join-badge-joined{color:#2e7d32;background:#e8f5e9}.join-badge-owner{color:#3949ab;background:#e8eaf6}.join-badge-private{color:#6c757d;background:#f8f9fa}.join-badge-pending{color:#f57f17;background:#fff8e1}.join-requests-section{max-width:720px;margin-top:1.5rem}.join-requests-list{flex-direction:column;gap:.6rem;list-style:none;display:flex}.join-request-item{background:#fff;border:1px solid #e9ecef;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.join-request-name{color:#1a1a2e;font-size:.95rem;font-weight:600}.join-request-actions{gap:.5rem;display:flex}.club-detail-stat{text-align:center;min-width:64px}.stat-number{color:#5c6bc0;font-size:1.8rem;font-weight:800;line-height:1;display:block}.stat-label{color:#6c757d;font-size:.78rem}.club-detail-desc{color:#495057;margin-bottom:1.25rem;font-size:.97rem;line-height:1.6}.club-detail-meta{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.club-detail-section{margin-bottom:1rem}.posts-section{max-width:720px;margin-top:2rem}.posts-section-title{color:#1a1a2e;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.25rem;font-size:1rem;font-weight:700}.post-form{background:#fff;border:1px solid #e9ecef;border-radius:12px;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding:1rem;display:flex}.post-textarea{resize:vertical;border:1px solid #dee2e6;border-radius:8px;outline:none;width:100%;padding:.7rem 1rem;font-family:inherit;font-size:.95rem;transition:border-color .2s}.post-textarea:focus{border-color:#5c6bc0}.post-form-footer{justify-content:space-between;align-items:center;display:flex}.post-join-prompt{color:#6c757d;background:#f8f9fa;border:1px dashed #dee2e6;border-radius:8px;margin-bottom:1.5rem;padding:1rem 1.25rem;font-size:.9rem}.post-join-prompt a{color:#5c6bc0}.posts-empty{color:#6c757d;padding:1.5rem 0;font-size:.95rem}.posts-list{flex-direction:column;gap:1rem;list-style:none;display:flex}.post-item{background:#fff;border:1px solid #e9ecef;border-radius:10px;padding:1rem 1.25rem}.post-meta{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.post-author{color:#1a1a2e;font-size:.9rem;font-weight:600}.post-time{color:#adb5bd;font-size:.8rem}.post-content{color:#495057;white-space:pre-wrap;word-break:break-word;font-size:.95rem;line-height:1.6}.section-label{text-transform:uppercase;letter-spacing:.05em;color:#adb5bd;margin-bottom:.5rem;font-size:.8rem;font-weight:700}.profile-layout{grid-template-columns:360px 1fr;align-items:start;gap:1.5rem;display:grid}@media (width<=720px){.profile-layout{grid-template-columns:1fr}}.profile-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:1.75rem}.profile-info{flex-direction:column;gap:1rem;display:flex}.profile-field{flex-direction:column;gap:.2rem;display:flex}.profile-field-label{text-transform:uppercase;letter-spacing:.05em;color:#adb5bd;font-size:.78rem;font-weight:700}.profile-field-value{color:#1a1a2e;font-size:.97rem}.profile-field-muted{color:#495057}.profile-field-muted em{color:#adb5bd;font-style:normal}.profile-form-actions{gap:.75rem;margin-top:.5rem;display:flex}.form-success{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:1rem;padding:.6rem 1rem;font-size:.9rem}.profile-clubs{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:1.75rem}.profile-clubs-list{flex-direction:column;gap:.75rem;list-style:none;display:flex}.profile-club-item{border:1px solid #e9ecef;border-radius:8px;padding:.85rem 1rem;transition:box-shadow .15s}.profile-club-item:hover{box-shadow:0 2px 8px #00000012}.profile-club-name{color:#1a1a2e;margin-bottom:.35rem;font-size:.97rem;font-weight:600;text-decoration:none;display:block}.profile-club-name:hover{color:#5c6bc0}.profile-club-meta{flex-wrap:wrap;gap:.4rem;display:flex}.my-clubs-section{margin-bottom:2.5rem}.my-clubs-section-title{color:#1a1a2e;border-left:3px solid #5c6bc0;align-items:center;gap:.5rem;margin-bottom:1rem;padding-left:.65rem;font-size:1rem;font-weight:700;display:flex}.my-clubs-count{color:#3949ab;background:#e8eaf6;border-radius:20px;padding:.15rem .55rem;font-size:.78rem;font-weight:700}.my-clubs-empty{text-align:center;color:#6c757d;background:#fff;border:1px dashed #dee2e6;border-radius:12px;flex-direction:column;align-items:center;gap:1rem;padding:2rem;display:flex}.my-clubs-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.my-club-card{color:inherit;background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:1.25rem;text-decoration:none;transition:box-shadow .2s,transform .1s;display:block}.my-club-card:hover{transform:translateY(-2px);box-shadow:0 6px 24px #5c6bc021}.my-club-card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;display:flex}.my-club-card-name{color:#1a1a2e;font-size:1rem;font-weight:700;line-height:1.3}.my-club-card-meta{flex-wrap:wrap;gap:.4rem;display:flex}.recommend-card{background:#fafbff;border-color:#c5cae9}.recommend-card:hover{border-color:#9fa8da}.recommend-score{color:#5c6bc0;white-space:nowrap;font-size:.78rem;font-weight:700}.recommend-tags{flex-wrap:wrap;gap:.3rem;margin-top:.4rem;display:flex}.notif-bell-wrap{align-items:center;display:inline-flex;position:relative}.notif-bell-btn{cursor:pointer;background:0 0;border:none;padding:0;font-size:1.1rem;line-height:1;position:relative}.notif-badge{color:#fff;background:#dc3545;border-radius:10px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 3px;font-size:.65rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-6px;right:-8px}.notif-popup{z-index:200;background:#fff;border:1px solid #e9ecef;border-radius:12px;width:320px;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 8px 30px #0000001f}.notif-popup-header{color:#1a1a2e;background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:.75rem 1rem;font-size:.9rem;font-weight:700}.notif-empty{color:#adb5bd;text-align:center;padding:1.25rem 1rem;font-size:.88rem}.notif-error{color:#dc3545;background:#fff5f5;padding:.5rem 1rem;font-size:.82rem}.notif-list{max-height:340px;list-style:none;overflow-y:auto}.notif-item{background:#fafbff;border-bottom:1px solid #f0f0f0;padding:.85rem 1rem}.notif-item:last-child{border-bottom:none}.notif-read{background:#fff}.notif-text{color:#1a1a2e;margin-bottom:.5rem;font-size:.88rem;line-height:1.4}.notif-approved{color:#2e7d32}.notif-rejected{color:#6c757d}.notif-actions{gap:.5rem;margin-top:.4rem;display:flex}.notif-time{color:#adb5bd;margin-top:.25rem;font-size:.75rem;display:block}.admin-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.admin-stat-card{background:#fff;border:1px solid #e0e0e0;border-radius:10px;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem 1rem;display:flex}.admin-stat-number{color:#5c6bc0;font-size:2rem;font-weight:700;line-height:1}.admin-stat-label{color:#6c757d;text-transform:uppercase;letter-spacing:.04em;font-size:.8rem}.admin-section{margin-bottom:2.5rem}.admin-section-title{color:#1a1a2e;border-left:3px solid #5c6bc0;margin-bottom:.75rem;padding-left:.65rem;font-size:1.1rem;font-weight:600}.admin-table-wrap{border:1px solid #e0e0e0;border-radius:8px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.88rem}.admin-table th{text-align:left;color:#495057;white-space:nowrap;background:#f8f9fa;border-bottom:1px solid #e0e0e0;padding:.65rem .9rem;font-weight:600}.admin-table td{vertical-align:middle;color:#1a1a2e;border-bottom:1px solid #f0f0f0;padding:.65rem .9rem}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:#fafafa}.admin-link{color:#5c6bc0;font-weight:500;text-decoration:none}.admin-link:hover{text-decoration:underline}.admin-sub{color:#6c757d;font-size:.78rem}.role-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:.2rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.role-badge-admin{color:#4527a0;background:#ede7f6}.role-badge-user{color:#2e7d32;background:#e8f5e9}
