.hidden{display:none!important}
.text-action{margin-top:10px;border:0;background:transparent;color:var(--cyan);font:800 9px Consolas,monospace;letter-spacing:.08em;text-decoration:none;cursor:pointer}
.open-gallery-primary{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border:1px solid rgba(103,232,249,.68);border-radius:999px;background:linear-gradient(110deg,#06b6d4,#14b8a6);box-shadow:0 8px 25px rgba(6,182,212,.22);color:#fff;font:900 10px Consolas,monospace;letter-spacing:.08em;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.open-gallery-primary:hover{filter:brightness(1.08);box-shadow:0 10px 30px rgba(6,182,212,.34);transform:translateY(-1px)}.open-gallery-primary:active{filter:brightness(.96);box-shadow:0 5px 16px rgba(6,182,212,.24);transform:translateY(1px)}
.account-panel{margin-top:15px;padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(2,6,23,.62)}
.account-panel h3{margin:4px 0 12px}
.account-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.account-summary,.account-subpanel{display:grid;gap:8px;margin-top:11px}
.account-summary-row,.session-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid rgba(119,150,181,.14);padding-top:9px;font-size:10px}
.account-role-standard{color:#fff;font-weight:700}.account-role-owner{color:#f8d66d;font-size:12px;font-weight:950;letter-spacing:.025em;text-shadow:0 0 12px rgba(250,204,21,.38)}
.plan-storage{margin-top:14px;padding:14px;border:1px solid rgba(34,211,238,.16);border-radius:14px;background:rgba(4,10,20,.76)}.plan-storage-head,.plan-storage-usage{display:flex;align-items:center;justify-content:space-between;gap:12px}.plan-storage-head span{display:block;color:#7890a8;font:800 8px Consolas,monospace;letter-spacing:.14em}.plan-storage-head strong{display:block;margin-top:5px}.plan-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.plan-manage{min-height:34px;padding:0 12px;border:1px solid rgba(34,211,238,.32);border-radius:999px;color:#a5f3fc;display:inline-flex;align-items:center;text-decoration:none;font:850 8px Consolas,monospace;letter-spacing:.07em}.plan-manage.disabled{opacity:.42;pointer-events:none}.plan-upgrade{border-color:rgba(96,165,250,.58);background:linear-gradient(135deg,rgba(124,58,237,.72),rgba(14,165,233,.72));color:#fff}.plan-storage-usage{margin-top:14px;color:#dbeafe;font-size:10px}.plan-status{color:#5ee6a8;font:900 8px Consolas,monospace}.plan-status.warning{color:#fde68a}.plan-status.critical,.plan-status.full,.plan-status.over{color:#fda4af}.plan-gauge{height:8px;margin-top:9px;border-radius:999px;overflow:hidden;background:#101b2c}.plan-gauge span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#06b6d4,#3b82f6)}.plan-gauge.warning span{background:linear-gradient(90deg,#f59e0b,#facc15)}.plan-gauge.critical span,.plan-gauge.full span{background:linear-gradient(90deg,#f43f5e,#ef4444)}@keyframes plan-heartbeat{0%,100%{transform:scale(1);box-shadow:0 0 0 rgba(244,63,94,0)}50%{transform:scale(1.015);box-shadow:0 0 16px rgba(244,63,94,.42)}}.plan-upgrade.heartbeat{animation:plan-heartbeat 2.2s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.plan-upgrade.heartbeat{animation:none}}.plan-storage-copy{margin:8px 0 0;color:#8ca0b8;font-size:9px;line-height:1.55}
.ai-processing{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:14px;border:1px solid rgba(168,85,247,.36);border-radius:14px;background:linear-gradient(135deg,rgba(30,12,58,.82),rgba(4,18,35,.82))}.ai-processing span{display:block;color:#c084fc;font:900 8px Consolas,monospace;letter-spacing:.15em}.ai-processing strong{display:block;margin-top:5px;color:#f5f3ff}.ai-processing p{margin:5px 0 0;color:#a8b4c8;font-size:9px}.ai-processing a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border:1px solid rgba(216,180,254,.56);border-radius:999px;background:linear-gradient(120deg,#7c3aed,#0891b2);color:#fff;text-decoration:none;text-align:center;font:900 8px Consolas,monospace;letter-spacing:.07em}
.account-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}
.provider.compact{min-height:40px;font-size:9px}
.account-subpanel{padding-top:12px;border-top:1px solid rgba(119,150,181,.14)}
.account-subpanel code{word-break:break-all;color:#b7f6ff}
.recovery-codes{white-space:pre-wrap;font:10px Consolas,monospace;color:#fde68a}
.session-state{margin:0 0 14px;color:rgba(34,211,238,.82);font:800 9px/1.4 Consolas,monospace;letter-spacing:.12em}
.provider-unavailable{margin:-4px 0 2px;color:var(--danger);font-size:9px;text-align:center}
body[data-auth-state="checking"] .signed-out-only{display:none}
.plan-identity{display:flex;align-items:center;gap:9px}.plan-logo{width:48px;height:48px;object-fit:contain}.membership-panel{display:grid;gap:12px;margin-top:14px;padding:14px;border:1px solid rgba(99,102,241,.24);border-radius:14px;background:rgba(4,10,20,.76)}.membership-panel h3{margin:4px 0 0}.membership-features,.membership-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.membership-feature,.membership-plan{padding:10px;border:1px solid rgba(119,150,181,.18);border-radius:11px;background:rgba(8,16,31,.78)}.membership-feature{cursor:pointer;color:#dbeafe;text-align:left}.membership-feature strong,.membership-plan strong{display:block;font-size:10px}.membership-feature span,.membership-plan span,.membership-plan p{display:block;margin-top:5px;color:#91a4ba;font-size:8px;line-height:1.5}.membership-feature.locked{filter:grayscale(1);opacity:.62}.membership-feature.locked strong::before{content:"LOCKED - ";color:#fda4af}.membership-plan-head{display:flex;align-items:center;gap:8px}.membership-plan img{width:38px;height:38px;object-fit:contain}.membership-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:8px}.membership-form label{margin:0}.membership-form .provider{width:auto}.membership-referral{display:grid;gap:8px;padding-top:12px;border-top:1px solid rgba(119,150,181,.14)}.membership-referral p,.membership-provider-status{margin:0;color:#9aabc0;font-size:9px;line-height:1.55}.membership-referral a{color:#67e8f9;word-break:break-all}.membership-referral .membership-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.membership-provider-status{padding-top:10px;border-top:1px solid rgba(119,150,181,.14)}.membership-campaign-image{max-width:100%;max-height:180px;object-fit:contain;justify-self:start}.membership-campaign-popup{position:fixed;right:18px;bottom:18px;z-index:30;width:min(360px,calc(100vw - 36px));max-height:70vh;overflow:auto;padding:14px;border:1px solid rgba(103,232,249,.35);border-radius:14px;background:rgba(4,10,20,.97);box-shadow:0 12px 34px rgba(0,0,0,.42)}
@media(max-width:600px){.account-actions,.membership-features,.membership-catalog,.membership-form,.membership-referral .membership-form{grid-template-columns:1fr}.account-head,.ai-processing{align-items:flex-start;flex-direction:column}.ai-processing a,.membership-form .provider{width:100%}}

.membership-plan-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:6px;margin-top:9px}.membership-plan-controls select{min-width:0;padding:7px;border:1px solid rgba(119,150,181,.25);border-radius:8px;background:#071222;color:#dbeafe;font-size:8px}.membership-plan-controls button{min-height:32px}.membership-checkout{padding:11px;border:1px solid rgba(34,211,238,.3);border-radius:11px;background:rgba(4,18,35,.86)}.membership-checkout-actions{display:flex;gap:8px;margin-top:10px}.membership-checkout-actions button{width:auto}.membership-checkout .account-summary{margin-top:8px}@media(max-width:600px){.membership-plan-controls{grid-template-columns:1fr}.membership-checkout-actions{display:grid;grid-template-columns:1fr 1fr}.membership-checkout-actions button{width:100%}}

.membership-policy-acceptance{display:flex;align-items:flex-start;gap:8px;margin:12px 0;color:var(--muted);font-size:10px;line-height:1.45}.membership-policy-acceptance input{margin-top:2px}.membership-payment-qr{display:block;max-width:240px;max-height:240px;width:100%;height:auto;object-fit:contain;margin:12px auto}
