.private-route-container{display:flex;flex-direction:column;min-height:100vh}.navbar{align-items:center;background-color:var(--navbar-color);display:flex;flex-direction:row;height:56px;justify-content:space-between;padding:0 16px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.navbar-left,.navbar-right{align-items:center;display:flex;flex:1 1;gap:4px}.navbar-right{justify-content:flex-end}.navbar-brand{color:var(--text-hover);font-size:16px;font-weight:600;letter-spacing:.02em}.navbar .nav-item{align-items:center;color:#ffffffbf;cursor:pointer;display:flex;font-size:22px;height:100%;padding:0 14px;transition:background-color .15s ease,color .15s ease}.navbar .nav-item:hover:not(.selected){background-color:var(--navbar-hover);color:var(--text-hover)}.navbar .nav-item.selected{background-color:var(--navbar-active);color:var(--text-active)}.nav-user{color:#ffffffd9;gap:10px;padding:0 12px}.nav-user,.nav-user-avatar{align-items:center;display:flex}.nav-user-avatar{background:var(--accent-primary);border-radius:50%;color:#fff;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.nav-user-name{font-size:14px;font-weight:500}.background{background:var(--background-color);flex:1 1}.page-container{margin:0 auto;max-width:1200px;padding:32px 24px}@media (max-width:768px){.nav-user-name{display:none}.navbar-brand{font-size:14px}.page-container{padding:20px 16px}}.login-page{align-items:center;background:radial-gradient(ellipse at top left,#5d5fef2e,#0000 55%),radial-gradient(ellipse at bottom right,#dd2a7b24,#0000 55%),var(--background-color);display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:24px}.login-card{box-shadow:var(--shadow-lg);flex-direction:column;max-width:440px;padding:40px 36px;text-align:center;width:100%}.login-brand{color:var(--accent-primary);font-size:13px;font-weight:600;letter-spacing:.1em;margin-bottom:18px;text-transform:uppercase}.login-title{font-size:24px;font-weight:700;line-height:1.25;margin:0}.login-subtitle{color:var(--text-secondary);font-size:14px;line-height:1.55;margin:12px 0 28px}.login-google-slot{display:flex;justify-content:center;min-height:44px;width:100%}.login-error{background:var(--accent-danger-soft);border-radius:var(--radius-md);color:var(--accent-danger);font-size:13px;margin-top:16px;padding:10px 14px;text-align:center;width:100%}.login-legal{line-height:1.55;margin-top:22px}.login-footer,.login-legal{color:var(--text-muted);font-size:12px}.login-footer{margin-top:24px}.page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;margin-bottom:28px}.page-header-text{flex:1 1;min-width:0}.page-header-title{font-size:26px;font-weight:700;line-height:1.2}.page-header-subtitle{color:var(--text-secondary);font-size:14px;margin:6px 0 0}.page-header-meta{color:var(--text-muted);font-size:13px;margin-top:10px}.page-header-actions{display:flex;flex-wrap:wrap}.btn,.page-header-actions{align-items:center;gap:8px}.btn{border:1px solid #0000;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-family:inherit;font-weight:500;justify-content:center;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .05s ease;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.55}.btn:active:not(:disabled){transform:translateY(1px)}.btn-icon{align-items:center;display:inline-flex;font-size:1.1em}.btn-sm{font-size:13px;padding:6px 12px}.btn-md{font-size:14px;padding:9px 16px}.btn-lg{font-size:15px;padding:12px 22px}.btn-full{width:100%}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-primary-hover)}.btn-secondary{background:var(--surface-color);border-color:var(--surface-border);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--surface-muted);border-color:#d2d6e0}.btn-ghost{background:#0000;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--surface-muted);color:var(--text-primary)}.btn-danger{background:var(--accent-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#d93636}.btn-danger-ghost{background:#0000;border-color:#0000;color:var(--accent-danger)}.btn-danger-ghost:hover:not(:disabled){background:var(--accent-danger-soft)}.empty-state{align-items:center;background:var(--surface-color);border:1px dashed var(--surface-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:8px;padding:48px 24px;text-align:center}.empty-state-icon{color:var(--text-muted);font-size:40px;margin-bottom:4px}.empty-state-title{font-size:16px;font-weight:600}.empty-state-description{color:var(--text-secondary);font-size:14px;margin:0;max-width:420px}.empty-state-action{margin-top:12px}.refresh-wrap{align-items:center;display:inline-flex;gap:10px}.refresh-result{animation:refresh-pop .2s ease-out;background:var(--accent-success-soft);border-radius:999px;color:var(--accent-success);font-size:13px;font-weight:500;padding:4px 10px}.spin{animation:refresh-spin 1s linear infinite}@keyframes refresh-spin{to{transform:rotate(1turn)}}@keyframes refresh-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.group-card{align-items:center;background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-lg);cursor:pointer;display:flex;gap:18px;justify-content:space-between;padding:18px 20px;transition:border-color .15s ease,box-shadow .15s ease,transform .1s ease}.group-card:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-md)}.group-card-main{align-items:center;display:flex;flex:1 1;gap:16px;min-width:0}.group-card-icon{align-items:center;background:var(--accent-primary-soft);border-radius:var(--radius-md);color:var(--accent-primary);display:flex;flex-shrink:0;font-size:22px;height:48px;justify-content:center;width:48px}.group-card-text{min-width:0}.group-card-title{font-size:16px;font-weight:600;margin:0}.group-card-description{color:var(--text-secondary);font-size:13px;margin:4px 0 0;max-width:480px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-card-meta{color:var(--text-muted);font-size:12px;letter-spacing:.04em;margin-top:6px;text-transform:uppercase}.group-card-actions{align-items:center;display:flex;gap:10px}.group-card-delete{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font-size:16px;padding:8px}.group-card-delete:hover{background:var(--accent-danger-soft);color:var(--accent-danger)}.group-card-chevron{align-items:center;color:var(--text-muted);display:flex;font-size:18px}@media (max-width:640px){.group-card{align-items:stretch;flex-direction:column}.group-card-actions{justify-content:flex-end}.group-card-chevron{display:none}.group-card-description{white-space:normal}}.modal-backdrop{align-items:center;animation:modal-fade .15s ease-out;background:#14172673;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.modal-panel{animation:modal-slide .18s ease-out;background:var(--surface-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:calc(100vh - 40px);width:100%}.modal-header{align-items:center;border-bottom:1px solid var(--surface-border);display:flex;justify-content:space-between;padding:18px 22px}.modal-title{font-size:17px;font-weight:600}.modal-close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:22px;padding:4px}.modal-close:hover{background:var(--surface-muted);color:var(--text-primary)}.modal-body{overflow-y:auto;padding:22px}.modal-footer{border-top:1px solid var(--surface-border);display:flex;gap:10px;justify-content:flex-end;padding:16px 22px}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-slide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.prompt-form{gap:14px}.prompt-form,.prompt-label{display:flex;flex-direction:column}.prompt-label{color:var(--text-secondary);font-size:13px;font-weight:500;gap:6px}.prompt-input{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;font-size:14px;outline:none;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.prompt-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-soft)}.prompt-textarea{font-family:inherit;min-height:72px;resize:vertical}.confirm-dialog-message{color:var(--text-secondary);font-size:14px;line-height:1.55;margin:0}.dashboard-list{display:flex;flex-direction:column;gap:12px}.breadcrumb{align-items:center;color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:13px;margin-bottom:16px}.breadcrumb-item{align-items:center;display:inline-flex}.breadcrumb-link{background:none;border:none;color:var(--text-secondary);cursor:pointer;font:inherit;padding:0}.breadcrumb-link:hover{color:var(--accent-primary);text-decoration:underline}.breadcrumb-current{color:var(--text-primary);font-weight:500}.breadcrumb-sep{color:var(--text-muted);font-size:12px;margin:0 8px}.breadcrumb-sep,.platform-badge{align-items:center;display:inline-flex}.platform-badge{border-radius:var(--radius-md);color:#fff;flex-shrink:0;gap:6px;justify-content:center}.platform-badge-sm{font-size:14px;height:24px;width:24px}.platform-badge-md{font-size:18px;height:34px;width:34px}.platform-badge-lg{font-size:22px;height:44px;width:44px}.platform-badge-label{font-size:13px;font-weight:500;padding:0 12px 0 4px}.platform-badge:has(.platform-badge-label){height:32px;padding:0 10px;width:auto}.platform-instagram{background:linear-gradient(135deg,var(--platform-instagram-start) 0,var(--platform-instagram-mid) 50%,var(--platform-instagram-end) 100%)}.platform-tiktok{background:var(--platform-tiktok)}.platform-youtube{background:var(--platform-youtube)}.platform-x{background:var(--platform-x)}.platform-facebook{background:var(--platform-facebook)}.account-card{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;gap:14px;padding:18px 20px;transition:border-color .15s ease,box-shadow .15s ease}.account-card:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-md)}.account-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.account-card-title{font-size:16px;font-weight:600}.account-card-description{color:var(--text-secondary);font-size:13px;line-height:1.45;margin:4px 0 0}.account-card-chevron{color:var(--text-muted);font-size:18px;padding-top:2px}.account-card-platforms{align-items:center;display:flex;flex-wrap:wrap;gap:6px;min-height:24px}.account-card-empty-platforms{color:var(--text-muted);font-size:12px;font-style:italic}.account-card-actions{align-items:center;border-top:1px solid var(--surface-border);display:flex;gap:10px;justify-content:flex-end;padding-top:12px}.account-card-delete{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font-size:16px;padding:8px}.account-card-delete:hover{background:var(--accent-danger-soft);color:var(--accent-danger)}.stat-block{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);flex:1 1;gap:12px;min-width:120px;padding:14px 16px}.stat-block,.stat-block-icon{align-items:center;display:flex}.stat-block-icon{background:var(--accent-primary-soft);border-radius:10px;color:var(--accent-primary);flex-shrink:0;font-size:18px;height:40px;justify-content:center;width:40px}.stat-block-value{color:var(--text-primary);font-size:20px;font-weight:700;line-height:1.2}.stat-block-label{color:var(--text-secondary);font-size:12px;letter-spacing:.04em;margin-top:2px;text-transform:uppercase}.contrib{margin-bottom:28px}.contrib-title{font-size:16px;font-weight:600;margin-bottom:12px}.contrib-empty{border:1px dashed var(--surface-border);border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;padding:16px}.contrib-empty,.contrib-table{background:var(--surface-color)}.contrib-table{border:1px solid var(--surface-border);border-radius:var(--radius-md);overflow:hidden}.contrib-head,.contrib-row{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:minmax(180px,1.4fr) repeat(4,minmax(120px,1fr)) auto;padding:12px 16px}.contrib-head{background:var(--surface-muted);border-bottom:1px solid var(--surface-border);color:var(--text-secondary);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.contrib-col-metric{align-items:center;display:inline-flex;gap:6px}.contrib-col-metric-icon{color:var(--accent-primary);display:inline-flex}.contrib-row{border-bottom:1px solid var(--surface-border);transition:background .12s ease}.contrib-row:last-child{border-bottom:none}.contrib-row-clickable{cursor:pointer}.contrib-row-clickable:hover{background:var(--surface-muted)}.contrib-identity{align-items:center;color:var(--text-primary);display:inline-flex;font-size:14px;font-weight:600;gap:8px}.contrib-meta{color:var(--text-secondary);font-size:12px;margin-top:4px}.contrib-cell-metric{min-width:0}.contrib-metric-values{align-items:baseline;display:flex;gap:6px;justify-content:space-between;margin-bottom:6px}.contrib-metric-value{color:var(--text-primary);font-size:14px;font-weight:700}.contrib-metric-share{color:var(--text-muted);font-size:11px}.contrib-bar{background:var(--surface-muted);border-radius:999px;height:6px;overflow:hidden}.contrib-bar-fill{background:var(--accent-primary);border-radius:999px;height:100%;transition:width .24s ease}.contrib-cell-chev{align-items:center;color:var(--text-muted);display:flex;justify-content:center}@media (max-width:880px){.contrib-head{display:none}.contrib-row{gap:10px;grid-template-columns:1fr}.contrib-cell-metric{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:90px 1fr auto}.contrib-cell-metric:before{content:attr(data-label)}.contrib-metric-values{margin-bottom:0;order:2}.contrib-cell-chev{display:none}}.group-detail-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:28px}.group-detail-section-title{font-size:16px;font-weight:600;margin-bottom:12px}.group-detail-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.login-card{align-items:center;background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-lg);cursor:pointer;display:flex;gap:18px;justify-content:space-between;padding:16px 20px;transition:border-color .15s ease,box-shadow .15s ease}.login-card:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-md)}.login-card-main{align-items:center;display:flex;flex:1 1;gap:14px;min-width:0}.login-card-title-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:10px}.login-card-title{font-size:15px;font-weight:600}.login-card-username{color:var(--text-secondary);font-size:13px}.login-card-meta{align-items:center;color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:6px;margin-top:4px}.login-card-dot{opacity:.5}.login-card-actions{align-items:center;display:flex;gap:10px}.login-card-delete{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font-size:16px;padding:8px}.login-card-delete:hover{background:var(--accent-danger-soft);color:var(--accent-danger)}.login-card-chevron{align-items:center;color:var(--text-muted);display:flex;font-size:18px}@media (max-width:640px){.login-card{align-items:stretch;flex-direction:column}.login-card-chevron{display:none}.login-card-actions{justify-content:flex-end}}.link-platform-step{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.link-platform-step:last-child{margin-bottom:0}.link-platform-label{align-items:baseline;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:13px;font-weight:500;gap:6px}.link-platform-hint{color:var(--text-muted);font-size:12px;font-weight:400}.link-platform-hint-block{background:var(--surface-muted);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;line-height:1.5;padding:12px 14px}.link-platform-options{display:flex;flex-wrap:wrap;gap:10px}.link-platform-option{align-items:center;background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:500;gap:8px;padding:10px 14px;transition:border-color .15s ease,background .15s ease}.link-platform-option.selected,.link-platform-option:hover:not(:disabled){border-color:var(--accent-primary)}.link-platform-option.selected{background:var(--accent-primary-soft)}.link-platform-option.disabled{cursor:not-allowed;opacity:.55}.link-platform-option svg{font-size:16px}.link-platform-instagram svg{color:var(--platform-instagram-mid)}.link-platform-tiktok svg{color:var(--platform-tiktok)}.link-platform-youtube svg{color:var(--platform-youtube)}.link-platform-x svg{color:var(--platform-x)}.link-platform-facebook svg{color:var(--platform-facebook)}.link-platform-chip{background:var(--accent-success-soft);border-radius:999px;color:var(--accent-success);font-size:11px;font-weight:600;padding:2px 8px}.link-platform-chip-soon{background:var(--surface-muted);color:var(--text-muted)}.link-platform-input{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;font-size:14px;outline:none;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.link-platform-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-soft)}.banner{align-items:center;border:1px solid #0000;border-radius:var(--radius-md);display:flex;font-size:14px;gap:10px;margin-bottom:18px;padding:12px 14px}.banner-icon{flex-shrink:0;font-size:18px}.banner-message{flex:1 1;line-height:1.45}.banner-close{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:inherit;cursor:pointer;display:flex;opacity:.6;padding:4px}.banner-close:hover{background:#0000000d;opacity:1}.banner-success{background:var(--accent-success-soft);border-color:#10b98133;color:var(--accent-success)}.banner-error{background:var(--accent-danger-soft);border-color:#ef444433;color:var(--accent-danger)}.banner-info{background:var(--accent-primary-soft);border-color:#5d5fef33;color:var(--accent-primary)}.account-detail-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:28px}.account-detail-section-title{font-size:16px;font-weight:600;margin-bottom:12px}.account-detail-list{display:flex;flex-direction:column;gap:12px}.upload-card{background:var(--surface-color);border:1px solid var(--surface-border);border-radius:var(--radius-md);display:flex;gap:14px;padding:14px;transition:border-color .15s ease,box-shadow .15s ease}.upload-card:hover{border-color:var(--accent-primary);box-shadow:var(--shadow-sm)}.upload-card-thumb{align-items:center;background:var(--surface-muted);border-radius:var(--radius-md);display:flex;flex-shrink:0;height:72px;justify-content:center;width:72px}.upload-card-body{flex:1 1;flex-direction:column;min-width:0}.upload-card-body,.upload-card-header{display:flex;justify-content:space-between}.upload-card-header{align-items:flex-start;gap:8px}.upload-card-title{font-size:14px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-card-external{align-items:center;color:var(--text-muted);display:inline-flex;font-size:15px}.upload-card-external:hover{color:var(--accent-primary)}.upload-card-date{color:var(--text-muted);font-size:12px;margin-top:2px}.upload-card-stats{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:13px;gap:14px;margin-top:8px}.upload-stat{align-items:center;display:inline-flex;gap:5px}.upload-stat svg{color:var(--text-muted)}.login-detail-title-inner{align-items:center;display:inline-flex;gap:12px}.login-detail-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:28px}.login-detail-section-title{font-size:16px;font-weight:600;margin-bottom:12px}.login-detail-uploads{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.app-root{min-height:100%}.spinner{align-items:center;background-color:#14172659;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}.spinner:after{animation:spin 1s linear infinite;border:6px solid #fff;border-radius:50%;border-top-color:#0000;content:"";height:50px;width:50px}@keyframes spin{to{transform:rotate(1turn)}}:root{--background-color:#f6f7fb;--surface-color:#fff;--surface-muted:#f1f3f8;--surface-border:#e5e7ee;--text-primary:#141726;--text-secondary:#5b6478;--text-muted:#8a91a3;--text-hover:#fff;--text-active:#fff;--navbar-color:#141726;--navbar-hover:#262a44;--navbar-active:#5d5fef;--accent-primary:#5d5fef;--accent-primary-hover:#4b4dd6;--accent-primary-soft:#eceefe;--accent-success:#10b981;--accent-success-soft:#d6f4e8;--accent-danger:#ef4444;--accent-danger-soft:#fde2e2;--accent-warning:#f59e0b;--platform-instagram-start:#f58529;--platform-instagram-mid:#dd2a7b;--platform-instagram-end:#8134af;--platform-tiktok:#000;--platform-tiktok-accent:#25f4ee;--platform-youtube:#f03;--platform-x:#000;--platform-facebook:#1877f2;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 1px 2px #1417260a;--shadow-md:0 4px 14px #14172614;--shadow-lg:0 12px 32px #1417261f}*{box-sizing:border-box}#root,body,html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f6f7fb;background:var(--background-color);color:#141726;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}a{color:#5d5fef;color:var(--accent-primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{color:#141726;color:var(--text-primary);margin:0}
/*# sourceMappingURL=main.802da1f1.css.map*/