:root{--bg:#050b14;--bg-2:#0b1629;--panel:#0e1b33;--border:#1e3459;--border-light:#d4af3740;--gold:#d4af37;--gold-light:#f3e5ab;--gold-dark:#997a15;--blue-accent:#1d4ed8;--navy-dark:#08101d;--text:#f1f5f9;--text-muted:#94a3b8;--success:#34d399;--olive:#1d4ed8;--warning:#ef4444;--slate:#60a5fa;--violet:#a78bfa;--radius:12px;--shadow:0 10px 30px #000000b3;--font-title:"Bebas Neue", sans-serif;--font-ui:"Barlow Condensed", sans-serif;--font-body:"Inter", sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);font-family:var(--font-body);letter-spacing:.2px;font-size:14px;line-height:1.5;overflow-x:hidden}.sim-btn{color:var(--text);font-family:var(--font-ui);cursor:pointer;background:#222;border:1px solid #444;border-radius:4px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .2s}.sim-btn:hover{background:var(--gold);border-color:var(--gold-light);color:#000}.sim-btn.admin{border-color:var(--gold)}.sim-btn.operator{border-color:var(--slate)}.sim-btn.auditor{border-color:var(--violet)}.sim-btn.citizen-high{border-color:var(--success)}.sim-btn.citizen-mid{border-color:var(--text-muted)}.sim-btn.citizen-low{border-color:var(--warning)}#auth-screen{min-height:100dvh;padding:40px 20px;padding-top:max(40px, env(safe-area-inset-top));padding-bottom:max(40px, env(safe-area-inset-bottom));background:radial-gradient(circle,#161a16 0%,#0b0e0b 100%);justify-content:center;align-items:center;display:flex}.auth-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:480px;box-shadow:var(--shadow);padding:40px;position:relative;overflow:hidden}.auth-card:before{content:"";background:linear-gradient(90deg, var(--border), var(--gold), var(--border));height:4px;position:absolute;top:0;left:0;right:0}.state-seal-wrapper{justify-content:center;margin-bottom:20px;display:flex}.state-seal{object-fit:contain;filter:drop-shadow(0 4px 10px #0006);width:90px;height:90px}.state-title{font-family:var(--font-title);text-align:center;color:var(--gold-light);letter-spacing:2px;margin-bottom:4px;font-size:2.5rem}.state-subtitle{font-family:var(--font-ui);text-align:center;color:var(--text-muted);letter-spacing:6px;border-bottom:1px solid var(--border-light);margin-bottom:20px;padding-bottom:15px;font-size:1.1rem;font-weight:700}.auth-helper{color:var(--text-muted);text-align:center;margin-bottom:25px;font-size:12px;line-height:1.6}.auth-tabs{border:1px solid var(--border-light);background:#000;border-radius:6px;gap:2px;margin-bottom:24px;padding:3px;display:flex}.auth-tab{color:var(--text-muted);font-family:var(--font-ui);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:1;padding:10px;font-size:14px;font-weight:600;transition:all .2s}.auth-tab.active{background:var(--gold);color:#000}.auth-form{display:none}.auth-form.active{display:block}.auth-link-btn{color:var(--gold-light);font-family:var(--font-body);cursor:pointer;opacity:.9;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline;transition:all .2s}.auth-link-btn:hover{color:var(--gold);opacity:1}.form-group{margin-bottom:18px}label{font-family:var(--font-ui);color:var(--gold-light);letter-spacing:1px;margin-bottom:6px;font-size:12px;font-weight:700;display:block}input[type=text],input[type=email],input[type=password],select,textarea{border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--font-body);background:#0d0f0d;border-radius:6px;outline:none;padding:12px 14px;font-size:13px;transition:all .25s}input:focus,select:focus,textarea:focus{border-color:var(--gold-light);box-shadow:0 0 8px #d4c08a33}.field-desc{color:var(--text-muted);margin-top:4px;font-size:11px;display:block}.checkbox-container{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:12px;display:flex}.checkbox-container input{cursor:pointer}.state-btn{width:100%;font-family:var(--font-ui);letter-spacing:1.5px;cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:14px;font-size:14px;font-weight:700;transition:all .25s;display:flex}.state-btn.primary{background:var(--gold);color:#000;border-color:var(--gold-light)}.state-btn.primary:hover{background:var(--gold-light);box-shadow:0 0 15px #b08a2f66}.state-btn.success{background:var(--olive);color:var(--text);border-color:var(--success)}.state-btn.success:hover{background:var(--success);color:#000;box-shadow:0 0 15px #73b33a66}.state-btn.warning{background:var(--warning);color:#fff;border-color:#a44837}.state-btn.warning:hover{background:#a44837;box-shadow:0 0 15px #8a3d2f66}.state-btn.outline{border:1px solid var(--border);color:var(--text-muted);background:0 0}.state-btn.outline:hover{border-color:var(--gold);color:var(--text)}.state-btn.secondary{color:var(--text-muted);background:#222;border-color:#333}.state-btn.secondary:hover{color:var(--text);background:#333}.auth-divider{text-align:center;color:var(--text-muted);font-family:var(--font-ui);letter-spacing:1px;align-items:center;margin:20px 0;font-size:11px;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--border-light);flex:1}.auth-divider span{padding:0 10px}.google-btn{color:var(--text);background:#111;border:1px solid #333}.google-btn:hover{background:#1c1c1c;border-color:#555}.google-icon{width:18px;height:18px}.gold-glow{box-shadow:0 0 8px #b08a4726}.success-glow{box-shadow:0 0 8px #73b33a26}.app-container{flex-direction:column;min-height:100dvh;display:none}.app-container.active{display:flex}.main-header{background:var(--panel);border-bottom:2px solid var(--border);padding:16px 24px;padding-top:max(16px, env(safe-area-inset-top));justify-content:space-between;align-items:center;display:flex}.header-identity{align-items:center;gap:16px;display:flex}.header-logo{object-fit:contain;width:48px;height:48px}.header-titles h1{font-family:var(--font-title);letter-spacing:1.5px;color:var(--gold-light);font-size:1.8rem;line-height:1}.header-titles h2{font-family:var(--font-ui);letter-spacing:3px;color:var(--text-muted);margin-top:4px;font-size:.95rem;font-weight:600}.header-user-info{align-items:center;gap:20px;display:flex}.user-meta{flex-direction:column;align-items:flex-end;display:flex}.session-name{font-family:var(--font-ui);color:var(--text);letter-spacing:.5px;font-size:15px;font-weight:700}.session-badge{font-family:var(--font-ui);letter-spacing:1px;background:var(--olive);color:#000;border-radius:3px;margin-top:3px;padding:1px 6px;font-size:11px;font-weight:700}.logout-btn{width:auto;padding:6px 12px;font-size:12px}.main-nav{border-bottom:1px solid var(--border-light);-webkit-overflow-scrolling:touch;scrollbar-width:none;background:#080a08;padding:0 24px;overflow-x:auto}.main-nav::-webkit-scrollbar{display:none}.nav-group{gap:8px;display:none}.nav-group.active{display:flex}.nav-tab{color:var(--text-muted);font-family:var(--font-ui);letter-spacing:1.5px;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-bottom:3px solid #0000;flex-shrink:0;padding:16px 20px;font-size:14px;font-weight:700;transition:all .25s}.nav-tab:hover{color:var(--text);border-bottom-color:var(--border)}.nav-tab.active{color:var(--gold-light);border-bottom-color:var(--gold)}.main-content{background-color:var(--bg);flex:1;padding:24px}.tab-pane{display:none}.tab-pane.active{display:block}.bento-grid{grid-template-columns:repeat(12,1fr);gap:20px;display:grid}.bento-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;position:relative;overflow:hidden}.col-12{grid-column:span 12}.col-8{grid-column:span 8}.col-6{grid-column:span 6}.col-5{grid-column:span 5}.col-4{grid-column:span 4}.col-3{grid-column:span 3}.card-head{border-bottom:1px solid var(--border-light);margin-bottom:20px;padding-bottom:12px}.card-title{font-family:var(--font-title);letter-spacing:1px;color:var(--gold-light);font-size:1.5rem}.card-subtitle{color:var(--text-muted);margin-top:2px;font-size:11px}.credential-card{border:1px solid var(--border);background:linear-gradient(135deg,#111411 0%,#1c221c 100%);border-radius:12px;flex-direction:column;justify-content:space-between;height:100%;min-height:290px;padding:20px;display:flex;position:relative;overflow:hidden;box-shadow:0 15px 35px #0009}.credential-card.gold-border{border:2px solid var(--gold)}.card-bg-pattern{background-image:radial-gradient(var(--border-light) 1px, transparent 0);opacity:.35;pointer-events:none;background-size:10px 10px;position:absolute;inset:0}.card-header{border-bottom:1px dashed var(--border);z-index:2;justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.card-estatal-text{font-family:var(--font-ui);color:var(--text-muted);letter-spacing:2px;font-size:10px;font-weight:700}.card-serial{font-family:var(--font-ui);color:var(--gold-light);font-size:10px}.card-body{z-index:2;gap:16px;margin:16px 0;display:flex}.card-photo-box{border:1px solid var(--border);background:#000;width:90px;height:110px;padding:4px}.cit-avatar-placeholder{background-color:var(--bg-2);filter:sepia(.8)hue-rotate(60deg)contrast(1.1);background-image:radial-gradient(#556b2f 20%,#0000 20%),radial-gradient(#556b2f 20%,#0000 20%);background-position:0 0,5px 5px;background-size:10px 10px;border:1px solid #222;width:100%;height:100%}.card-details{flex-direction:column;flex:1;justify-content:space-between;display:flex}.detail-row{flex-direction:column;margin-bottom:6px;display:flex}.detail-row .label{font-family:var(--font-ui);color:var(--text-muted);letter-spacing:1px;font-size:9px;font-weight:600}.detail-row .value{font-family:var(--font-ui);color:var(--text);font-size:14px;font-weight:700}.text-gold{color:var(--gold-light)!important}.tier-badge{background:var(--border);color:#000;text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:1px 6px;display:inline-block;font-size:11px!important}.card-footer{border-top:1px dashed var(--border);z-index:2;justify-content:space-between;align-items:flex-end;padding-top:10px;display:flex}.score-display{flex-direction:column;display:flex}.score-label{font-family:var(--font-ui);color:var(--text-muted);letter-spacing:1px;font-size:9px;font-weight:700}.score-number{font-family:var(--font-title);color:var(--success);margin-top:2px;font-size:2.8rem;line-height:.9}.card-barcode{color:var(--border);letter-spacing:-1px;font-family:monospace;font-size:12px}.progress-section{margin:15px 0}.progress-labels{font-family:var(--font-ui);color:var(--text-muted);justify-content:space-between;margin-bottom:6px;font-size:13px;font-weight:700;display:flex}.progress-bar-track{border:1px solid var(--border);background:#000;border-radius:6px;width:100%;height:12px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--olive), var(--success));height:100%;box-shadow:0 0 10px var(--success);transition:width .8s cubic-bezier(.4,0,.2,1)}.progress-help{color:var(--text-muted);text-align:right;margin-top:6px;font-size:11px}.tier-info-panel{border:1px solid var(--border-light);background:#0006;border-radius:6px;padding:14px}.tier-info-title{font-family:var(--font-ui);margin-bottom:4px;font-size:12px;font-weight:700}.tier-info-desc{color:var(--text-muted);font-size:12px;line-height:1.4}.chart-card{flex-direction:column;display:flex}.chart-container{flex:1;min-height:200px;position:relative}.state-table{border-collapse:collapse;width:100%;margin-top:10px}.state-table th{border-bottom:2px solid var(--border);font-family:var(--font-ui);color:var(--gold-light);letter-spacing:1px;text-align:left;background:#0a0c0a;padding:12px;font-size:12px;font-weight:700}.state-table td{border-bottom:1px solid var(--border-light);color:var(--text);padding:12px;font-size:13px}.state-table tr:hover td{background:#161a1680}.font-mono{font-family:monospace;font-size:12px!important}.status-badge{font-family:var(--font-ui);letter-spacing:.5px;border-radius:3px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.status-active{color:var(--success)}.status-blocked{color:var(--warning)}.status-inactive{color:var(--text-muted)}.badge-reward{color:var(--success);border:1px solid var(--success);background:#73b33a26}.badge-penalty{color:var(--warning);border:1px solid var(--warning);background:#8a3d2f26}.badge-pending{color:var(--slate);border:1px solid var(--slate);background:#4e6e8e26}.badge-status{font-family:var(--font-ui);border-radius:4px;padding:2px 6px;font-size:11px;font-weight:700}.certificates-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:20px;display:grid}.certificate-banknote{border:2px solid var(--border);background:radial-gradient(circle,#1e251e 0%,#111411 100%);border-radius:8px;flex-direction:column;justify-content:space-between;min-height:180px;padding:16px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 25px #00000080}.certificate-banknote.unlocked{border-color:var(--gold);box-shadow:0 0 15px #b08a4740}.certificate-banknote.locked{opacity:.4;filter:grayscale()}.certificate-banknote .border-lines{border:1px solid var(--border);pointer-events:none;position:absolute;inset:3px}.banknote-header{border-bottom:1px solid var(--border-light);font-family:var(--font-ui);color:var(--text-muted);justify-content:space-between;padding-bottom:6px;font-size:10px;font-weight:700;display:flex}.banknote-body{text-align:center;margin:12px 0}.banknote-title{font-family:var(--font-title);letter-spacing:1px;color:var(--gold-light);font-size:1.8rem;line-height:1.1}.banknote-body.unlocked .banknote-title{color:var(--gold)}.banknote-desc{color:var(--text-muted);margin-top:4px;font-size:11px;line-height:1.3}.banknote-footer{border-top:1px dashed var(--border-light);font-family:var(--font-ui);color:var(--text-muted);justify-content:space-between;align-items:flex-end;padding-top:6px;font-size:10px;display:flex}.banknote-stamp{border:1px dashed var(--gold);width:40px;height:40px;color:var(--gold);border-radius:50%;justify-content:center;align-items:center;font-size:8px;display:flex;transform:rotate(-15deg)}.recommendations-list{flex-direction:column;gap:12px;display:flex}.rec-item{background:var(--bg-2);border:1px solid var(--border-light);border-radius:6px;justify-content:space-between;align-items:center;padding:12px;display:flex}.rec-info h4{font-family:var(--font-ui);color:var(--text);font-size:13px;font-weight:700}.rec-info p{color:var(--text-muted);margin-top:2px;font-size:11px}.rec-delta{font-family:var(--font-title);color:var(--success);font-size:1.3rem}.stats-row{gap:20px;margin-bottom:24px;display:flex}.stat-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;flex:1;padding:20px;display:flex}.stat-label{font-family:var(--font-ui);color:var(--text-muted);letter-spacing:1px;margin-bottom:4px;font-size:11px;font-weight:700}.stat-value{font-size:2.8rem;line-height:1}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.filters-row{gap:16px;margin-bottom:16px;display:flex}.filter-group{flex:1}.filter-group.search{flex:2}.table-container{border:1px solid var(--border);background:var(--panel);border-radius:8px;overflow-x:auto}.pagination{justify-content:center;gap:6px;margin-top:16px;display:flex}.page-btn{border:1px solid var(--border);color:var(--text-muted);font-family:var(--font-ui);cursor:pointer;background:#111;border-radius:4px;padding:6px 12px;font-size:13px}.page-btn:hover{border-color:var(--gold);color:var(--text)}.page-btn.active{background:var(--gold);color:#000;border-color:var(--gold-light)}.tiers-distribution-container{flex-direction:column;gap:12px;margin-top:10px;display:flex}.dist-bar-row{flex-direction:column;gap:4px;display:flex}.dist-bar-label{justify-content:space-between;font-size:12px;display:flex}.dist-bar-track{background:#000;border:1px solid #ffffff0d;border-radius:5px;height:10px;overflow:hidden}.dist-bar-fill{border-radius:5px;height:100%;transition:width .6s}.action-divider{font-family:var(--font-ui);color:var(--gold-light);letter-spacing:1px;border-bottom:1px solid var(--border-light);margin:20px 0 12px;padding-bottom:4px;font-size:11px;font-weight:700}.status-actions,.manual-cert-row{gap:10px;display:flex}.manual-cert-row select{flex:1}.manual-cert-row button{width:auto;padding-left:20px;padding-right:20px}.back-btn{width:auto;padding:8px 16px;font-size:12px}.form-dense .form-group{margin-bottom:12px}.form-dense label{margin-bottom:4px}.form-dense input,.form-dense select,.form-dense textarea{padding:8px 12px}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;padding:20px 16px;padding-top:max(20px, env(safe-area-inset-top));padding-bottom:max(20px, env(safe-area-inset-bottom));background:#000000d9;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-overlay.active{display:flex}.modal-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);-webkit-overflow-scrolling:touch;width:100%;max-width:500px;max-height:88dvh;padding:30px;overflow-y:auto;box-shadow:0 20px 50px #000c}.modal-title{font-family:var(--font-title);letter-spacing:1px;color:var(--gold-light);border-bottom:1px solid var(--border-light);margin-bottom:12px;padding-bottom:10px;font-size:1.8rem}.modal-desc{color:var(--text-muted);margin-bottom:20px;font-size:12px;line-height:1.5}.form-buttons{gap:10px;margin-top:20px;display:flex}.form-buttons button{flex:1}.toast-container{z-index:3000;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--panel);border:1px solid var(--border);border-left:4px solid var(--gold);color:var(--text);font-family:var(--font-body);box-shadow:var(--shadow);border-radius:4px;flex-direction:column;min-width:280px;max-width:400px;padding:12px 18px;font-size:13px;animation:.3s cubic-bezier(.18,.89,.32,1.28) forwards slide-in;display:flex}.toast.success{border-left-color:var(--success)}.toast.warning{border-left-color:var(--warning)}.toast.info{border-left-color:var(--slate)}.toast-title{font-family:var(--font-ui);letter-spacing:1px;text-transform:uppercase;color:var(--gold-light);margin-bottom:2px;font-size:11px;font-weight:700}.toast-desc{color:var(--text-muted);font-size:12px}@keyframes slide-in{0%{opacity:0;transform:translate(120%)}to{opacity:1;transform:translate(0)}}button,input,select,textarea,a,.nav-tab,.sim-btn,.auth-tab{-webkit-tap-highlight-color:transparent}.state-btn:active,.sim-btn:active,.nav-tab:active,.auth-tab:active{transform:scale(.98)}@media (width<=992px){.bento-grid{grid-template-columns:1fr}.col-12,.col-8,.col-6,.col-5,.col-4,.col-3{grid-column:span 12}.stats-row{flex-direction:column;gap:12px}.filters-row{flex-direction:column;gap:10px}.main-header{padding:16px;padding-top:max(16px, env(safe-area-inset-top));flex-direction:column;align-items:flex-start;gap:16px}.header-user-info{justify-content:space-between;width:100%}.main-nav{padding:0 12px;overflow-x:auto}.nav-group{flex-wrap:nowrap}}@media (width<=768px){input[type=text],input[type=email],input[type=password],input[type=datetime-local],input[type=url],input[type=number],select,textarea{padding:12px 14px;font-size:16px!important}.main-content{padding:16px 12px}.bento-card{padding:16px}.auth-card{padding:24px 18px}.modal-card{padding:20px 16px}.sim-btn{min-height:36px;padding:8px 12px;font-size:12px}.manual-cert-row{flex-direction:column;gap:10px}.manual-cert-row button{width:100%}.status-actions{flex-direction:column;gap:8px}.status-actions button{width:100%}}@media (width<=576px){.toast-container{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));min-width:auto;max-width:100%}.toast{width:100%;min-width:auto}.state-title{font-size:2.1rem}.state-subtitle{letter-spacing:3px;font-size:.95rem}.credential-card{padding:14px}.card-photo-box{width:75px;height:95px}.score-number{font-size:2.2rem}}.header-user-avatar{object-fit:cover;border:2px solid var(--gold);border-radius:50%;width:42px;height:42px;box-shadow:0 0 10px #b08a4766}.header-avatar-placeholder{background:var(--bg-2);border:2px solid var(--border);width:42px;height:42px;color:var(--gold-light);font-family:var(--font-title);border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex}.hierarchy-pill{border:1px solid var(--gold);color:var(--gold-light);font-family:var(--font-ui);letter-spacing:.8px;text-transform:uppercase;background:linear-gradient(135deg,#b08a4740,#556b2f40);border-radius:4px;margin-top:2px;margin-bottom:2px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.card-photo-container{flex-direction:column;align-items:center;gap:8px;margin-right:15px;display:flex}.card-photo-box{border:2px solid var(--gold);background:#000;border-radius:8px;justify-content:center;align-items:center;width:100px;height:120px;display:flex;overflow:hidden;box-shadow:inset 0 0 15px #000c,0 0 12px #b08a474d}.card-photo-box.large{width:140px;height:160px}.cit-id-photo{object-fit:cover;width:100%;height:100%}.change-photo-btn{border:1px solid var(--border);color:var(--gold-light);font-family:var(--font-ui);letter-spacing:.5px;cursor:pointer;white-space:nowrap;background:#b08a4726;border-radius:4px;padding:4px 8px;font-size:10px;font-weight:700;transition:all .2s}.change-photo-btn:hover{background:var(--gold);color:#000}.hierarchy-title-badge{border:1px solid var(--border);color:var(--gold-light);font-family:var(--font-ui);letter-spacing:.5px;background:#b08a4726;border-radius:4px;padding:3px 8px;font-size:12px;font-weight:700}.role-badge{font-family:var(--font-ui);letter-spacing:.5px;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:700}.role-badge.role-admin{border:1px solid var(--warning);color:#e26d5c;background:#8a3d2f40}.role-badge.role-usuario{border:1px solid var(--success);color:var(--success);background:#73b33a33}.table-user-avatar{object-fit:cover;border:1px solid var(--gold);border-radius:50%;width:32px;height:32px}.table-avatar-placeholder{background:var(--bg-2);border:1px solid var(--border);width:32px;height:32px;color:var(--gold-light);border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.file-input{background:var(--bg-2);border:1px dashed var(--border);color:var(--text-muted);cursor:pointer;border-radius:4px;width:100%;padding:8px}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.democracy-event-card{transition:transform .2s,box-shadow .2s;position:relative}.democracy-event-card:hover{transform:translateY(-2px);box-shadow:0 16px 40px #0009}.event-status-badge{letter-spacing:1px;text-transform:uppercase;border-radius:4px;padding:3px 10px;font-size:10px;font-weight:700;display:inline-block}.event-meta{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.event-meta-row{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:flex}.event-meta-row .icon{flex-shrink:0;font-size:14px}.event-actions{border-top:1px solid var(--border-light);flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px;display:flex}#auth-screen{min-height:100vh}.rec-delta.text-success{color:var(--success)}.rec-delta.text-warning{color:var(--warning)}.audit-action-badge{font-family:var(--font-ui);letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.audit-entity-badge{font-family:var(--font-ui);color:var(--gold-light);white-space:nowrap;background:#b08a471a;border:1px solid #b08a4740;border-radius:4px;align-items:center;gap:6px;padding:3px 8px;font-size:12px;font-weight:600;display:inline-flex}.audit-data-container{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.audit-chip{background:var(--bg-2);border:1px solid var(--border-light);color:var(--text);border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;display:inline-flex}.audit-chip-key{color:var(--gold-light);font-weight:600}.audit-data-empty{color:var(--text-muted);font-size:12px;font-style:italic}.audit-date{color:var(--text-muted);white-space:nowrap;font-size:12px}.audit-author{font-family:var(--font-ui);color:var(--gold-light);align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.rank-emblem-box{border:2px solid var(--gold);text-align:center;background:radial-gradient(circle,#0b1629 0%,#050b14 100%);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;width:90px;height:110px;padding:6px;display:flex;box-shadow:inset 0 0 15px #000000e6,0 0 12px #d4af374d}.rank-emblem-img{object-fit:contain;filter:drop-shadow(0 2px 6px #d4af3780);width:54px;height:54px}.rank-title-badge{border:1px solid var(--gold);color:var(--gold-light);font-family:var(--font-ui);letter-spacing:1px;text-transform:uppercase;background:linear-gradient(135deg,#d4af3740,#0f1d38cc);border-radius:4px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.decorations-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-top:16px;display:grid}.decoration-card{border:1px solid var(--border);text-align:center;background:linear-gradient(135deg,#0b1629 0%,#050b14 100%);border-radius:10px;flex-direction:column;align-items:center;padding:16px;transition:transform .2s,border-color .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 20px #00000080}.decoration-card.unlocked{border-color:var(--gold);box-shadow:0 0 15px #d4af3733}.decoration-card:hover{border-color:var(--gold-light);transform:translateY(-3px)}.decoration-icon-box{border:2px solid var(--gold);background:radial-gradient(circle,#d4af3733 0%,#050b14e6 100%);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:10px;font-size:28px;display:flex;box-shadow:0 0 12px #d4af374d}.decoration-title{font-family:var(--font-title);color:var(--gold-light);letter-spacing:1px;margin-bottom:6px;font-size:1.2rem}.decoration-desc{color:var(--text-muted);font-size:11px;line-height:1.4}.decoration-status-pill{font-family:var(--font-ui);letter-spacing:1px;text-transform:uppercase;border-radius:4px;margin-top:10px;padding:2px 8px;font-size:10px;font-weight:700}.decoration-status-pill.granted{color:var(--success);border:1px solid var(--success);background:#34d39933}.decoration-status-pill.locked{color:var(--text-muted);border:1px solid var(--border);background:#94a3b81a}.cv-user-chips{border-bottom:1px solid var(--border-light);flex-wrap:wrap;gap:8px;margin-bottom:24px;padding-bottom:20px;display:flex}.cv-user-chip{border:1px solid var(--border);background:var(--bg-2);color:var(--text-muted);font-family:var(--font-ui);cursor:pointer;letter-spacing:.3px;border-radius:999px;align-items:center;gap:7px;padding:5px 10px 5px 5px;font-size:11px;font-weight:600;transition:all .18s;display:inline-flex}.cv-user-chip:hover{border-color:var(--chip-color,var(--gold));color:var(--text);transform:translateY(-1px)}.cv-user-chip.selected{background:color-mix(in srgb, var(--chip-color,var(--gold)) 18%, transparent);border-color:var(--chip-color,var(--gold));color:var(--text);box-shadow:0 0 8px color-mix(in srgb, var(--chip-color,var(--gold)) 30%, transparent)}.cv-chip-avatar,.cv-chip-avatar-fallback{object-fit:cover;color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:flex}.cv-chip-score{color:var(--gold);background:#b08a471f;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:700}.cv-ranking-bars{flex-direction:column;gap:10px;display:flex}.cv-bar-row{border-bottom:1px solid #ffffff0a;grid-template-columns:220px 1fr 110px;align-items:center;gap:14px;padding:10px 0;transition:background .15s;display:grid}.cv-bar-row:hover{background:#ffffff05;border-radius:6px}.cv-bar-row:last-child{border-bottom:none}.cv-bar-user{align-items:center;gap:10px;min-width:0;display:flex}.cv-bar-pos{font-family:var(--font-hero);color:var(--text-muted);text-align:right;flex-shrink:0;width:28px;font-size:13px}.cv-bar-avatar,.cv-bar-avatar-fallback{object-fit:cover;border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:34px;height:34px}.cv-bar-avatar-fallback{background:var(--bg-3,#1a2535);color:var(--gold-light);justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.cv-bar-info{flex-direction:column;min-width:0;display:flex;overflow:hidden}.cv-bar-name{font-family:var(--font-ui);color:var(--gold-light);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;overflow:hidden}.cv-bar-title{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:10px;overflow:hidden}.cv-bar-track{background:var(--bg-2);border:1px solid var(--border-light);border-radius:999px;height:10px;overflow:hidden}.cv-bar-fill{border-radius:999px;min-width:2px;height:100%;transition:width .6s cubic-bezier(.34,1.56,.64,1)}.cv-bar-score{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.cv-score-number{font-family:var(--font-hero);color:var(--text);letter-spacing:-.5px;font-size:16px;font-weight:700}.cv-score-tier{color:var(--text-muted);letter-spacing:1px;font-size:9px;font-weight:700;font-family:var(--font-ui);text-transform:uppercase}.cv-bottom-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=768px){.cv-bottom-grid{grid-template-columns:1fr}}.cv-events-feed{flex-direction:column;gap:1px;max-height:440px;display:flex;overflow-y:auto}.cv-events-feed::-webkit-scrollbar{width:4px}.cv-events-feed::-webkit-scrollbar-track{background:0 0}.cv-events-feed::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.cv-feed-item{border-radius:6px;align-items:center;gap:10px;padding:10px 8px;transition:background .15s;display:flex}.cv-feed-item:hover{background:var(--bg-2)}.cv-feed-avatar{flex-shrink:0;width:34px;height:34px}.cv-feed-avatar img,.cv-feed-avatar-fallback{object-fit:cover;border:1px solid var(--border);border-radius:50%;width:34px;height:34px}.cv-feed-avatar-fallback{background:var(--bg-3,#1a2535);color:var(--gold-light);justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.cv-feed-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.cv-feed-user{color:var(--gold-light);font-size:12px;font-weight:700;font-family:var(--font-ui)}.cv-feed-type{color:var(--text);font-size:11px}.cv-feed-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.cv-feed-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:3px;display:flex}.cv-feed-delta{font-family:var(--font-hero);font-size:15px;font-weight:700}.cv-feed-delta.positive{color:var(--success)}.cv-feed-delta.negative{color:var(--warning)}.cv-feed-date{color:var(--text-muted);font-size:10px;font-family:var(--font-ui)}.cv-upcoming-list{flex-direction:column;gap:10px;max-height:440px;display:flex;overflow-y:auto}.cv-upcoming-list::-webkit-scrollbar{width:4px}.cv-upcoming-list::-webkit-scrollbar-track{background:0 0}.cv-upcoming-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.cv-upcoming-card{background:var(--bg-2);border:1px solid var(--border-light);border-radius:8px;align-items:center;gap:12px;padding:12px;transition:border-color .18s,box-shadow .18s;display:flex}.cv-upcoming-card:hover{border-color:#b08a4759;box-shadow:0 2px 12px #b08a4714}.cv-upcoming-date{background:linear-gradient(135deg,#b08a4733,#b08a4714);border:1px solid #b08a4759;border-radius:8px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:44px;padding:6px 4px;display:flex}.cv-date-day{font-family:var(--font-hero);color:var(--gold);font-size:20px;font-weight:700;line-height:1}.cv-date-mon{font-family:var(--font-ui);color:var(--gold-light);letter-spacing:1px;margin-top:2px;font-size:9px;font-weight:700}.cv-upcoming-info{flex:1;min-width:0}.cv-upcoming-header{justify-content:space-between;align-items:center;gap:6px;margin-bottom:4px;display:flex}.cv-upcoming-cat{color:var(--text-muted);font-size:9px;font-weight:700;font-family:var(--font-ui);letter-spacing:.8px;text-transform:uppercase}.cv-upcoming-count{color:var(--text-muted);font-size:10px;font-family:var(--font-ui)}.cv-upcoming-title{color:var(--text);font-size:13px;font-weight:700;font-family:var(--font-ui);white-space:nowrap;text-overflow:ellipsis;margin:0 0 3px;overflow:hidden}.cv-upcoming-loc{color:var(--text-muted);font-size:10px}.cv-upcoming-action{flex-shrink:0}
