:root{--bg-color:#fff;--bg-secondary:#f8f9fa;--panel-bg:#fff;--accent-primary:#376b44;--accent-light:#e8f5e9;--accent-hover:#2d5a38;--accent-check:#34d399;--accent-uhoh:#f43f5e;--text-primary:#1a1a2e;--text-secondary:#6b7280;--text-muted:#9ca3af;--border-color:#e5e7eb;--border-strong:#d1d5db;--font-heading:"Inter",sans-serif;--font-tech:"Fira Code",monospace;--font-body:"Inter",sans-serif;--gradient-accent:linear-gradient(135deg,#376b44,#4a9960);--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 4px 6px rgba(0,0,0,.07);--shadow-lg:0 10px 25px rgba(0,0,0,.1);--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--accent-warning:#f59e0b;--logo-filter:none}[data-theme=dark]{--bg-color:#0f0f1a;--bg-secondary:#1a1a2e;--panel-bg:#1a1a2e;--accent-primary:#0f8;--accent-light:rgba(0,255,136,.1);--accent-hover:#00cc6a;--accent-check:#34d399;--accent-uhoh:#f43f5e;--text-primary:#e8e8f0;--text-secondary:#9ca3af;--text-muted:#6b7280;--border-color:#2a2a40;--border-strong:#3a3a55;--gradient-accent:linear-gradient(135deg,#4a9960,#376b44);--shadow-sm:0 1px 2px rgba(0,0,0,.2);--shadow-md:0 4px 6px rgba(0,0,0,.3);--shadow-lg:0 10px 25px rgba(0,0,0,.4);--accent-warning:#f59e0b;--logo-filter:brightness(0) invert(1);--neon-green:#0f8;--neon-cyan:#0cf;--neon-pink:#ff6b9d;--neon-green-glow:rgba(0,255,136,.4);--neon-cyan-glow:rgba(0,204,255,.4);--neon-pink-glow:rgba(255,107,157,.4);--glass-bg:rgba(10,10,26,.92);--glass-border:rgba(0,255,136,.2)}.action-buttons{border-top:1px solid var(--border-color);display:flex;flex-direction:row;gap:0;margin-top:16px;padding-top:0}.action-btn{align-items:center;background:none;border:none;border-right:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;display:flex;flex:1;flex-direction:column;gap:5px;padding:14px 4px;text-decoration:none;transition:background .2s,color .2s}.action-btn:last-child{border-right:none}.action-btn:hover{background:var(--accent-light);color:var(--accent-primary)}.action-btn:active{background:rgba(55,107,68,.15)}.action-btn__icon{font-size:1.15rem;line-height:1}.action-btn__label{font-family:var(--font-tech);font-size:.55rem;letter-spacing:1.5px;text-transform:uppercase}.btn-game,.btn-primary{align-items:center;background:var(--gradient-accent);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:inline-flex;font-family:var(--font-heading);font-size:.8rem;font-weight:600;gap:8px;justify-content:center;letter-spacing:1px;padding:8px 16px;text-decoration:none;text-transform:uppercase;transition:all .2s ease}.btn-game svg,.btn-primary svg{height:14px;width:14px}.btn-game:hover,.btn-primary:hover{box-shadow:var(--shadow-md);color:#fff;transform:translateY(-1px)}.btn-game:active,.btn-primary:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.page-container{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:var(--text-primary);margin:0 auto;max-width:1000px;padding:24px}.page-container--narrow{max-width:600px}.page-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);border-radius:var(--radius-lg) var(--radius-lg) 0 0;display:flex;justify-content:space-between;margin:-24px -24px 24px;padding:20px 24px}.page-header__meta{align-items:center;display:flex;gap:10px}.page-title{color:var(--accent-primary);font-family:var(--font-heading);font-size:1.4rem;font-weight:600;letter-spacing:2px}.page-back,.page-title{text-transform:uppercase}.page-back{color:var(--text-secondary);font-size:.75rem;letter-spacing:.5px;text-decoration:none}.page-back:hover{color:var(--accent-primary)}.page-logo{margin:0 auto 20px;max-width:1000px;padding:20px 20px 0}.page-logo img{filter:var(--logo-filter);height:28px}.page-footer{border-top:none;margin:20px auto 0;max-width:1000px;padding:30px 20px;text-align:center}.page-footer__text{color:var(--text-muted);font-family:var(--font-tech);font-size:.7rem;letter-spacing:1px;text-transform:uppercase}.data-table{border-radius:var(--radius-md);overflow-x:auto;width:100%}.data-table table{border-collapse:collapse;font-family:var(--font-body);width:100%}.data-table th{border-bottom:2px solid var(--border-color);color:var(--accent-primary);font-family:var(--font-heading);font-size:.9rem;font-weight:600;letter-spacing:1px;padding:14px 16px;text-align:left;text-transform:uppercase}.data-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:.95rem;padding:14px 16px}.data-table tr:hover td{background:var(--accent-light)}.data-table__name{color:var(--text-primary);overflow-wrap:anywhere}.data-table__name,.data-table__value{font-family:var(--font-tech)}.data-table__reason{color:var(--text-secondary);font-size:.85rem}.data-table__actions{white-space:nowrap;width:100px}.data-table__empty{color:var(--text-secondary);padding:40px;text-align:center}.upload-grid{gap:14px;margin-bottom:30px}.drop-zone{align-items:center;background:var(--bg-color);border:2px dashed var(--border-color);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;gap:6px;justify-content:center;min-height:130px;padding:28px 16px 22px;text-align:center;transition:border-color .3s,background .3s,box-shadow .3s}.drop-zone--active,.drop-zone:hover{background:var(--accent-light);border-color:var(--accent-primary)}.drop-zone--active{border-style:dashed;box-shadow:inset 0 0 20px rgba(55,107,68,.08)}.drop-zone--uploading{border-color:var(--accent-primary);border-style:solid;opacity:.6;pointer-events:none}.drop-zone__icon{font-size:1.8rem;line-height:1;opacity:.75}.drop-zone__label{color:var(--accent-primary);font-family:var(--font-heading);font-size:.8rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.drop-zone__hint{color:var(--text-secondary);font-family:var(--font-body);font-size:.7rem}.drop-zone__file-list{display:flex;flex-direction:column;gap:2px;margin-top:4px}.drop-zone__file-name{color:var(--accent-primary);font-family:var(--font-tech);font-size:.6rem;word-break:break-all}.status-badge{border-radius:20px;display:inline-block;font-family:var(--font-heading);font-size:.8rem;font-weight:500;letter-spacing:1px;padding:4px 12px;text-transform:uppercase}.status-badge--pending{animation:pulse 2s infinite;background:#f3f4f6;border:1px solid var(--border-color);color:var(--text-secondary)}.status-badge--processing{animation:pulse 1.5s infinite;background:rgba(55,107,68,.1);border:1px solid rgba(55,107,68,.3);color:var(--accent-primary)}.status-badge--completed{background:rgba(52,211,153,.15);border:1px solid rgba(52,211,153,.4);color:#059669}.status-badge--failed{background:rgba(244,63,94,.1);border:1px solid rgba(244,63,94,.3);color:var(--accent-uhoh)}.confidence-badge{border-radius:20px;display:inline-block;font-family:var(--font-heading);font-size:.85rem;font-weight:500;padding:2px 8px}.confidence-badge--high{background:rgba(52,211,153,.15);color:#059669}.confidence-badge--medium{background:rgba(245,158,11,.15);color:#d97706}.confidence-badge--low{background:rgba(244,63,94,.15);color:var(--accent-uhoh)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.flash{border-radius:var(--radius-md);font-family:var(--font-body);margin-bottom:20px;padding:12px 20px}.flash--success{background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.3);border-left:3px solid var(--accent-check);color:#059669}.flash--error{background:rgba(244,63,94,.08);border:1px solid rgba(244,63,94,.2);border-left:3px solid var(--accent-uhoh);color:var(--accent-uhoh)}.flash--info{background:rgba(55,107,68,.08);border:1px solid rgba(55,107,68,.2);border-left:3px solid var(--accent-primary);color:var(--accent-primary)}.game-form label{color:var(--accent-primary);display:block;font-family:var(--font-heading);font-size:.9rem;font-weight:500;margin-bottom:5px}.game-form input[type=text],.game-form select{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-body);font-size:1rem;margin-bottom:15px;padding:10px 12px;width:100%}.game-form input[type=text]:focus,.game-form select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(55,107,68,.15);outline:none}.game-form select{cursor:pointer}.company-overview__title{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0 0 16px}.company-overview__loading{color:var(--text-secondary);padding:40px 0;text-align:center}.company-overview__search{align-items:center;border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;gap:8px;margin-bottom:12px;padding:8px 12px;transition:border-color .15s}.company-overview__search:focus-within{border-color:var(--accent-primary)}.company-overview__search svg{color:var(--text-muted);flex-shrink:0;height:15px;width:15px}.company-overview__search-input{background:transparent;border:none;color:var(--text-primary);flex:1;font-family:var(--font-body);font-size:.85rem;outline:none}.company-overview__search-input::placeholder{color:var(--text-muted)}.company-overview__empty{color:var(--text-muted);display:none;font-size:.85rem;padding:32px 0;text-align:center}.company-overview__empty--visible{display:block}.company-overview__card{align-items:center;border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;display:flex;margin-bottom:8px;padding:14px 16px;transition:background .15s,border-color .15s}.company-overview__card--hidden{display:none}.company-overview__card:hover{background:var(--accent-light);border-color:var(--accent-primary)}.company-overview__card svg{color:var(--text-muted);flex-shrink:0;height:16px;margin-left:auto;width:16px}.company-overview__card-header{align-items:center;display:flex;flex:1;gap:8px}.company-overview__card-name{color:var(--text-primary);font-weight:600}.company-overview__card-meta{color:var(--text-secondary);font-size:.8rem;margin-left:12px;white-space:nowrap}.company-overview__badge{background:var(--accent-light);border-radius:4px;color:var(--accent-primary);display:inline-block;font-size:.7rem;font-weight:500;padding:2px 8px;white-space:nowrap}.cd-header{margin-bottom:16px}.cd-header__top{align-items:center;display:flex;gap:12px;margin-bottom:12px}.cd-header__back{align-items:center;background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;padding:6px;transition:color .15s,border-color .15s}.cd-header__back:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.cd-header__back svg{height:16px;width:16px}.cd-header__title-group{align-items:center;display:flex;flex:1;gap:10px;min-width:0}.cd-header__name{color:var(--text-primary);font-size:1.1rem;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cd-header__badge{background:var(--accent-light);border-radius:4px;color:var(--accent-primary);flex-shrink:0;font-size:.65rem;font-weight:600;letter-spacing:.5px;padding:3px 8px;white-space:nowrap}.cd-header__actions{display:flex;gap:8px}.cd-action-btn{align-items:center;border:none;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:500;gap:6px;padding:8px 14px;text-decoration:none;transition:all .15s}.cd-action-btn svg{height:14px;width:14px}.cd-action-btn--primary{background:var(--accent-primary);color:#fff}.cd-action-btn--primary:hover{background:var(--accent-hover)}.cd-action-btn--outline{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.cd-action-btn--outline:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.cd-kpi-strip{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:16px}.cd-kpi{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;gap:8px;padding:10px 12px}.cd-kpi>svg{color:var(--accent-primary);flex-shrink:0;height:16px;width:16px}.cd-kpi__text{display:flex;flex-direction:column;min-width:0}.cd-kpi__value{color:var(--text-primary);font-family:var(--font-tech);font-size:.9rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cd-kpi__label{color:var(--text-muted);font-size:.65rem;letter-spacing:.3px;text-transform:uppercase}.cd-kpi--positive .cd-kpi__value,.cd-kpi--positive>svg{color:#16a34a}.cd-kpi--negative .cd-kpi__value,.cd-kpi--negative>svg{color:#dc2626}.cd-cards{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.cd-info-card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:12px}.cd-info-card__title{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:.75rem;font-weight:600;gap:6px;letter-spacing:.3px;margin-bottom:10px;padding-bottom:6px;text-transform:uppercase}.cd-info-card__title svg{color:var(--accent-primary);height:13px;width:13px}.cd-info-card__list{display:flex;flex-direction:column;gap:6px}.cd-info-card__row{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.cd-info-card__label{color:var(--text-muted);flex-shrink:0;font-size:.72rem}.cd-info-card__value{color:var(--text-primary);font-family:var(--font-tech);font-size:.78rem;font-weight:500;text-align:right;word-break:break-all}.cd-people{margin-bottom:14px}.cd-people__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.cd-people__title{align-items:center;color:var(--text-secondary);display:flex;font-size:.78rem;font-weight:600;gap:6px;letter-spacing:.3px;margin:0;text-transform:uppercase}.cd-people__title svg{color:var(--accent-primary);height:13px;width:13px}.cd-people__count{background:var(--accent-light);border-radius:10px;color:var(--accent-primary);font-size:.7rem;font-weight:600;padding:2px 8px}.cd-people__list{display:flex;flex-direction:column;gap:4px}.cd-people__row{align-items:center;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:10px;padding:8px 10px;transition:background .12s,border-color .12s}.cd-people__row:hover{background:var(--bg-secondary);border-color:var(--accent-primary)}.cd-people__row>svg{color:var(--text-muted);flex-shrink:0;height:12px;width:12px}.cd-people__avatar{align-items:center;background:var(--accent-light);border-radius:50%;color:var(--accent-primary);display:flex;flex-shrink:0;font-size:.65rem;font-weight:700;height:30px;justify-content:center;letter-spacing:.5px;width:30px}.cd-people__info{flex:1;min-width:0}.cd-people__name{color:var(--text-primary);display:block;font-size:.82rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cd-people__role{color:var(--text-muted);display:block;font-size:.7rem}.cd-people__meta{align-items:center;display:flex;flex-shrink:0;gap:8px}.cd-people__pct{color:var(--accent-primary);font-family:var(--font-tech);font-size:.78rem;font-weight:700}.cd-people__revenue{color:var(--text-secondary);font-family:var(--font-tech);font-size:.75rem}.cd-toggle-btn{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.78rem;font-weight:600;gap:6px;letter-spacing:.3px;margin-bottom:6px;padding:8px 12px;text-transform:uppercase;transition:border-color .15s,color .15s;width:100%}.cd-toggle-btn svg{height:13px;width:13px}.cd-toggle-btn svg:last-child{margin-left:auto}.cd-toggle-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.cd-collapsible{overflow:hidden;transition:max-height .25s ease}.cd-collapsible--hidden{max-height:0!important;overflow:hidden}.cd-empty{color:var(--text-muted);font-size:.85rem;padding:32px 0;text-align:center}.cd-body{gap:0}.cd-body,.cd-folder-list{display:flex;flex-direction:column}.cd-folder-list{gap:6px}.cd-folder-card{align-items:center;border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;display:flex;gap:12px;padding:12px 14px;transition:background .15s,border-color .15s}.cd-folder-card:hover{background:var(--accent-light);border-color:var(--accent-primary)}.cd-folder-card>svg{color:var(--accent-primary);flex-shrink:0;height:18px;width:18px}.cd-folder-card>svg:last-child{color:var(--text-muted);height:14px;margin-left:auto;width:14px}.cd-folder-card__info{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.cd-folder-card__name{color:var(--text-primary);font-size:.85rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cd-folder-card__meta{color:var(--text-muted);font-size:.75rem}.cd-form{gap:16px}.cd-form,.cd-form__group{display:flex;flex-direction:column}.cd-form__group{gap:6px}.cd-form__label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.cd-form__input{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-body);font-size:.85rem;padding:10px 14px;transition:border-color .2s,box-shadow .2s}.cd-form__input::placeholder{color:var(--text-muted)}.cd-form__input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(55,107,68,.1);outline:none}.cd-form__submit{align-self:flex-start}.cd-form__error{background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-sm);color:#d32f2f;font-size:.8rem;padding:8px 12px}.cd-optim__empty{color:var(--text-muted);font-size:.85rem;padding:20px;text-align:center}.cd-optim__hint{color:var(--text-secondary);font-weight:600;margin-top:8px}.cd-optim__missing-list{color:var(--text-secondary);display:inline-block;font-size:.8rem;list-style:disc;margin-top:6px;text-align:left}.cd-optim__grid{display:grid;gap:0;grid-template-columns:1fr 1fr}.cd-optim__col-header{font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:10px 14px;text-transform:uppercase}.cd-optim__col-header--avant{background:var(--bg-secondary);border-radius:var(--radius-md) 0 0 0;color:var(--text-secondary)}.cd-optim__col-header--apres{background:rgba(55,107,68,.08);border-radius:0 var(--radius-md) 0 0;color:var(--accent-primary)}.cd-optim__label{background:var(--bg-secondary);color:var(--text-muted);font-size:.7rem;font-weight:600;grid-column:1/2;letter-spacing:.3px;padding:4px 14px 0;text-transform:uppercase}.cd-optim__label-spacer{background:rgba(55,107,68,.08);padding:4px 14px 0}.cd-optim__cell{color:var(--text-primary);font-family:var(--font-tech);font-size:.85rem;font-weight:600;padding:2px 14px 8px}.cd-optim__cell--avant{background:var(--bg-secondary)}.cd-optim__cell--apres{background:rgba(55,107,68,.08)}.cd-optim__cell--total{font-size:.95rem;padding-bottom:10px;padding-top:8px}.cd-optim__cell--total,.cd-optim__total-label{border-top:2px solid var(--border-color);font-weight:700}.cd-optim__total-label{background:var(--bg-secondary);border-radius:0 0 0 var(--radius-md);color:var(--text-primary);font-size:.75rem;grid-column:1/2;padding:8px 14px 0;text-transform:uppercase}.cd-optim__delta{border-radius:3px;display:inline-block;font-size:.7rem;font-weight:600;margin-left:6px;padding:1px 6px}.cd-optim__delta--positive{background:rgba(55,107,68,.12);color:var(--accent-primary)}.cd-optim__delta--negative{background:rgba(211,47,47,.08);color:#d32f2f}.cd-optim__banner{align-items:center;background:linear-gradient(135deg,var(--accent-primary),#2d8a4e);border-radius:var(--radius-md);color:#fff;display:flex;gap:10px;margin-top:12px;padding:14px 18px}.cd-optim__banner svg{flex-shrink:0;height:22px;width:22px}.cd-optim__banner-text{font-family:var(--font-tech);font-size:1rem;font-weight:700}.cd-optim__banner-pct{font-size:.85rem;font-weight:500;opacity:.85}.cd-optim__details{background:var(--bg-secondary);border-radius:var(--radius-md);margin-top:12px;padding:12px 14px}.cd-optim__details-title{color:var(--text-muted);font-size:.75rem;font-weight:700;letter-spacing:.3px;margin-bottom:8px;text-transform:uppercase}.cd-optim__detail-row{align-items:center;display:flex;justify-content:space-between;padding:4px 0}.cd-optim__detail-bullet{color:var(--text-primary);font-size:.8rem;font-weight:600}.cd-optim__detail-bullet:before{color:var(--accent-primary);content:"•";margin-right:6px}.cd-optim__detail-amount{color:var(--accent-primary);font-family:var(--font-tech);font-size:.8rem;font-weight:700}.cd-optim__detail-desc{color:var(--text-muted);font-size:.72rem;padding-bottom:4px;padding-left:14px}.cd-optim__warning{align-items:center;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius-sm);color:#92400e;display:flex;font-size:.75rem;gap:8px;margin-top:10px;padding:8px 12px}.cd-optim__warning svg{flex-shrink:0;height:14px;width:14px}.upload-grid{display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin-bottom:16px}.upload-card{align-items:center;border:2px dashed var(--border-color);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:16px 10px;position:relative;text-align:center;transition:border-color .15s,background .15s,transform .1s}.upload-card:hover{background:rgba(55,107,68,.04);border-color:var(--accent-primary)}.upload-card--dragover{background:rgba(55,107,68,.08);border-color:var(--accent-primary);transform:scale(1.02)}.upload-card--uploading{background:var(--accent-light);border-color:var(--accent-primary);border-style:solid;pointer-events:none}.upload-card__icon{align-items:center;background:var(--accent-light);border-radius:50%;color:var(--accent-primary);display:flex;height:36px;justify-content:center;width:36px}.upload-card__icon svg{height:18px;width:18px}.upload-card__text{display:flex;flex-direction:column;gap:2px}.upload-card__label{color:var(--text-primary);font-size:.78rem;font-weight:600}.upload-card__desc{color:var(--text-muted);font-size:.65rem}.upload-card__status{align-items:center;color:var(--text-muted);display:flex;font-size:.7rem;gap:4px}.upload-card__spinner,.upload-card__status svg{height:14px;width:14px}.upload-card__spinner{animation:spin .8s linear infinite;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-primary)}.upload-card__count{color:var(--accent-primary);font-size:.7rem;font-weight:500}.net-graph{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:8px;overflow:hidden}.net-graph__svg{display:block;max-height:460px}.net-graph__edge{opacity:.3;stroke:var(--border-strong,#c4c9d4);stroke-width:1.5;transition:stroke .2s,opacity .2s,stroke-width .2s}.net-graph__edge--role{stroke-dasharray:6 3}.net-graph__edge--highlight{opacity:1;stroke:#f5c542;stroke-width:2.5}.net-graph__edge-label{fill:var(--text-muted);font-family:var(--font-tech);font-size:9px;font-weight:600;opacity:.6;transition:fill .2s,opacity .2s}.net-graph__edge-label--highlight{fill:#d4a017;font-size:10px;opacity:1}.net-graph__node{transition:filter .2s,r .15s}.net-graph__node--current{filter:drop-shadow(0 0 8px rgba(45,55,72,.5))}.net-graph__node-group{transition:opacity .2s}.net-graph__node-group--dimmed{opacity:.25}.net-graph__node-group:hover .net-graph__node{filter:drop-shadow(0 0 6px rgba(0,0,0,.3))}.net-graph__label{fill:var(--text-primary);font-family:var(--font-body);font-size:9px;font-weight:500;pointer-events:none}.net-graph__label--company{font-size:10px;font-weight:700;text-transform:none}.net-graph__badge{fill:var(--text-muted);font-family:var(--font-tech);font-size:7px;font-weight:600;letter-spacing:.3px;pointer-events:none}.net-graph__legend{background:var(--bg-color);border-top:1px solid var(--border-color);display:flex;gap:16px;padding:8px 14px}.net-graph__legend-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.7rem;gap:6px}.net-graph__legend-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.doc-status{align-items:center;border-radius:12px;display:inline-flex;flex-shrink:0;font-size:.7rem;font-weight:600;gap:5px;letter-spacing:.3px;padding:3px 10px}.doc-status--completed{background:rgba(22,163,74,.1);color:#16a34a}.doc-status--failed{background:rgba(220,38,38,.1);color:#dc2626}.doc-status--pending{background:rgba(234,179,8,.1);color:#ca8a04}.doc-status--processing{background:rgba(59,130,246,.1);color:#2563eb}.doc-file-info{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;gap:12px;margin-bottom:12px;padding:8px 12px}.doc-file-info svg{color:var(--accent-primary);flex-shrink:0;height:16px;width:16px}.doc-file-info__name{color:var(--text-primary);flex:1;font-size:.82rem;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-file-info__date{color:var(--text-muted);flex-shrink:0;font-family:var(--font-tech);font-size:.72rem}.doc-error{align-items:flex-start;background:rgba(220,38,38,.06);border:1px solid rgba(220,38,38,.2);border-radius:var(--radius-sm);display:flex;gap:10px;margin-bottom:12px;padding:12px 14px}.doc-error svg{color:#dc2626;flex-shrink:0;height:16px;margin-top:1px;width:16px}.doc-error span{color:#dc2626;font-size:.8rem;line-height:1.4}.doc-processing{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;gap:12px;padding:32px 0}.doc-processing__spinner{animation:spin .8s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-primary);height:28px;width:28px}.doc-processing span{font-size:.85rem}.doc-data{display:flex;flex-direction:column;gap:12px}.doc-card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.doc-card__header{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:.75rem;font-weight:600;gap:6px;letter-spacing:.3px;padding:10px 12px;text-transform:uppercase}.doc-card__header svg{color:var(--accent-primary);height:13px;width:13px}.doc-card__body{display:flex;flex-direction:column;gap:6px;padding:10px 12px}.doc-card__row{align-items:center;display:flex;gap:8px;justify-content:space-between}.doc-card__label{color:var(--text-muted);flex-shrink:0;font-size:.72rem}.doc-card__value{font-weight:500;word-break:break-all}.doc-card__input,.doc-card__value{color:var(--text-primary);font-family:var(--font-tech);font-size:.78rem;text-align:right}.doc-card__input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:3px;padding:2px 6px;transition:border-color .15s;width:120px}.doc-card__input:focus{border-color:var(--accent-primary);outline:none}.doc-table-section{border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.doc-table-section__toggle{align-items:center;background:var(--bg-secondary);border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:6px;letter-spacing:.3px;padding:10px 12px;text-transform:uppercase;transition:color .15s;width:100%}.doc-table-section__toggle svg{height:13px;width:13px}.doc-table-section__toggle svg:first-child{color:var(--accent-primary)}.doc-table-section__toggle svg:last-child{margin-left:auto}.doc-table-section__toggle:hover{color:var(--accent-primary)}.doc-table-section__content{overflow:hidden;transition:max-height .25s ease}.doc-table-section__content--hidden{max-height:0!important}.doc-table-section table{border-collapse:collapse;font-size:.75rem;width:100%}.doc-table-section th{background:var(--bg-secondary);color:var(--text-secondary);font-size:.7rem;font-weight:600;letter-spacing:.3px;text-align:left;text-transform:uppercase}.doc-table-section td,.doc-table-section th{border-bottom:1px solid var(--border-color);padding:6px 10px}.doc-table-section td{color:var(--text-primary);font-family:var(--font-tech)}.doc-table-section tr:last-child td{border-bottom:none}.doc-table-section tr:hover td{background:rgba(55,107,68,.03)}.cd-fiscal{margin-bottom:14px}.cd-fiscal__cards{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:10px}.cd-fiscal__card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:12px}.cd-fiscal__card-title{align-items:center;color:var(--text-secondary);display:flex;font-size:.7rem;font-weight:600;gap:6px;letter-spacing:.3px;margin-bottom:6px;text-transform:uppercase}.cd-fiscal__card-title svg{color:var(--accent-primary);height:13px;width:13px}.cd-fiscal__card-amount{color:var(--text-primary);font-family:var(--font-tech);font-size:1rem;font-weight:700}.cd-fiscal__total{align-items:center;background:var(--accent-light);border:2px solid var(--accent-primary);border-radius:var(--radius-sm);display:flex;justify-content:space-between;margin-bottom:10px;padding:12px 14px}.cd-fiscal__total>span:first-child{color:var(--accent-primary);font-size:.82rem;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.cd-fiscal__total .cd-fiscal__card-amount{color:var(--accent-primary);font-size:1.1rem}.cd-fiscal__persons{display:flex;flex-direction:column;gap:6px}.cd-fiscal__person-row{align-items:flex-start;border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;font-size:.78rem;justify-content:space-between;padding:8px 10px}.cd-fiscal__person-name{color:var(--text-primary);font-weight:600}.cd-fiscal__person-values{align-items:flex-end;color:var(--text-secondary);display:flex;flex-direction:column;font-family:var(--font-tech);font-size:.75rem;gap:2px}.cd-fiscal__person-declared{color:var(--text-muted);font-size:.68rem;font-style:italic}.person-detail__expand-btn{background:transparent;border:1px dashed var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:block;font-size:.72rem;margin:4px 0;padding:6px 12px;text-align:center;transition:color .15s,border-color .15s;width:100%}.person-detail__expand-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.person-detail__bracket-list{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:3px;margin-bottom:6px;padding:8px 12px}.person-detail__bracket-list--hidden{display:none}.person-detail__bracket-line{color:var(--text-secondary);font-family:var(--font-tech);font-size:.72rem}.doc-declarants{display:flex;flex-direction:column;gap:8px}.doc-declarant-card{border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .15s}.doc-declarant-card:hover{border-color:var(--accent-primary)}.doc-declarant-card__header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;gap:10px;padding:10px 12px}.doc-declarant-card__name{color:var(--text-primary);flex:1;font-size:.82rem;font-weight:600}.doc-declarant-card__num{background:var(--bg-color);border:1px solid var(--border-color);border-radius:10px;color:var(--text-muted);font-family:var(--font-tech);font-size:.68rem;font-weight:600;padding:2px 8px}.doc-declarant-card__body{display:flex;flex-direction:column;gap:0;padding:8px 12px}.doc-declarant-card__row{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:6px 0}.doc-declarant-card__row:last-child{border-bottom:none}.doc-declarant-card__label{color:var(--text-muted);font-size:.75rem}.doc-declarant-card__value{color:var(--text-primary);font-family:var(--font-tech);font-size:.8rem;font-weight:600}.doc-employees{display:flex;flex-direction:column;gap:8px}.doc-emp-card{border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .15s}.doc-emp-card:hover{border-color:var(--accent-primary)}.doc-emp-card__header{align-items:center;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:background .12s}.doc-emp-card__header:hover{background:var(--bg-secondary)}.doc-emp-card__header svg:last-child{color:var(--text-muted);height:12px;margin-left:auto;transition:transform .2s;width:12px}.doc-emp-card--open .doc-emp-card__header svg:last-child{transform:rotate(180deg)}.doc-emp-card__avatar{align-items:center;background:var(--accent-light);border-radius:50%;color:var(--accent-primary);display:flex;flex-shrink:0;font-size:.65rem;font-weight:700;height:32px;justify-content:center;letter-spacing:.5px;width:32px}.doc-emp-card__info{flex:1;min-width:0}.doc-emp-card__name{color:var(--text-primary);display:block;font-size:.82rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-emp-card__job{color:var(--text-muted);display:block;font-size:.7rem}.doc-emp-card__kpis{background:var(--bg-secondary);border-top:1px solid var(--border-color);display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));overflow:hidden;padding:8px 12px;transition:max-height .25s ease}.doc-emp-card:not(.doc-emp-card--open) .doc-emp-card__kpis{border-top:none;max-height:0;padding:0 12px}.doc-emp-card__kpi{display:flex;flex-direction:column;gap:1px}.doc-emp-card__kpi-value{color:var(--text-primary);font-family:var(--font-tech);font-size:.78rem;font-weight:700}.doc-emp-card__kpi-label{color:var(--text-muted);font-size:.62rem;letter-spacing:.3px;text-transform:uppercase}.person-detail__loading{color:var(--text-secondary);padding:40px 0;text-align:center}.person-detail__header{align-items:flex-start;display:flex;gap:12px;margin-bottom:24px}.person-detail__back{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;flex-shrink:0;padding:6px 8px;transition:color .15s,border-color .15s}.person-detail__back:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.person-detail__back svg{height:16px;width:16px}.person-detail__header-info{flex:1}.person-detail__name{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0}.person-detail__dob{color:var(--text-secondary);font-size:.8rem}.person-detail__company-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:24px;padding:16px}.person-detail__company-header{align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.person-detail__company-header:hover .person-detail__company-name{color:var(--accent-primary)}.person-detail__company-name{color:var(--text-primary);font-size:.95rem;font-weight:600;transition:color .15s}.person-detail__role-badge{background:var(--accent-light);border-radius:4px;color:var(--accent-primary);font-size:.7rem;font-weight:500;padding:2px 8px}.person-detail__ownership{color:var(--accent-primary);font-size:.85rem;font-weight:500;margin-top:10px}.person-detail__revenue-table{border-collapse:collapse;margin-bottom:12px;width:100%}.person-detail__revenue-table td{border-bottom:1px solid var(--border-color);font-size:.85rem;padding:6px 0}.person-detail__revenue-table td:first-child{color:var(--text-secondary)}.person-detail__revenue-value{color:var(--text-primary);font-family:var(--font-tech);font-weight:500;text-align:right}.person-detail__tax-cards{display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-top:12px}.person-detail__card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:12px}.person-detail__card--highlight{background:var(--accent-light);border-color:var(--accent-primary);grid-column:1/-1}.person-detail__card-title{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;font-weight:600;gap:6px;letter-spacing:.3px;margin:0 0 8px;text-transform:uppercase}.person-detail__card-title svg{color:var(--accent-primary);height:14px;width:14px}.person-detail__card-amount{color:var(--text-primary);font-family:var(--font-tech);font-size:1.1rem;font-weight:600;margin-bottom:4px}.person-detail__card-rate{color:var(--text-secondary);font-size:.75rem}.login-page{align-items:center;background:var(--bg-secondary,#f8fafc);display:flex;font-family:Inter,sans-serif;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.login-page__container{max-width:440px;padding:1rem;position:relative;width:100%;z-index:10}.login-page__shape{animation:float 14s ease-in-out infinite alternate;border-radius:50%;filter:blur(80px);opacity:.6;pointer-events:none;position:absolute;z-index:0}.login-page__shape--1{animation-delay:0s;background:linear-gradient(135deg,rgba(55,107,68,.4),rgba(16,185,129,.2));height:500px;right:-100px;top:-150px;width:500px}.login-page__shape--2{animation-delay:-5s;background:linear-gradient(135deg,rgba(79,70,229,.2),rgba(139,92,246,.25));bottom:-200px;height:600px;left:-150px;width:600px}.login-page__shape--3{animation-delay:-2s;animation-duration:18s;background:rgba(14,165,233,.2);height:400px;left:20%;top:40%;width:400px}.login-page__card{backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);background:hsla(0,0%,100%,.65);border:1px solid hsla(0,0%,100%,.8);border-radius:20px;box-shadow:0 4px 6px -1px rgba(0,0,0,.05),0 25px 50px -12px rgba(0,0,0,.15),inset 0 0 0 1px hsla(0,0%,100%,.5);padding:3rem 2.5rem;transition:transform .3s ease,box-shadow .3s ease}.login-page__card:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.05),0 30px 60px -15px rgba(0,0,0,.15),inset 0 0 0 1px hsla(0,0%,100%,.6);transform:translateY(-2px)}.login-page__header{margin-bottom:2.5rem;text-align:center}.login-page__logo{display:block;filter:drop-shadow(0 4px 6px rgba(0,0,0,.05));height:64px;margin:0 auto 1.5rem;max-width:100%;object-fit:contain}.login-page__title{color:var(--text-primary,#0f172a);font-size:1.875rem;font-weight:700;letter-spacing:-.025em;margin:0 0 .5rem}.login-page__subtitle{color:var(--text-secondary,#64748b);font-size:.9375rem;margin:0}.login-page__alert{align-items:center;backdrop-filter:blur(8px);background:hsla(0,93%,94%,.6);border:1px solid hsla(0,91%,71%,.4);border-radius:12px;color:#b91c1c;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;margin-bottom:2rem;padding:1rem 1.25rem}.login-page__alert svg{flex-shrink:0;height:20px;width:20px}.login-page__form{display:flex;flex-direction:column;gap:1.25rem}.login-page__field{display:flex;flex-direction:column;gap:.375rem}.login-page__label{color:var(--text-primary,#334155);font-size:.875rem;font-weight:500}.login-page__input{background:hsla(0,0%,100%,.7);border:1px solid rgba(226,232,240,.8);border-radius:12px;box-sizing:border-box;color:var(--text-primary,#0f172a);font-family:Inter,sans-serif;font-size:.9375rem;outline:none;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s,background .2s;width:100%}.login-page__input::placeholder{color:#94a3b8}.login-page__input:focus{background:#fff;border-color:rgba(55,107,68,.5);box-shadow:0 0 0 4px rgba(55,107,68,.1)}.login-page__forgot{display:flex;justify-content:flex-end;margin-top:.25rem}.login-page__forgot a{color:var(--accent-primary,#376b44);font-size:.8125rem;font-weight:500;text-decoration:none;transition:color .15s ease}.login-page__forgot a:hover{color:var(--accent-hover,#2d5a38);text-decoration:underline}.login-page__submit{background:linear-gradient(135deg,#376b44,#2d5737);border:none;border-radius:12px;box-shadow:0 4px 12px rgba(55,107,68,.3);color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.875rem 1.5rem;transition:background .2s,box-shadow .2s,transform .1s;width:100%}.login-page__submit:hover{background:linear-gradient(135deg,#3e784c,#32613d);box-shadow:0 6px 16px rgba(55,107,68,.4);transform:translateY(-1px)}.login-page__submit:active{box-shadow:0 2px 4px rgba(55,107,68,.4);transform:translateY(1px)}[data-theme=dark] .login-page{background:var(--bg-secondary,#0f172a)}[data-theme=dark] .login-page .login-page__card{background:rgba(30,41,59,.65);border-color:hsla(0,0%,100%,.08);box-shadow:0 4px 6px -1px rgba(0,0,0,.2),0 25px 50px -12px rgba(0,0,0,.4),inset 0 0 0 1px hsla(0,0%,100%,.05)}[data-theme=dark] .login-page .login-page__card:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.3),0 30px 60px -15px rgba(0,0,0,.5),inset 0 0 0 1px hsla(0,0%,100%,.08)}[data-theme=dark] .login-page .login-page__title{color:#f8fafc}[data-theme=dark] .login-page .login-page__subtitle{color:#94a3b8}[data-theme=dark] .login-page .login-page__label{color:#cbd5e1}[data-theme=dark] .login-page .login-page__input{background:rgba(15,23,42,.6);border-color:hsla(0,0%,100%,.1);color:#f8fafc}[data-theme=dark] .login-page .login-page__input::placeholder{color:#64748b}[data-theme=dark] .login-page .login-page__input:focus{background:rgba(15,23,42,.8);border-color:rgba(55,107,68,.8);box-shadow:0 0 0 4px rgba(55,107,68,.2)}[data-theme=dark] .login-page .login-page__alert{background:rgba(127,29,29,.3);border-color:hsla(0,91%,71%,.3);color:#fca5a5}@media(prefers-color-scheme:dark){body:not([data-theme=light]) .login-page{background:var(--bg-secondary,#0f172a)}body:not([data-theme=light]) .login-page .login-page__card{background:rgba(30,41,59,.65);border-color:hsla(0,0%,100%,.08);box-shadow:0 4px 6px -1px rgba(0,0,0,.2),0 25px 50px -12px rgba(0,0,0,.4),inset 0 0 0 1px hsla(0,0%,100%,.05)}body:not([data-theme=light]) .login-page .login-page__card:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.3),0 30px 60px -15px rgba(0,0,0,.5),inset 0 0 0 1px hsla(0,0%,100%,.08)}body:not([data-theme=light]) .login-page .login-page__title{color:#f8fafc}body:not([data-theme=light]) .login-page .login-page__subtitle{color:#94a3b8}body:not([data-theme=light]) .login-page .login-page__label{color:#cbd5e1}body:not([data-theme=light]) .login-page .login-page__input{background:rgba(15,23,42,.6);border-color:hsla(0,0%,100%,.1);color:#f8fafc}body:not([data-theme=light]) .login-page .login-page__input::placeholder{color:#64748b}body:not([data-theme=light]) .login-page .login-page__input:focus{background:rgba(15,23,42,.8);border-color:rgba(55,107,68,.8);box-shadow:0 0 0 4px rgba(55,107,68,.2)}body:not([data-theme=light]) .login-page .login-page__alert{background:rgba(127,29,29,.3);border-color:hsla(0,91%,71%,.3);color:#fca5a5}}@keyframes float{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-40px) scale(1.05)}66%{transform:translate(-30px,30px) scale(.95)}to{transform:translate(20px,40px) scale(1.02)}}.dashboard-wrapper{display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100%}.dashboard{display:grid;flex:1;grid-template-columns:50% 1fr;grid-template-rows:50% 1fr;min-height:0;overflow:hidden;position:relative;width:100%}.dashboard__header{align-items:center;background:var(--bg-color);border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:10px 20px}.dashboard__header-left{align-items:center;display:flex;gap:16px}.dashboard__user-info{align-items:center;border-left:1px solid var(--border-color);display:flex;gap:10px;padding-left:16px}.dashboard__user-name{color:var(--text-primary);font-size:.85rem;font-weight:600}.dashboard__user-email{color:var(--text-muted);font-size:.75rem}.dashboard__user-code{background:var(--accent-light);border-radius:20px;color:var(--accent-primary);font-family:var(--font-tech);font-size:.7rem;font-weight:500;padding:2px 8px}.dashboard__left{border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);display:flex;flex-direction:column;grid-column:1;grid-row:1;min-height:0;min-width:0;transition:opacity .15s ease}.dashboard__map{flex:1;min-height:0}.dashboard__holding-tree{border-top:1px solid var(--border-color);flex:0;overflow-y:auto;transition:flex .3s ease}.dashboard__holding-tree:empty{border-top:none}.dashboard__separator{display:none}.dashboard__panel{background:var(--bg-color);display:flex;flex-direction:column;grid-column:2;grid-row:1/-1;min-height:0;min-width:0;overflow:hidden}.dashboard--expanded{grid-template-columns:1fr;grid-template-rows:1fr}.dashboard--expanded .dashboard__left{display:none}.dashboard--expanded .dashboard__panel{grid-column:1;grid-row:1}.dashboard__header-right{align-items:center;display:flex;gap:12px}.dashboard__logout,.dashboard__theme-toggle{align-items:center;background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;padding:6px;text-decoration:none;transition:color .2s,border-color .2s}.dashboard__logout svg,.dashboard__theme-toggle svg{height:16px;width:16px}.dashboard__logout:hover,.dashboard__theme-toggle:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.dashboard__logo{align-items:center;display:flex;flex-shrink:0}.dashboard__logo img{filter:var(--logo-filter);height:24px}.dashboard__stats{display:flex;gap:6px}.dashboard__stat{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);display:flex;font-size:.75rem;gap:5px;padding:5px 10px}.dashboard__stat svg{color:var(--accent-primary);height:13px;width:13px}.dashboard__stat span{color:var(--text-primary);font-family:var(--font-tech);font-size:.8rem;font-weight:600}.dashboard__stat small{color:var(--text-muted);font-size:.65rem}.dashboard__panel-content{flex:1;overflow-y:auto;padding:20px}.holding-tree{padding:12px 8px}.holding-tree__title{align-items:center;color:var(--text-secondary);display:flex;font-size:.7rem;font-weight:600;gap:4px;letter-spacing:.05em;margin-bottom:10px;text-transform:uppercase}.holding-tree__title svg{height:12px;width:12px}.holding-tree__container,.holding-tree__node{align-items:center;display:flex;flex-direction:column}.holding-tree__box{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-color);cursor:pointer;display:inline-flex;font-size:.7rem;font-weight:500;gap:4px;padding:4px 10px;transition:all .15s ease;white-space:nowrap}.holding-tree__box:hover{background:var(--accent-light);border-color:var(--accent-primary)}.holding-tree__box--active{border-color:var(--accent-primary)}.holding-tree__box--active,.holding-tree__box--active:hover{background:var(--accent-primary);color:#fff}.holding-tree__percent{background:var(--accent-light);border-radius:10px;color:var(--accent-primary);font-family:var(--font-tech);font-size:.6rem;font-weight:700;padding:1px 5px}.holding-tree__box--active .holding-tree__percent{background:hsla(0,0%,100%,.3);color:var(--accent-primary)}.holding-tree__children{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:0}.holding-tree__branch{align-items:center;display:flex;flex-direction:column}.holding-tree__connector{background:var(--border-color);height:12px;width:1px}@keyframes panel-slide-in{0%{opacity:0;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}@keyframes card-appear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 rgba(55,107,68,.5)}70%{box-shadow:0 0 0 10px rgba(55,107,68,0)}to{box-shadow:0 0 0 0 rgba(55,107,68,0)}}@keyframes skeleton-shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.leaflet-container{background:#f0f0f0}.company-marker{filter:drop-shadow(0 0 4px rgba(55,107,68,.5));transition:filter .3s ease}.company-marker__dot{background-color:#376b44;border:2px solid #fff;border-radius:50%;box-shadow:0 0 8px rgba(55,107,68,.4);height:12px;transition:transform .2s ease,box-shadow .3s ease,background-color .3s ease;width:12px}.company-marker--active{filter:drop-shadow(0 0 8px rgba(55,107,68,.8));z-index:1000!important}.company-marker--active .company-marker__dot{animation:pulse-ring 1.5s ease-out infinite;transform:scale(1.5)}[data-theme=dark] .company-marker{filter:none}[data-theme=dark] .company-marker .company-marker__dot{border-color:transparent}[data-theme=dark] .company-marker .company-marker__dot--high{background:var(--neon-green);box-shadow:0 0 8px var(--neon-green),0 0 20px var(--neon-green-glow),0 0 40px rgba(0,255,136,.2)}[data-theme=dark] .company-marker .company-marker__dot--mid{background:var(--neon-cyan);box-shadow:0 0 8px var(--neon-cyan),0 0 20px var(--neon-cyan-glow),0 0 40px rgba(0,204,255,.2)}[data-theme=dark] .company-marker .company-marker__dot--low{background:var(--neon-pink);box-shadow:0 0 8px var(--neon-pink),0 0 20px var(--neon-pink-glow),0 0 40px rgba(255,107,157,.2)}[data-theme=dark] .company-marker--active .company-marker__dot{animation:pulse-neon 1.5s ease-out infinite}@keyframes pulse-neon{0%{box-shadow:0 0 8px currentColor,0 0 20px currentColor}50%{box-shadow:0 0 16px currentColor,0 0 40px currentColor,0 0 60px currentColor}to{box-shadow:0 0 8px currentColor,0 0 20px currentColor}}.cluster-marker-wrapper{background:transparent!important;border:none!important}.cluster-marker{align-items:center;background:#376b44;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 8px rgba(55,107,68,.4);color:#fff;display:flex;font-family:var(--font-tech);font-size:.85rem;font-weight:700;height:40px;justify-content:center;transition:transform .2s ease,background .3s ease,box-shadow .3s ease;width:40px}.cluster-marker:hover{transform:scale(1.15)}.cluster-marker--medium{font-size:.95rem;height:48px;width:48px}.cluster-marker--large{font-size:1.05rem;height:56px;width:56px}[data-theme=dark] .cluster-marker{backdrop-filter:blur(4px);background:rgba(0,255,136,.15);border:2px solid var(--neon-green);box-shadow:0 0 25px var(--neon-green-glow);color:var(--neon-green)}[data-theme=dark] .cluster-marker--medium{box-shadow:0 0 30px var(--neon-green-glow)}[data-theme=dark] .cluster-marker--large{box-shadow:0 0 40px var(--neon-green-glow)}.company-tooltip{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);color:var(--text-primary);font-size:.8rem;font-weight:500;padding:4px 10px}.company-tooltip:before{border-top-color:var(--border-color)!important}[data-theme=dark] .company-tooltip{backdrop-filter:blur(8px);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:0 4px 20px rgba(0,0,0,.5);color:var(--text-primary)}[data-theme=dark] .company-tooltip:before{border-top-color:var(--glass-border)!important}.floating-panel{animation:floating-panel-in .2s ease-out;background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-family:var(--font-body);max-width:320px;min-width:260px;padding:16px 18px;pointer-events:auto;position:absolute;z-index:1000}.floating-panel__header{align-items:center;display:flex;gap:8px;margin-bottom:4px}.floating-panel__name{color:var(--text-primary);font-size:1rem;font-weight:600}.floating-panel__badge{background:var(--accent-light);border-radius:20px;color:var(--accent-primary);display:inline-block;flex-shrink:0;font-size:.65rem;font-weight:600;padding:2px 8px;white-space:nowrap}.floating-panel__activity{color:var(--text-muted);font-size:.75rem;margin-bottom:12px}.floating-panel__stats{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:8px;margin-bottom:14px;padding:10px 12px}.floating-panel__stat{align-items:center;display:flex;gap:12px;justify-content:space-between}.floating-panel__stat-label{color:var(--text-muted);font-size:.75rem}.floating-panel__stat-value{color:var(--text-primary);font-family:var(--font-tech);font-size:.8rem;font-weight:600;text-align:right}.floating-panel__btn{background:var(--accent-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.82rem;font-weight:500;padding:9px 12px;transition:background .2s;width:100%}.floating-panel__btn:hover{background:var(--accent-hover)}[data-theme=dark] .floating-panel{backdrop-filter:blur(12px);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:0 8px 32px rgba(0,0,0,.6),0 0 20px rgba(0,255,136,.05)}[data-theme=dark] .floating-panel .floating-panel__stats{background:hsla(0,0%,100%,.03);border-color:var(--glass-border)}[data-theme=dark] .floating-panel .floating-panel__btn{background:rgba(0,255,136,.1);border:1px solid var(--neon-green);color:var(--neon-green)}[data-theme=dark] .floating-panel .floating-panel__btn:hover{background:rgba(0,255,136,.2)}@keyframes floating-panel-in{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}.map-hud{color:transparent;font-family:var(--font-tech);font-size:9px;letter-spacing:1px;pointer-events:none;position:absolute;transition:color .3s ease;z-index:800}.map-hud--top-left{left:12px;top:12px}.map-hud--bottom-right{bottom:12px;right:12px}[data-theme=dark] .map-hud{color:rgba(0,255,136,.5)}.breadcrumb{align-items:center;display:flex;font-size:.75rem;gap:6px;margin-bottom:16px}.breadcrumb,.breadcrumb__sep{color:var(--text-muted)}.breadcrumb__link{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.75rem;padding:0;transition:color .15s}.breadcrumb__link:hover{color:var(--accent-primary)}.breadcrumb__item--current{color:var(--text-primary);font-weight:500}.skeleton{display:flex;flex-direction:column;gap:12px;padding:8px 0}.skeleton__line{animation:skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,var(--bg-secondary) 25%,#e5e7eb 50%,var(--bg-secondary) 75%);background-size:400px 100%;border-radius:4px;height:14px}.skeleton__line--short{width:40%}.skeleton__line:nth-child(2){width:90%}.skeleton__line:nth-child(3){width:70%}.skeleton__line:nth-child(4){width:80%}.skeleton__line:nth-child(5){width:60%}.skeleton__line:nth-child(6){width:75%}.map-button{align-items:center;background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-md);bottom:20px;box-shadow:var(--shadow-lg);color:var(--text-primary);cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:8px;left:20px;padding:10px 16px;position:absolute;transition:opacity .3s ease,transform .3s ease,background .2s,border-color .2s;z-index:1000}.map-button svg{color:var(--accent-primary);height:18px;width:18px}.map-button:hover{background:var(--bg-secondary);border-color:var(--accent-primary)}.map-button--hidden{opacity:0;pointer-events:none;transform:translateY(8px)}[data-theme=dark] .leaflet-container{background:#0d1117}[data-theme=dark] .skeleton__line{background:linear-gradient(90deg,var(--bg-secondary) 25%,#2a2a40 50%,var(--bg-secondary) 75%);background-size:400px 100%}.sidebar-form{display:flex;flex-direction:column;gap:12px;margin-top:16px}.sidebar-form__label{color:var(--text-secondary);font-size:.8rem;font-weight:500}.sidebar-form__input{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.85rem;padding:8px 12px;transition:border-color .2s}.sidebar-form__input:focus{border-color:var(--accent-primary);outline:none}.sidebar-form__error{background:rgba(211,47,47,.08);border-radius:var(--radius-sm);color:#d32f2f;font-size:.8rem;padding:6px 10px}.sidebar-upload{margin-bottom:20px}.sidebar-upload__grid{display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-top:10px}.sidebar-upload__zone{align-items:center;border:2px dashed var(--border-color);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:14px 8px;text-align:center;transition:border-color .2s,background .2s}.sidebar-upload__zone svg{color:var(--text-muted);height:20px;width:20px}.sidebar-upload__zone--active,.sidebar-upload__zone:hover{background:rgba(55,107,68,.05);border-color:var(--accent-primary)}.sidebar-upload__zone--uploading{opacity:.6;pointer-events:none}.sidebar-upload__zone-label{color:var(--text-secondary);font-size:.75rem;font-weight:500}.sidebar-upload__file-list{display:flex;flex-direction:column;gap:2px}.sidebar-upload__file-name{color:var(--accent-primary);font-family:var(--font-tech);font-size:.7rem}.sidebar-docs{display:flex;flex-direction:column;gap:6px}.sidebar-docs__card{align-items:center;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:border-color .2s,background .2s}.sidebar-docs__card:hover{background:var(--bg-secondary);border-color:var(--accent-primary)}.sidebar-docs__card [data-lucide=chevron-right]{color:var(--text-muted);flex-shrink:0;height:14px;width:14px}.sidebar-docs__info{flex:1;min-width:0}.sidebar-docs__name{color:var(--text-primary);display:block;font-size:.8rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-docs__meta{color:var(--text-muted);font-size:.7rem}.sidebar-field{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:8px 0}.sidebar-field__label{color:var(--text-secondary);flex-shrink:0;font-size:.8rem;margin-right:12px}.sidebar-field__value{align-items:center;color:var(--text-primary);display:flex;font-family:var(--font-tech);font-size:.85rem;font-weight:500;gap:6px}.sidebar-field__edit,.sidebar-field__fill{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.75rem;padding:2px 4px;transition:color .15s}.sidebar-field__edit:hover,.sidebar-field__fill,.sidebar-field__fill:hover{color:var(--accent-primary)}.sidebar-field__fill{font-size:.7rem}.sidebar-field__missing{color:var(--text-muted);font-size:.75rem;font-style:italic}.sidebar-field__input{background:var(--bg-color);border:1px solid var(--accent-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-tech);font-size:.8rem;padding:4px 8px;width:120px}.sidebar-field__input:focus{outline:none}.sidebar-field__cancel,.sidebar-field__save{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;font-size:.8rem;padding:2px 6px;transition:all .15s}.sidebar-field__save{color:var(--accent-primary)}.sidebar-field__save:hover{background:var(--accent-primary);color:#fff}.sidebar-field__cancel{color:var(--text-muted)}.sidebar-field__cancel:hover{color:var(--text-primary)}.sidebar-table{border-collapse:collapse;font-size:.8rem;margin-top:8px;width:100%}.sidebar-table th{border-bottom:2px solid var(--border-color);color:var(--text-secondary);font-size:.75rem;font-weight:500;padding:6px 8px;text-align:left}.sidebar-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:6px 8px}.sidebar-table tbody tr:hover{background:var(--bg-secondary)}.sidebar-employee{border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:8px;overflow:hidden}.sidebar-employee__header{background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;font-size:.8rem;font-weight:500;padding:10px 12px;transition:background .15s}.sidebar-employee__header:hover{background:var(--border-color)}.sidebar-employee__summary{color:var(--text-muted);font-family:var(--font-tech);font-size:.7rem;padding:6px 12px}.sidebar-employee__details{margin:0}.sidebar-error{background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:var(--radius-sm);color:#dc3545;font-size:.85rem;margin-top:12px;padding:12px 16px}.sidebar-processing{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;gap:12px;padding:40px 20px;text-align:center}.sidebar-processing svg{animation:spin 1.5s linear infinite;color:var(--accent-primary);height:24px;width:24px}.sidebar-processing p{font-size:.85rem;margin:0}body.page-document,html:has(body.page-document){height:auto;overflow:auto}.document-detail{margin-top:20px}.document-detail__analysis{margin-top:24px}.document-preview{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:14px;padding:24px}.document-preview__thumb{border:1px solid var(--border-color);border-radius:var(--radius-sm);max-height:180px;max-width:100%;object-fit:contain}.document-preview__icon{font-size:3rem;opacity:.6}.document-preview__filename{color:var(--text-secondary);font-family:var(--font-tech);font-size:.8rem;text-align:center;word-break:break-all}.document-preview__btn{padding:8px 24px;width:auto}.editable-field__form{align-items:center;display:flex;gap:4px}.editable-field__form[hidden]{display:none}.editable-field__input{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-body);font-size:.85rem;padding:3px 8px;width:140px}.editable-field__input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(55,107,68,.15);outline:none}.editable-field__btn{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:.8rem;line-height:1;padding:3px 7px}.editable-field__btn--save{border-color:#059669;color:#059669}.editable-field__btn--save:hover{background:rgba(52,211,153,.1)}.editable-field__btn--cancel{border-color:var(--accent-uhoh);color:var(--accent-uhoh)}.editable-field__btn--cancel:hover{background:rgba(244,63,94,.1)}.editable-field__edit{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.85rem;margin-left:6px;opacity:.6;padding:0 4px}.editable-field__edit:hover{color:var(--accent-primary);opacity:1}.processing-indicator{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.processing-indicator__spinner{animation:spin 1s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-primary);height:48px;width:48px}.processing-indicator__title{color:var(--accent-primary);font-family:var(--font-tech);font-size:1rem;letter-spacing:2px;margin-top:24px;text-transform:uppercase}.processing-indicator__text{color:var(--text-secondary);font-family:var(--font-body);font-size:.85rem;margin-top:8px}@keyframes spin{to{transform:rotate(1turn)}}.field-alert{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.3);border-radius:20px;color:#d97706;display:inline-block;font-family:var(--font-tech);font-size:.75rem;letter-spacing:.5px;padding:2px 10px;text-transform:uppercase}.field-missing{align-items:center;display:inline-flex;gap:8px}.field-missing__badge{background:rgba(244,63,94,.08);border:1px solid rgba(244,63,94,.3);border-radius:20px;color:var(--accent-uhoh);display:inline-block;font-family:var(--font-heading);font-size:.6rem;font-weight:500;letter-spacing:.5px;padding:2px 10px;text-transform:uppercase}.field-missing__action{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-family:var(--font-body);font-size:.8rem;padding:0;text-decoration:underline;text-decoration-style:dashed;text-underline-offset:3px;transition:color .2s}.field-missing__action:hover{color:var(--accent-primary)}.extracted-data__section-title{color:var(--accent-primary);font-family:var(--font-heading);font-size:1.1rem;font-weight:600;margin-bottom:12px}.extracted-data__table{background:var(--bg-color);border:1px solid var(--border-color);border-collapse:collapse;border-radius:var(--radius-md);font-family:var(--font-body);margin-bottom:16px;overflow:hidden;width:100%}.extracted-data__table th{border-bottom:2px solid var(--border-color);color:var(--accent-primary);font-family:var(--font-heading);font-size:.8rem;font-weight:600;letter-spacing:1px;padding:10px 14px;text-align:left;text-transform:uppercase}.extracted-data__table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:.85rem;padding:9px 14px}.extracted-data__table tr:hover td{background:var(--accent-light)}.extracted-data__table tr:last-child td{border-bottom:none}.expandable-row__trigger{cursor:pointer}.expandable-row__trigger:hover td{background:var(--accent-light)}.expandable-row__trigger--open td{border-bottom-color:transparent}.expandable-row__detail[hidden]{display:none}.expandable-row__detail>td{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:0 14px 14px}.expandable-row__subtable{background:var(--bg-color);border:1px solid var(--border-color);border-collapse:collapse;border-radius:var(--radius-sm);font-family:var(--font-body);overflow:hidden;width:100%}.expandable-row__subtable th{color:var(--accent-primary);font-family:var(--font-heading);font-size:.7rem;font-weight:600;letter-spacing:1px;text-align:left;text-transform:uppercase}.expandable-row__subtable td,.expandable-row__subtable th{border-bottom:1px solid var(--border-color);padding:7px 12px}.expandable-row__subtable td{color:var(--text-primary);font-size:.8rem}.expandable-row__subtable tr:last-child td{border-bottom:none}.sortable-th{cursor:pointer;user-select:none}.sortable-th:hover{color:var(--accent-hover)}.sortable-th--asc:after{content:" ▲";font-size:.7rem}.sortable-th--desc:after{content:" ▼";font-size:.7rem}.admin-upload{font-family:Inter,sans-serif;margin:2rem auto;max-width:800px;padding:0 1rem}.admin-upload__header{margin-bottom:1.5rem}.admin-upload__title{color:var(--text-primary,#0f172a);font-size:1.375rem;font-weight:700;margin:0}.admin-upload__subtitle{color:var(--text-secondary,#64748b);font-size:.875rem;margin:.375rem 0 0}.admin-upload__tabs{border-bottom:2px solid var(--border-color,#e5e7eb);display:flex;gap:0;margin-bottom:0}.admin-upload__tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary,#64748b);cursor:pointer;font-family:Inter,sans-serif;font-size:.875rem;font-weight:500;margin-bottom:-2px;padding:.75rem 1.25rem;transition:color .2s,border-color .2s}.admin-upload__tab:hover{color:var(--text-primary,#0f172a)}.admin-upload__tab--active{border-bottom-color:var(--accent-primary,#376b44);color:var(--accent-primary,#376b44);font-weight:600}.admin-upload__panels{background:var(--bg-primary,#fff);border:1px solid var(--border-color,#e5e7eb);border-radius:0 0 12px 12px;border-top:none}.admin-upload__panel{display:none;padding:1.5rem}.admin-upload__panel--active{display:block}.admin-upload__drop-zone{align-items:center;background:var(--bg-secondary,#f8fafc);border:2px dashed var(--border-color,#d1d5db);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;justify-content:center;min-height:160px;padding:2.5rem 1.5rem;text-align:center;transition:border-color .2s,background .2s,box-shadow .2s}.admin-upload__drop-zone:hover{background:rgba(55,107,68,.04);border-color:var(--accent-primary,#376b44)}.admin-upload__drop-zone--active{background:rgba(55,107,68,.06);border-color:var(--accent-primary,#376b44);box-shadow:inset 0 0 20px rgba(55,107,68,.08)}.admin-upload__drop-zone--uploading{border-color:var(--accent-primary,#376b44);border-style:solid;opacity:.6;pointer-events:none}.admin-upload__drop-icon{color:var(--accent-primary,#376b44);font-size:2rem;opacity:.6}.admin-upload__drop-label{color:var(--text-primary,#0f172a);font-size:.9375rem;font-weight:600;margin:0}.admin-upload__drop-hint{color:var(--text-secondary,#94a3b8);font-size:.8125rem;margin:0}.admin-upload__file-list{display:flex;flex-direction:column;gap:0;list-style:none;margin:1rem 0 0;padding:0}.admin-upload__file-item{align-items:center;animation:adminUploadFadeIn .3s ease;border-bottom:1px solid var(--border-color,#f1f5f9);display:flex;gap:1rem;padding:.625rem .75rem}.admin-upload__file-item--error{color:#b91c1c;font-size:.8125rem;font-style:italic}.admin-upload__file-name{color:var(--text-primary,#0f172a);flex:1;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-upload__file-size{color:var(--text-secondary,#94a3b8);flex-shrink:0;font-size:.75rem}.admin-upload__file-badge{background:rgba(234,179,8,.15);border-radius:4px;color:#a16207;flex-shrink:0;font-size:.6875rem;font-weight:600;letter-spacing:.5px;padding:.2rem .5rem;text-transform:uppercase}.admin-upload__batch-bar{align-items:center;background:var(--bg-primary,#fff);border:1px solid var(--border-color,#e5e7eb);border-radius:12px;display:flex;justify-content:space-between;margin-top:1.5rem;padding:1rem 1.5rem}.admin-upload__total{color:var(--text-secondary,#64748b);font-size:.875rem;font-weight:500}.admin-upload__batch-button{background:var(--accent-primary,#376b44);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:600;padding:.75rem 1.5rem;transition:background .2s,opacity .2s}.admin-upload__batch-button:hover:not(:disabled){background:var(--accent-hover,#2d5a38)}.admin-upload__batch-button:disabled{cursor:not-allowed;opacity:.5}.admin-upload__batch-button i{margin-right:.375rem}@keyframes adminUploadFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}body,html{background:var(--bg-color);color:var(--text-primary);font-family:var(--font-body);height:100%;margin:0;padding:0;width:100%}body.dashboard-layout{overflow:hidden}