.product-nav-actions { display:flex; align-items:center; gap:10px; }
.login-link { padding:10px 15px; border:1px solid var(--line); border-radius:12px; font-size:13px; font-weight:700; }
.login-link:hover { border-color:rgba(184,171,255,.5); }

.pricing-hero { padding:92px 0 42px; text-align:center; }
.pricing-hero .eyebrow { justify-content:center; }
.pricing-hero h1 { margin:18px auto; max-width:850px; }
.pricing-hero .lede { margin:0 auto; }
.billing-toggle { margin:34px auto 0; display:flex; width:max-content; padding:5px; gap:4px; background:var(--panel); border:1px solid var(--line); border-radius:14px; }
.billing-toggle button { border:0; border-radius:10px; background:transparent; padding:10px 17px; color:var(--muted); cursor:pointer; font-weight:700; font-size:13px; }
.billing-toggle button.active { background:var(--ink); color:#111118; }
.billing-toggle em { font-style:normal; color:#427000; margin-left:5px; }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; padding:32px 0 110px; }
.price-card { border:1px solid var(--line); border-radius:26px; padding:28px; background:var(--panel); display:flex; flex-direction:column; min-height:500px; position:relative; }
.price-card.featured { border-color:rgba(199,255,92,.58); background:linear-gradient(155deg,#201f2e,#14141d); box-shadow:0 25px 80px rgba(128,108,255,.15); }
.popular-badge { position:absolute; right:20px; top:20px; background:var(--acid); color:#121217; padding:6px 10px; border-radius:99px; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.price-card h3 { margin-top:12px; font-size:25px; }
.price { font-family:Manrope,sans-serif; font-size:52px; font-weight:800; letter-spacing:-.06em; margin:26px 0 2px; }
.price sup { font-size:18px; vertical-align:top; position:relative; top:8px; }
.price small { font:500 14px "DM Sans",sans-serif; color:var(--muted); letter-spacing:0; }
.price-note { min-height:43px; color:#8f8b9a; font-size:13px; }
.plan-features { list-style:none; padding:0; margin:26px 0 30px; display:grid; gap:13px; color:#c4c0ce; font-size:14px; }
.plan-features li:before { content:"✓"; color:var(--acid); font-weight:800; margin-right:9px; }
.price-card .button { margin-top:auto; }
.checkout-form { margin-top:auto; }
.checkout-form .button { width:100%; margin-top:0; }
.pricing-disclaimer { text-align:center; color:#777381; font-size:12px; margin:-72px 0 90px; }
.pricing-currency { display:inline-flex; margin-top:28px; padding:9px 13px; border:1px solid var(--line); border-radius:99px; color:#aaa6b7; font-size:12px; }
.pricing-grid-two { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:960px; margin:0 auto; }
.pricing-grid-two .price-card { min-height:620px; }
.limit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:24px 0 4px; }
.limit-grid div { min-width:0; padding:13px 10px; border:1px solid var(--line); border-radius:14px; background:rgba(255,255,255,.018); }
.limit-grid strong,.limit-grid span { display:block; }
.limit-grid strong { color:var(--ink); font:800 17px Manrope,sans-serif; }
.limit-grid span { color:#7f7b89; font-size:10px; line-height:1.35; margin-top:5px; }
.plan-comparison { max-width:960px; margin:0 auto 110px; border:1px solid var(--line); border-radius:24px; background:var(--panel); overflow:hidden; }
.plan-comparison h2 { padding:25px 26px; font-size:24px; }
.comparison-row { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:14px; padding:16px 26px; border-top:1px solid var(--line); font-size:13px; }
.comparison-row span { color:#8f8b99; }
.comparison-row strong { color:#d8d5df; }
.comparison-head { background:rgba(255,255,255,.02); }

.auth-shell { min-height:100vh; display:grid; grid-template-columns:1.05fr .95fr; background:var(--bg); }
.auth-art { padding:48px; background:radial-gradient(circle at 80% 10%,rgba(128,108,255,.32),transparent 43%),linear-gradient(145deg,#14131d,#09090f); display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; position:relative; }
.auth-art h1 { max-width:620px; font-size:clamp(46px,6vw,78px); }
.auth-art p { color:#aaa6b7; max-width:520px; font-size:18px; }
.auth-preview { margin-top:45px; border:1px solid var(--line); border-radius:28px; padding:13px; background:rgba(255,255,255,.035); transform:rotate(-2deg); box-shadow:var(--shadow); }
.auth-preview img { border-radius:18px; }
.auth-panel { padding:42px; display:grid; place-items:center; }
.auth-panel { position:relative; }
.auth-card { width:min(430px,100%); }
.auth-card h2 { font-size:39px; margin:24px 0 10px; }
.auth-card > p { color:var(--muted); }
.auth-form { margin-top:28px; display:grid; gap:16px; }
.auth-form label { font-size:13px; font-weight:700; }
.auth-form input { width:100%; margin-top:7px; height:50px; border-radius:13px; border:1px solid var(--line); background:#111119; color:var(--ink); padding:0 15px; outline:none; }
.auth-form input:focus { border-color:var(--violet-2); box-shadow:0 0 0 3px rgba(128,108,255,.12); }
.auth-row { display:flex; justify-content:space-between; font-size:12px; color:var(--muted); }
.auth-error { color:#ff9898; font-size:12px; min-height:18px; }
.auth-foot { text-align:center; color:#7f7b89; font-size:12px; margin-top:20px; }
.demo-chip { display:inline-flex; margin-top:18px; padding:8px 11px; background:rgba(199,255,92,.08); color:var(--acid); border:1px solid rgba(199,255,92,.18); border-radius:10px; font-size:11px; }
.auth-kicker { display:block; color:var(--acid); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; margin-top:34px; }
.google-button { width:100%; margin-top:28px; min-height:56px; border:1px solid rgba(255,255,255,.18); border-radius:15px; background:#f8f8fb; color:#17171e; display:flex; align-items:center; justify-content:center; gap:12px; font-size:14px; font-weight:800; cursor:pointer; transition:transform .18s ease,box-shadow .18s ease; }
.google-button:hover { transform:translateY(-2px); box-shadow:0 16px 35px rgba(0,0,0,.28); }
.google-mark { width:25px; height:25px; border-radius:50%; display:grid; place-items:center; background:conic-gradient(from -45deg,#4285f4 0 25%,#34a853 0 50%,#fbbc05 0 75%,#ea4335 0); color:#fff; font:800 14px Arial,sans-serif; box-shadow:inset 0 0 0 5px #fff; }
.login-rule { display:grid; grid-template-columns:1fr auto 1fr; gap:11px; align-items:center; margin:25px 0; color:#777381; }
.login-rule span { height:1px; background:var(--line); }
.login-benefits { margin:0; padding:0; display:grid; gap:12px; list-style:none; color:#aaa6b7; font-size:13px; }
.login-benefits li:before { content:"✓"; color:var(--acid); margin-right:9px; font-weight:800; }
.account-preview { padding:24px; transform:rotate(-1deg); }
.account-preview > div:first-child { display:flex; align-items:end; justify-content:space-between; }
.account-preview span,.account-preview small { color:#85818f; }
.account-preview strong { font:800 25px Manrope,sans-serif; }
.mini-progress,.usage-meter { height:9px; overflow:hidden; border-radius:99px; background:#272633; }
.mini-progress { margin:18px 0 12px; }
.mini-progress i,.usage-meter i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--violet),var(--acid)); }

.dashboard-shell { min-height:100vh; background:#0b0b12; overflow-x:hidden; }
.dashboard-top { height:72px; border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; padding:0 26px; background:#0e0e15; position:sticky; top:0; z-index:30; }
.user-menu { display:flex; align-items:center; gap:10px; }
.user-menu small { display:block; color:#7e7a87; margin-top:2px; }
.avatar { width:34px; height:34px; border-radius:50%; background:linear-gradient(135deg,var(--violet),var(--acid)); display:grid; place-items:center; color:#111; font-weight:800; }
.dashboard-body { display:grid; grid-template-columns:225px 1fr; min-height:calc(100vh - 72px); }
.dashboard-side { border-right:1px solid var(--line); padding:24px 14px; }
.side-link { display:flex; align-items:center; gap:11px; padding:11px 13px; border-radius:11px; color:#8f8b99; font-size:13px; font-weight:600; margin-bottom:4px; }
.side-link.active,.side-link:hover { background:#1a1924; color:var(--ink); }
.dashboard-main { padding:38px; max-width:1300px; width:100%; min-width:0; }
.dashboard-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; }
.dashboard-heading h1 { font-size:42px; }
.dashboard-heading p { color:var(--muted); margin:9px 0 0; }
.metric-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:30px 0; }
.metric-card { background:var(--panel); border:1px solid var(--line); border-radius:19px; padding:21px; }
.metric-card span { color:#85818f; font-size:12px; }
.metric-card strong { display:block; font-family:Manrope,sans-serif; font-size:30px; margin-top:8px; }
.section-title-row { display:flex; align-items:center; justify-content:space-between; margin:36px 0 16px; }
.project-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.project-card { border:1px solid var(--line); border-radius:20px; overflow:hidden; background:var(--panel); }
.project-thumb { aspect-ratio:16/10; background:#171620; position:relative; overflow:hidden; }
.project-thumb img { width:100%; height:100%; object-fit:cover; }
.project-status { position:absolute; left:12px; bottom:12px; padding:6px 9px; border-radius:99px; background:rgba(8,8,12,.78); backdrop-filter:blur(8px); font-size:10px; }
.project-info { padding:17px; }
.project-info small { display:block; color:#7b7785; margin-top:4px; }
.new-project { border:1px dashed rgba(184,171,255,.32); min-height:235px; display:grid; place-items:center; text-align:center; border-radius:20px; color:#8d8998; }
.new-project strong { display:block; color:var(--ink); margin-top:8px; }
.usage-summary,.usage-toolbar,.usage-table-wrap,.subscription-card,.billing-card,.invoice-section { background:var(--panel); border:1px solid var(--line); border-radius:20px; }
.usage-summary { padding:22px; margin:30px 0; }
.usage-summary .section-title-row { margin:0 0 16px; }
.usage-summary p { margin:4px 0 0; color:#7d7987; font-size:12px; }
.usage-summary > .section-title-row > strong { font:800 24px Manrope,sans-serif; }
.usage-scale { display:flex; justify-content:space-between; margin-top:9px; color:#777381; font-size:11px; }
.recent-list { display:grid; gap:10px; }
.recent-row { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:13px; padding:15px; border:1px solid var(--line); border-radius:15px; background:rgba(255,255,255,.012); }
.recent-row small { display:block; color:#777381; margin-top:4px; }
.recent-row b { color:var(--acid); font-size:12px; }
.file-icon,.file-type { display:inline-grid; place-items:center; border-radius:9px; background:rgba(199,255,92,.1); color:var(--acid); font-size:9px; font-weight:800; }
.file-icon { width:40px; height:40px; }
.file-icon.violet,.file-type.violet { background:rgba(128,108,255,.16); color:#b8abff; }
.file-type.red { background:rgba(255,120,120,.12); color:#ff9898; }
.subscription-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr); gap:17px; margin-top:30px; }
.subscription-card { padding:28px; }
.featured-panel { background:linear-gradient(145deg,#1d1c29,#12121a); border-color:rgba(184,171,255,.32); }
.card-topline { display:flex; justify-content:space-between; align-items:start; }
.card-topline h2 { font-size:42px; margin-top:8px; }
.status-pill { display:inline-flex; width:max-content; padding:6px 9px; border-radius:99px; font-size:10px; font-weight:800; }
.status-pill.success { color:#bffb7a; background:rgba(132,210,56,.1); }
.status-pill.processing { color:#c9bfff; background:rgba(128,108,255,.13); }
.status-pill.failed { color:#ffaaa4; background:rgba(255,98,90,.12); }
.subscription-price { display:flex; align-items:end; gap:10px; margin:24px 0; }
.subscription-price strong { font:800 48px Manrope,sans-serif; }
.subscription-price span { color:#85818f; padding-bottom:9px; }
.subscription-actions { display:flex; gap:10px; margin-top:25px; }
.subscription-actions form { margin:0; }
.subscription-note { color:#8b8795; font-size:12px; margin:18px 0 0; }
.billing-stack { display:grid; gap:12px; }
.billing-card { padding:19px; }
.billing-card > span,.billing-card small { display:block; color:#777381; font-size:11px; }
.billing-card > strong { display:block; margin:10px 0 5px; font-size:18px; }
.payment-line { display:flex; justify-content:space-between; align-items:center; margin:10px 0 5px; }
.payment-line button,.text-button,.usage-toolbar button { border:0; background:transparent; color:var(--acid); cursor:pointer; font-weight:700; }
.billing-card ul { margin:10px 0 0; padding-left:17px; color:#aaa6b7; font-size:12px; display:grid; gap:7px; }
.invoice-section { margin-top:18px; overflow:hidden; }
.invoice-section .section-title-row { margin:0; padding:20px; }
.invoice-row { display:grid; grid-template-columns:1fr 1fr 1fr auto; gap:15px; border-top:1px solid var(--line); padding:17px 20px; color:#aaa6b7; font-size:12px; }
.invoice-row a { color:var(--acid); }
.usage-toolbar { margin:30px 0 15px; padding:17px 20px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; }
.usage-toolbar span { display:block; color:#777381; font-size:11px; margin-top:4px; }
.usage-meter.compact { height:7px; }
.usage-table-wrap { overflow-x:auto; width:100%; max-width:100%; }
.usage-table { width:100%; border-collapse:collapse; min-width:800px; }
.usage-table th { color:#777381; font-size:10px; text-transform:uppercase; letter-spacing:.08em; text-align:left; padding:14px 18px; }
.usage-table td { border-top:1px solid var(--line); padding:17px 18px; font-size:12px; color:#aaa6b7; }
.usage-table td:first-child { display:flex; align-items:center; gap:10px; color:var(--ink); }
.file-type { width:34px; height:30px; flex:0 0 auto; }
.usage-table td small { color:#6f6b78; }
.usage-table td a { color:var(--acid); font-weight:700; }
.pending-result { color:#6f6b78; }
.table-note { color:#6f6b78; font-size:11px; margin-top:12px; }

@media (max-width: 980px) {
  .pricing-grid { grid-template-columns:1fr; max-width:600px; margin:auto; }
  .auth-shell { grid-template-columns:1fr; }.auth-art{display:none}
  .dashboard-body { grid-template-columns:1fr; }.dashboard-side{display:none}.dashboard-main{padding:25px}
  .project-grid { grid-template-columns:repeat(2,1fr); }
  .subscription-layout { grid-template-columns:1fr; }
  .usage-table-wrap { overflow:visible; }
  .usage-table,.usage-table tbody { display:block; min-width:0; }
  .usage-table thead { display:none; }
  .usage-table tbody { padding:8px; }
  .usage-table tr { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:14px; border:1px solid var(--line); border-radius:14px; margin-bottom:8px; }
  .usage-table td { display:block; border:0; padding:0; }
  .usage-table td:first-child { grid-column:1/-1; }
}

@media (max-width: 640px) {
  .product-nav-actions .login-link { display:none; }
  .auth-panel { padding:24px; }
  .dashboard-top { padding:0 14px; }.dashboard-main{padding:22px 14px}.dashboard-heading{align-items:start;flex-direction:column}.metric-grid,.project-grid{grid-template-columns:1fr}
  .limit-grid { grid-template-columns:1fr; }
  .comparison-row { grid-template-columns:1.2fr 1fr 1fr; padding:14px; font-size:11px; }
  .recent-row { grid-template-columns:auto 1fr; }.recent-row b{grid-column:2}
  .subscription-actions { flex-direction:column; }
  .usage-toolbar { grid-template-columns:1fr; }
  .invoice-row { grid-template-columns:1fr 1fr; }
}
