/* ══════════════════════════════════════════════════════════════════════════
   invite-manager.css  —  Invite Manager page specific styles
   .card/.btn/.section-label override shared.css.
   ══════════════════════════════════════════════════════════════════════════ */

/* Page-specific */
.card{background:var(--card-bg);border:1px solid var(--glass-border);border-radius:24px;padding:1.75rem 2rem;box-shadow:0 8px 32px rgba(0,0,0,0.45),inset 0 1px 0 rgba(255,255,255,0.09),inset 0 -1px 0 rgba(0,0,0,0.1);backdrop-filter:blur(40px) saturate(150%);-webkit-backdrop-filter:blur(40px) saturate(150%);position:relative;overflow:hidden;margin-bottom:1.25rem;}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent);}
.card::after{content:'';position:absolute;inset:0;background:var(--glass-shine);pointer-events:none;border-radius:24px;}
.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.35rem;position:relative;z-index:1;}
.section-label{font-size:0.7rem;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--text);}
/* btn base + ghost/sm inherited from shared.css */
/* cs-btn styles provided by shared.css */
/* Create form */
.create-form{display:grid;grid-template-columns:1fr 160px auto;gap:0.65rem;align-items:end;position:relative;z-index:1;}
.field{display:flex;flex-direction:column;gap:0.35rem;}
.field label{font-size:0.7rem;font-weight:600;color:var(--text-dim);letter-spacing:0.5px;text-transform:uppercase;}
.field input{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:10px;padding:0.6rem 0.85rem;color:var(--text);font-size:0.88rem;font-family:inherit;outline:none;transition:border-color 0.2s,background 0.2s;width:100%;}
.field input:focus{border-color:rgba(88,101,242,0.55);background:rgba(88,101,242,0.08);}
.field input::placeholder{color:#555;}
.create-btn{display:inline-flex;align-items:center;gap:0.45rem;background:rgba(88,101,242,0.2);border:1px solid rgba(88,101,242,0.5);color:#a8b4ff;border-radius:10px;padding:0.35rem 1.1rem;font-size:0.85rem;font-weight:600;cursor:pointer;transition:all 0.2s;font-family:inherit;white-space:nowrap;align-self:end;}
.create-btn:hover:not(:disabled){background:rgba(88,101,242,0.32);border-color:rgba(88,101,242,0.75);transform:translateY(-1px);box-shadow:0 4px 14px rgba(88,101,242,0.3);}
.create-btn:disabled{opacity:0.5;cursor:not-allowed;}
/* New invite result banner */
.new-invite-banner{display:none;margin-top:1rem;padding:1rem 1.1rem;background:rgba(46,204,113,0.08);border:1px solid rgba(46,204,113,0.25);border-radius:12px;position:relative;z-index:1;}
.new-invite-banner.visible{display:block;}
.nib-label{font-size:0.7rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--green);margin-bottom:0.45rem;}
.nib-url-row{display:flex;align-items:center;gap:0.65rem;}
.nib-url{flex:1;font-family:monospace;font-size:0.8rem;color:#a8b4ff;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:8px;padding:0.45rem 0.75rem;word-break:break-all;line-height:1.5;min-width:0;}
.copy-btn{flex-shrink:0;padding:0.42rem 0.85rem;border-radius:8px;background:rgba(88,101,242,0.2);border:1px solid rgba(88,101,242,0.4);color:#a8b4ff;font-size:0.8rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.2s;white-space:nowrap;}
.copy-btn:hover{background:rgba(88,101,242,0.32);}
.copy-btn.copied{background:rgba(46,204,113,0.2);border-color:rgba(46,204,113,0.5);color:var(--green);}
.nib-meta{font-size:0.72rem;color:var(--text-dim);margin-top:0.4rem;}
/* Tokens table */
.tokens-wrap{overflow-x:auto;position:relative;z-index:1;}
table{width:100%;border-collapse:collapse;min-width:540px;}
th{font-size:0.67rem;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-dim);padding:0 0.75rem 0.7rem;text-align:left;border-bottom:1px solid rgba(255,255,255,0.07);}
th:last-child{text-align:right;}
td{padding:0.6rem 0.75rem;border-bottom:1px solid rgba(255,255,255,0.04);vertical-align:middle;}
tr:last-child td{border-bottom:none;}
tr.token-row:hover td{background:rgba(88,101,242,0.05);}
.td-label{font-size:0.88rem;font-weight:600;color:var(--text);}
.td-created{font-size:0.76rem;color:var(--text-dim);white-space:nowrap;}
.td-countdown{font-size:0.76rem;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600;}
.td-countdown.urgent{color:var(--warn);}
.td-countdown.critical{color:var(--offline);animation:blink-w 1.5s infinite;}
@keyframes blink-w{0%,100%{opacity:1}50%{opacity:0.5}}
.td-countdown.ok{color:#a8b4ff;}
.td-actions{text-align:right;display:flex;align-items:center;justify-content:flex-end;gap:0.45rem;}
.btn-copy-row{padding:0.3rem 0.7rem;border-radius:7px;background:rgba(88,101,242,0.15);border:1px solid rgba(88,101,242,0.35);color:#a8b4ff;font-size:0.75rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.2s;white-space:nowrap;}
.btn-copy-row:hover{background:rgba(88,101,242,0.28);}
.btn-copy-row.copied{background:rgba(46,204,113,0.15);border-color:rgba(46,204,113,0.4);color:var(--green);}
.btn-revoke{padding:0.3rem 0.7rem;border-radius:7px;background:rgba(231,76,60,0.1);border:1px solid rgba(231,76,60,0.3);color:var(--red);font-size:0.75rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.2s;white-space:nowrap;}
.btn-revoke:hover{background:rgba(231,76,60,0.22);border-color:rgba(231,76,60,0.55);}
.btn-revoke:disabled{opacity:0.4;cursor:not-allowed;}
.empty-state{text-align:center;padding:2.5rem 1rem;color:var(--text-dim);font-size:0.88rem;position:relative;z-index:1;}
.empty-icon{font-size:2rem;display:block;margin-bottom:0.5rem;opacity:0.4;}
.status-msg{font-size:0.8rem;color:var(--text-dim);position:relative;z-index:1;}
.status-msg.error{color:var(--offline);}
.pill-row{display:flex;gap:0.65rem;flex-wrap:wrap;margin-bottom:1.25rem;position:relative;z-index:1;}
.pill{display:flex;align-items:center;gap:0.4rem;padding:0.35rem 0.8rem;border-radius:20px;font-size:0.76rem;font-weight:600;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);color:var(--text-dim);}
.pill .n{font-size:0.95rem;font-weight:700;}
.pill-active{border-color:rgba(88,101,242,0.3);}
.pill-active .n{color:#a8b4ff;}
.pill-expiring{border-color:rgba(255,152,0,0.3);}
.pill-expiring .n{color:var(--warn);}
.local-notice{text-align:center;padding:3rem 2rem;color:var(--text-dim);font-size:0.9rem;position:relative;z-index:1;}
.local-notice strong{color:var(--offline);display:block;font-size:1.1rem;margin-bottom:0.5rem;}
.footer{text-align:center;margin-top:1.5rem;color:var(--text-dim);font-size:0.78rem;position:relative;z-index:1;}
.cfg-notice{display:none;position:fixed;inset:0;z-index:800;background:rgba(0,0,0,0.75);backdrop-filter:blur(6px);align-items:center;justify-content:center;}
.cfg-notice.show{display:flex;}
.cfg-notice-card{background:linear-gradient(145deg,#13131f,#0f0f1a);border:1px solid rgba(88,101,242,0.35);border-radius:20px;padding:2rem 2.25rem;max-width:420px;width:90%;text-align:center;animation:cfgNoticeIn 0.3s cubic-bezier(.16,1,.3,1) both;}
@keyframes cfgNoticeIn{from{transform:scale(0.92);opacity:0}to{transform:scale(1);opacity:1}}
.cfg-notice-icon{font-size:2.5rem;margin-bottom:0.75rem;}
.cfg-notice-title{font-size:1.05rem;font-weight:800;color:var(--text);margin-bottom:0.5rem;}
.cfg-notice-body a{color:#a8b4ff;text-decoration:none;}
.cfg-notice-body a:hover{text-decoration:underline;}
.cfg-notice-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:0.65rem 1rem;border-radius:10px;border:1px solid rgba(88,101,242,0.4);background:rgba(88,101,242,0.15);color:#a8b4ff;font-size:0.88rem;font-weight:700;cursor:pointer;font-family:inherit;transition:all 0.2s;}
.cfg-notice-btn:hover{background:rgba(88,101,242,0.25);border-color:rgba(88,101,242,0.65);}
/* Analytics */
.analytics-chart-wrap{position:relative;z-index:1;overflow-x:auto;}
.analytics-svg{display:block;width:100%;}
.bar-created{fill:rgba(124,92,252,0.55);transition:fill 0.15s;}
.bar-created:hover{fill:rgba(124,92,252,0.85);}
.bar-signups{fill:rgba(52,211,153,0.55);transition:fill 0.15s;}
.bar-signups:hover{fill:rgba(52,211,153,0.85);}
.chart-label{font-size:9px;fill:#4a4a68;font-family:'DM Sans',sans-serif;}
.chart-val{font-size:9px;fill:#9898b8;font-family:'DM Mono',monospace;}
.analytics-legend{display:flex;gap:1.1rem;margin-top:0.75rem;position:relative;z-index:1;}
.legend-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0;}
.analytics-empty{color:var(--text-muted);font-size:0.85rem;padding:1.5rem 0;}
/* vcSelect */
.vc-select-wrap{position:relative;width:100%;}
.vc-select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0.6rem 0.85rem;background:rgba(0,0,0,0.38);border:1px solid rgba(124,92,252,0.28);border-radius:9px;color:var(--text);font-family:'DM Sans',inherit;font-size:0.84rem;cursor:pointer;transition:border-color 0.18s,box-shadow 0.18s,background 0.18s;user-select:none;gap:0.5rem;min-height:38px;}
.vc-select-trigger:hover:not(.is-disabled){border-color:rgba(124,92,252,0.5);background:rgba(0,0,0,0.42);}
.vc-select-trigger.is-open{border-color:rgba(124,92,252,0.65);box-shadow:0 0 0 3px rgba(124,92,252,0.12);background:rgba(0,0,0,0.42);border-radius:9px 9px 6px 6px;}
.vc-select-trigger.is-disabled{opacity:0.38;cursor:not-allowed;}
.vc-select-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);}
.vc-select-text.is-placeholder{color:var(--text-muted,#4a4a68);}
.vc-select-chevron{flex-shrink:0;transition:transform 0.2s cubic-bezier(0.34,1.56,0.64,1);}
.vc-select-trigger.is-open .vc-select-chevron{transform:rotate(180deg);}
.vc-select-panel{position:fixed;z-index:99999;background:linear-gradient(145deg,#141424,#0e0e1c);border:1px solid rgba(124,92,252,0.45);border-radius:0 0 11px 11px;box-shadow:0 16px 48px rgba(0,0,0,0.7),0 0 0 1px rgba(124,92,252,0.08);overflow:hidden;animation:vcDropIn 0.17s cubic-bezier(0.16,1,0.3,1) both;min-width:120px;}
.vc-select-panel.vc-flip{border-radius:11px 11px 0 0;border-top:1px solid rgba(124,92,252,0.45);border-bottom:1px solid rgba(124,92,252,0.2);}
@keyframes vcDropIn{from{opacity:0;transform:scaleY(0.9) translateY(-6px)}to{opacity:1;transform:scaleY(1) translateY(0)}}
@keyframes vcDropUp{from{opacity:0;transform:scaleY(0.9) translateY(6px)}to{opacity:1;transform:scaleY(1) translateY(0)}}
.vc-select-panel.vc-flip{animation-name:vcDropUp;}
.vc-select-list{max-height:220px;overflow-y:auto;overscroll-behavior:contain;padding:0.3rem 0;}
.vc-select-list::-webkit-scrollbar{width:4px;}.vc-select-list::-webkit-scrollbar-track{background:transparent;}.vc-select-list::-webkit-scrollbar-thumb{background:rgba(124,92,252,0.25);border-radius:2px;}
.vc-option{display:flex;align-items:center;gap:0.55rem;padding:0.52rem 0.9rem;font-size:0.83rem;font-family:'DM Sans',inherit;color:var(--text-dim,#9898b8);cursor:pointer;transition:background 0.1s,color 0.1s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;}
.vc-option:hover{background:rgba(124,92,252,0.1);color:var(--text,#eeeef8);}
.vc-option.is-selected{color:var(--accent2,#a78bfa);background:rgba(124,92,252,0.08);}
.vc-option.is-selected::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent,#7c5cfc);border-radius:0 2px 2px 0;}
.vc-option-tick{margin-left:auto;flex-shrink:0;opacity:0;}
.vc-option.is-selected .vc-option-tick{opacity:1;}
.vc-option.is-placeholder{color:var(--text-muted,#4a4a68);font-style:italic;font-size:0.8rem;}
.vc-option.is-placeholder:hover{background:rgba(255,255,255,0.02);color:var(--text-muted,#4a4a68);}
.vc-select-hidden{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;overflow:hidden;top:0;left:0;}
@media(max-width:600px){.card{padding:1.35rem 1.1rem;}.create-form{grid-template-columns:1fr;}}
@media(max-width:540px){body{padding-left:0.65rem;padding-right:0.65rem;}}
