/* User-only design system. Administrator pages intentionally keep their existing stylesheet. */
:root:has(body.pine-user) { background:#f3f5f4; scrollbar-gutter:auto; }
body.pine-user {
  --pine-primary:#276354; --pine-hover:#1e5144; --pine-bg:#f3f5f4; --pine-text:#252c2b;
  --pine-muted:#74808a; --pine-line:#dfe5e1; --pine-soft:#e6f0ea;
  --bg:var(--pine-bg); --bg-soft:#fff; --panel:#fff; --panel-strong:#fff;
  --text:var(--pine-text); --muted:var(--pine-muted); --line:var(--pine-line); --line-strong:#bdcbc3;
  --accent:var(--pine-primary); --accent-2:#548f7b; --accent-3:#548f7b;
  --success:#377657; --danger:#b53e40; --shadow:none;
  --console-bg:var(--pine-bg); --console-surface:#fff; --console-text:var(--pine-text);
  --console-muted:var(--pine-muted); --console-line:var(--pine-line); --console-blue:var(--pine-primary); --console-success:#377657;
  margin:0; min-height:100vh; color:var(--pine-text) !important; background:var(--pine-bg) !important;
  font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  letter-spacing:0; overflow-y:auto; scrollbar-gutter:auto;
}
.pine-user *, .pine-user *::before, .pine-user *::after { box-sizing:border-box; letter-spacing:0 !important; }
body.pine-user::before, body.pine-user::after { display:none !important; content:none !important; }
.pine-user [v-cloak], .pine-user [hidden] { display:none !important; }
.pine-user a { text-decoration:none; }
.pine-user button, .pine-user input, .pine-user select, .pine-user textarea { font:inherit; }
.pine-user button, .pine-user summary { cursor:pointer; }
.pine-user :focus-visible { outline:3px solid #86b7a3; outline-offset:3px; }
.pine-user h1, .pine-user h2, .pine-user h3 { font-family:inherit !important; color:var(--pine-text); font-weight:650; overflow-wrap:anywhere; }
.pine-user h1 { font-size:27px; line-height:1.3; margin:0 0 8px; }
.pine-user h2 { font-size:16px; line-height:1.5; margin:0; }
.pine-user h3 { font-size:15px; line-height:1.5; }
.pine-user p { font-size:13px; line-height:1.75; }
.pine-user .pine-shell, .pine-user .shell, .pine-user .console-shell { width:100%; max-width:1280px; padding-left:36px; padding-right:36px; margin-left:auto; margin-right:auto; }
.pine-user .pine-header { background:#fff; border-bottom:1px solid var(--pine-line); position:relative; z-index:40; }
.pine-user .pine-header__inner { height:76px; display:flex; align-items:center; gap:48px; }
.pine-user .pine-brand { display:inline-flex; align-items:center; flex-shrink:0; gap:10px; font-size:23px; color:var(--pine-text); font-weight:750; white-space:nowrap; }
.pine-user .pine-brand img { width:30px; height:30px; filter:invert(31%) sepia(15%) saturate(1285%) hue-rotate(111deg) brightness(93%) contrast(89%); }
.pine-user .pine-nav { display:flex; align-items:stretch; height:100%; flex:1; gap:27px; }
.pine-user .pine-nav a { display:flex; align-items:center; position:relative; white-space:nowrap; color:#65736d; font-size:14px; }
.pine-user .pine-nav a:hover, .pine-user .pine-nav a.is-active { color:var(--pine-primary); }
.pine-user .pine-nav a.is-active { font-weight:600; }
.pine-user .pine-nav a.is-active::after { content:""; position:absolute; bottom:0; left:0; right:0; height:3px; background:var(--pine-primary); }
.pine-user .pine-account { position:relative; margin-left:auto; flex-shrink:0; }
.pine-user .pine-account summary { display:flex; align-items:center; gap:10px; list-style:none; font-size:12px; color:#65736d; min-height:38px; }
.pine-user .pine-account summary::-webkit-details-marker { display:none; }
.pine-user .pine-account__email { max-width:160px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.pine-user .pine-avatar { display:grid; place-items:center; height:30px; width:30px; background:var(--pine-soft); border-radius:50%; color:var(--pine-primary); font-weight:600; }
.pine-user .pine-menu { position:absolute; top:48px; right:0; width:250px; max-width:calc(100vw - 32px); padding:8px; border:1px solid var(--pine-line); border-radius:8px; box-shadow:0 8px 30px #253b2e12; background:#fff; max-height:calc(100dvh - 100px); overflow:auto; }
.pine-user .pine-menu p { margin:0 0 7px; padding:9px 10px 13px; border-bottom:1px solid var(--pine-line); font-size:12px; color:var(--pine-muted); overflow-wrap:anywhere; }
.pine-user .pine-menu a, .pine-user .pine-menu button { display:block; width:100%; padding:9px 10px; border:0; border-radius:4px; text-align:left; background:none; color:#4d5b54; font-size:13px; }
.pine-user .pine-menu a:hover, .pine-user .pine-menu button:hover, .pine-user .pine-menu a[aria-current=page] { color:var(--pine-primary); background:var(--pine-soft); }
.pine-user .pine-menu button { border-top:1px solid var(--pine-line); margin-top:5px; border-radius:0; }
.pine-user .pine-menu__primary { display:none; }
.pine-user .pine-page-head { padding:32px 0 24px; }
.pine-user .pine-page-head__inner { display:flex; align-items:flex-start; justify-content:space-between; gap:32px; }
.pine-user .pine-page-title { min-width:0; flex:1; }
.pine-user .pine-page-title > .eyebrow { display:none; }
.pine-user .pine-page-title > p { margin:8px 0 0; max-width:720px; color:var(--pine-muted); }
.pine-user .pine-page-title .hero__subtitle { font-size:12px; margin:0; color:var(--pine-muted); overflow-wrap:anywhere; }
.pine-user .pine-page-summary { width:310px; flex-shrink:0; border-left:1px solid var(--pine-line); padding-left:24px; }
.pine-user .pine-page-summary .console-user-meta { display:flex; justify-content:space-between; align-items:baseline; gap:20px; padding:3px 0; }
.pine-user .pine-page-summary .console-user-meta span { color:var(--pine-muted); font-size:12px; }
.pine-user .pine-page-summary .console-user-meta strong { color:var(--pine-text); font-size:15px; text-align:right; overflow-wrap:anywhere; }
.pine-user .pine-page-summary .membership-card__eyebrow { font-size:12px; color:var(--pine-muted); }
.pine-user .pine-page-summary .membership-card__plan { font-size:22px; margin:4px 0 8px; overflow-wrap:anywhere; }
.pine-user .pine-page-summary .detail-list__row { padding:3px 0; border:0; }
.pine-user .pine-page-summary .detail-list__row strong { font-size:13px; }
.pine-user .layout { padding-top:0; padding-bottom:56px; gap:28px; margin-top:0; }
.pine-user .panel { min-width:0; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; padding:24px 0 !important; border-top:1px solid var(--pine-line) !important; }
.pine-user .panel__header { gap:16px; margin-bottom:22px; align-items:flex-start; text-align:left; }
.pine-user .panel__header h2, .pine-user .content-card h2, .pine-user .content-card__head h2 { font-size:16px; }
.pine-user .panel__header .eyebrow { display:none; }
.pine-user .eyebrow, .pine-user .console-kicker { font-size:11px !important; font-weight:500; color:var(--pine-muted) !important; }
.pine-user .panel__header p { margin:4px 0 0; }
.pine-user .content-card, .pine-user .status-card, .pine-user .subscription-board, .pine-user .empty-block, .pine-user .table-wrap, .pine-user .promo-box, .pine-user .traffic-meter { border-radius:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; padding:0 !important; }
.pine-user .content-card { gap:16px; }
.pine-user .content-card__head { margin:0 0 14px; }
.pine-user .grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.pine-user .content-card .auth-card { padding:0; border:0; background:none; box-shadow:none; }
.pine-user[data-console-page] .auth-card { padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
.pine-user .hero__subtitle { text-transform:none; }
.pine-user .hint, .pine-user .note { font-size:12px; color:var(--pine-muted); }
.pine-user .membership-card__plan { font-family:inherit; }
.pine-user .metric-strip strong, .pine-user .summary-card strong, .pine-user .status-card strong, .pine-user .protocol-stat-card strong { font-family:inherit; font-size:24px; }
.pine-user .status-grid, .pine-user .protocol-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.pine-user .status-card { padding:0 0 18px !important; }
.pine-user .status-card span { font-size:12px; }
.pine-user .protocol-stat-card { padding:16px; }
.pine-user .protocol-stat-card small { font-size:11px; }
.pine-user .node-list__item strong { font-size:14px; }
.pine-user .node-list__meta span { border-radius:4px; font-size:11px; padding:3px 7px; background:#eaf0ec; border:0; }
.pine-user .trend-chart__grid { gap:10px; min-height:210px; }
.pine-user .trend-chart__col { min-width:0; gap:10px; }
.pine-user .trend-chart__col strong { font-size:11px; font-weight:500; color:var(--pine-muted); }
.pine-user .trend-chart__col span { font-size:10px; color:var(--pine-muted); white-space:nowrap; }
.pine-user .trend-chart__bar { padding:0 5px; }
.pine-user .trend-chart__bar i { border:0; border-radius:3px 3px 0 0; background:#a9c9bb; min-height:0; }
.pine-user .trend-chart__col:last-child i { background:#276354; }
.pine-user label { display:grid; gap:8px; font-size:13px; color:#52635a; min-width:0; }
.pine-user input, .pine-user select, .pine-user textarea { max-width:100%; min-width:0; border:1px solid #ccd7d0 !important; border-radius:6px !important; background:#fff !important; color:var(--pine-text) !important; padding:10px 12px; box-shadow:none !important; }
.pine-user input:not([type=checkbox]):not([type=radio]), .pine-user select { min-height:40px; }
.pine-user textarea { resize:vertical; }
.pine-user input:focus, .pine-user select:focus, .pine-user textarea:focus { border-color:var(--pine-primary) !important; box-shadow:0 0 0 3px #27635414 !important; }
.pine-user input::placeholder, .pine-user textarea::placeholder { color:#94a099; }
.pine-user input[readonly] { color:#748078 !important; background:#f9fbf9 !important; }
.pine-user .button, .pine-user .console-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-width:0; min-height:38px; height:auto; padding:9px 15px; border:1px solid #ccd7d0; border-radius:6px !important; color:#4d5b54; background:#fff; box-shadow:none !important; font-size:13px; font-weight:550; line-height:1.4; white-space:normal; text-align:center; }
.pine-user .button:hover, .pine-user .console-button:hover { background:#f8faf8; border-color:#aebfb4; }
.pine-user .button--primary, .pine-user .console-button--primary { background:var(--pine-primary) !important; border-color:var(--pine-primary) !important; color:#fff !important; }
.pine-user .button--primary:hover, .pine-user .console-button--primary:hover { background:var(--pine-hover) !important; border-color:var(--pine-hover) !important; }
.pine-user button:disabled { opacity:.5; cursor:not-allowed; }
.pine-user .button--small { padding:6px 11px; min-height:32px; }
.pine-user .inline-actions, .pine-user .hero__actions { display:flex; flex-wrap:wrap; gap:10px; }
.pine-user .link-inline { color:var(--pine-primary); font-size:13px; }
.pine-user .stack { gap:18px; }
.pine-user .status { border-radius:6px !important; border:1px solid var(--pine-line); padding:10px 12px; font-size:12px; color:#556359; background:#edf1ee; overflow-wrap:anywhere; }
.pine-user .status[role=alert], .pine-user .pine-error { color:#a9383b; background:#fff1f0; border-color:#f1d5d1; }
.pine-user .status--error { color:#a9383b; background:#fff1f0; border-color:#f1d5d1; }
.pine-user .empty-block { padding:28px 14px !important; color:var(--pine-muted); font-size:13px; text-align:center; }
.pine-user .table-wrap { max-width:100%; overflow-x:auto; }
.pine-user .table { width:100%; border-collapse:collapse; font-size:13px; }
.pine-user .table th { background:#edf1ee; color:#6b7a70; font-size:12px; font-weight:500; white-space:nowrap; }
.pine-user[data-console-page=nodes] .table { min-width:1050px; }
.pine-user .table th, .pine-user .table td { padding:13px 14px; border-bottom:1px solid var(--pine-line); vertical-align:middle; }
.pine-user .table td { color:#43534a; }
.pine-user .table tbody tr:hover td { background:#eef3ef; }
.pine-user .detail-list__row { gap:16px; border-color:var(--pine-line); }
.pine-user .detail-list__row span, .pine-user .plain-list li, .pine-user .steps-list li, .pine-user .link-list span { font-size:13px; color:var(--pine-muted); }
.pine-user .detail-list__row strong { font-size:14px; color:var(--pine-text); overflow-wrap:anywhere; }
.pine-user .plain-list, .pine-user .steps-list { padding-left:20px; margin:10px 0; }
.pine-user .plain-list li, .pine-user .steps-list li { padding:4px 0; }
.pine-user .mono, .pine-user pre { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12px; overflow-wrap:anywhere; }
.pine-user .subscription-board--with-qr { grid-template-columns:minmax(0,1fr) 170px; gap:20px; }
.pine-user .subscription-board__main input { width:100%; }
.pine-user .subscription-qr-frame { width:160px; height:160px; padding:10px; border:1px solid var(--pine-line); border-radius:6px; background:#fff; }
.pine-user .subscription-qr-frame img { max-width:100%; max-height:100%; }
.pine-user .subscription-qr-note, .pine-user .subscription-qr-empty { width:160px; font-size:11px; }
.pine-user .credential-card, .pine-user .shortcut-card, .pine-user .plan-card, .pine-user .protocol-stat-card { border:1px solid var(--pine-line); border-radius:8px; background:#fff; box-shadow:none; padding:22px; min-width:0; }
.pine-user .credential-card h3 { font-size:16px; }
.pine-user .plan-grid { gap:18px; }
.pine-user .plan-card { display:flex; flex-direction:column; }
.pine-user .plan-card__top { display:flex; flex-direction:column; gap:16px; padding:0; }
.pine-user .plan-card__top h3 { font-size:18px; margin:0; }
.pine-user .plan-card__top p { white-space:normal; font-size:12px; margin:7px 0 0; min-height:0; }
.pine-user .plan-card__top strong { position:static; font-size:27px; line-height:1.4; color:var(--pine-text); text-align:left; min-width:0; }
.pine-user .plan-price { justify-items:start; gap:3px; }
.pine-user .plan-card__meta { display:grid; gap:7px; margin:17px 0; }
.pine-user .plan-card__meta span { padding:0; border:0; background:none; font-size:12px; color:#7a877f; }
.pine-user .protocol-pills { gap:7px; margin:0 0 20px; }
.pine-user .protocol-pills span, .pine-user .featured-tag { padding:3px 7px; border:0; border-radius:4px; color:#859086; font-size:11px; background:#eef1ef; }
.pine-user .protocol-pills span.on, .pine-user .featured-tag { color:var(--pine-primary); background:var(--pine-soft); }
.pine-user .plan-card__foot { display:flex; flex-direction:column; align-items:stretch; padding-top:16px; gap:12px; }
.pine-user .plan-card__foot span { font-size:11px; }
.pine-user .plan-card__foot .button { width:100%; margin:0; }
.pine-user .promo-box { padding:0 0 24px !important; border-bottom:1px solid var(--pine-line) !important; }
.pine-user .promo-box__head { align-items:start; }
.pine-user .promo-box__head h3 { font-size:16px; margin:0; }
.pine-user .promo-box__head p { font-size:12px; margin:6px 0; }
.pine-user .promo-box__badge { border-radius:6px; background:#e6f0ea; border:0; padding:10px; min-width:120px; }
.pine-user .promo-box__badge strong { font-size:14px; }
.pine-user .billing-flow { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:48px; }
.pine-user .trade-side-panel { position:static; border-left:1px solid var(--pine-line) !important; padding-left:26px !important; }
.pine-user .amount-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.pine-user .amount-grid--commerce .button { min-width:0; }
.pine-user .billing-grid { margin-top:22px; gap:18px; }
.pine-user .tab-row { display:flex; flex-wrap:wrap; gap:5px; }
.pine-user .tab-row button { border:1px solid var(--pine-line); border-radius:5px; padding:7px 12px; background:#fff; color:#728177; font-size:12px; }
.pine-user .tab-row button.active { border-color:#a4c3b2; background:var(--pine-soft); color:var(--pine-primary); }
.pine-user .metric-strip { gap:16px; }
.pine-user .metric-strip article { border:1px solid var(--pine-line); border-radius:8px; background:#fff; box-shadow:none; padding:20px; }
.pine-user .metric-strip article strong { font-size:24px; }
.pine-user .traffic-meter { padding:0 0 20px !important; }
.pine-user .traffic-meter__track { height:6px; border-radius:3px; background:#e3ebe5; }
.pine-user .traffic-meter__track i { min-width:0; background:#548f7b; }
.pine-user .traffic-breakdown__meta strong { font-size:18px; }
.pine-user .protocol-stat-card strong { font-size:23px; }
.pine-user .purchase-success-modal { background:#1f302b77; }
.pine-user .purchase-success-modal__dialog { border-radius:8px; background:#fff; box-shadow:0 20px 60px #17382926; max-height:calc(100dvh - 40px); overflow:auto; }
.pine-user .purchase-success-modal__mark { background:var(--pine-soft); color:var(--pine-primary); border-radius:8px; box-shadow:none; }
.pine-user .purchase-success-modal__body h2 { font-size:22px; }
.pine-user .purchase-success-modal__countdown strong { color:var(--pine-primary); }
.pine-user .pine-state { padding:18px 0; margin:16px 0; border-top:1px solid var(--pine-line); border-bottom:1px solid var(--pine-line); color:var(--pine-text); overflow-wrap:anywhere; }
.pine-user .pine-state p { margin:6px 0 12px; }
.pine-user .pine-state .button, .pine-user .pine-state a { margin-right:12px; }
.pine-user .pine-state--error { color:#a33333; border-color:#e2bcbc; }
.pine-user .pine-state--warning { color:#775b24; border-color:#decc9e; }
.pine-user .pine-sync-summary { color:var(--pine-muted); font-size:12px; margin:0 0 18px; }
.pine-user .pine-subscription-strip { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px 0; margin-bottom:26px; border-top:1px solid var(--pine-line); border-bottom:1px solid var(--pine-line); }
.pine-user .pine-subscription-strip h2 { font-size:18px; margin:10px 0 6px; overflow-wrap:anywhere; }
.pine-user .pine-subscription-strip p { margin:0; font-size:13px; color:var(--pine-muted); }
.pine-user .pine-subscription-strip .pine-subscription__actions { flex-wrap:wrap; margin:0; }
.pine-user .pine-terms { margin:16px 0 0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 20px; }
.pine-user .pine-terms div { min-width:0; }
.pine-user .pine-terms dt { font-size:12px; color:var(--pine-muted); margin-bottom:4px; }
.pine-user .pine-terms dd { margin:0; font-size:14px; overflow-wrap:anywhere; }
.pine-user .pine-terms-source { color:var(--pine-muted); font-size:12px; }
.pine-user .pine-order-table td { vertical-align:top; padding-top:16px; padding-bottom:16px; }
.pine-user .pine-order-table td:first-child { max-width:240px; overflow-wrap:anywhere; }
.pine-user .pine-order-table small, .pine-user .pine-order-table time { display:block; margin-top:6px; color:var(--pine-muted); font-size:12px; }
.pine-user .pine-order-table p { margin:5px 0; }
.pine-user .pine-right-row { padding:20px 0; border-bottom:1px solid var(--pine-line); }
.pine-user .pine-right-row h3 { margin:0 0 4px; }
.pine-user .button:disabled { cursor:not-allowed; opacity:.55; box-shadow:none; }
.pine-user .purchase-success-modal__actions { flex-wrap:wrap; }
.pine-user .purchase-success-modal__body h3 { font-size:16px; overflow-wrap:anywhere; }
.pine-user .pine-footer { display:flex; justify-content:space-between; gap:16px; margin-top:36px; padding-top:18px; border-top:1px solid var(--pine-line); font-size:11px; color:#91a096; }
.pine-user .pine-icon { width:17px; height:17px; flex:none; vertical-align:middle; opacity:.7; }
.pine-user .pine-icon-button { width:38px; padding:0; flex:none; }
.pine-user .button--primary .pine-icon { filter:invert(1); opacity:.95; }
.pine-user .pine-overview { padding-top:38px; padding-bottom:48px; }
.pine-user .pine-overview-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:28px; }
.pine-user .pine-overview-heading p { margin:0; color:var(--pine-muted); }
.pine-user .pine-overview-actions { display:flex; align-items:center; gap:18px; }
.pine-user .pine-sync { max-width:330px; color:#6c7d70; font-size:11px; }
.pine-user .pine-sync--warning { color:#a66a25; }
.pine-user .pine-overview-mobile-sync { display:none; font-size:12px; margin:0 0 20px; color:#7a887f; }
.pine-user .pine-overview-mobile-sync.pine-sync--warning { color:#a66a25; }
.pine-user .pine-flash[data-tone=error] { color:#a9383b; border-color:#f1d5d1; background:#fff1f0; }
.pine-user .pine-stats { display:grid; grid-template-columns:1.15fr 1fr 1fr; gap:18px; margin-bottom:24px; }
.pine-user .pine-stat { padding:23px 24px; min-width:0; border:1px solid var(--pine-line); border-radius:8px; background:#fff; }
.pine-user .pine-stat__heading { display:flex; align-items:center; justify-content:space-between; font-size:13px; color:#6b7c70; }
.pine-user .pine-stat__value { font-size:30px; line-height:1.3; font-weight:650; font-variant-numeric:tabular-nums; margin:14px 0 12px; overflow-wrap:anywhere; }
.pine-user .pine-stat__value--date { font-size:26px; line-height:39px; }
.pine-user .pine-stat__foot { display:flex; justify-content:space-between; align-items:center; gap:10px; font-size:11px; color:#8a988e; }
.pine-user .pine-stat__foot a { color:var(--pine-primary); }
.pine-user .pine-progress { height:5px; border-radius:3px; margin-top:14px; background:#e9eeeb; overflow:hidden; }
.pine-user .pine-progress i { display:block; height:100%; background:#548f7b; }
.pine-user .pine-overview-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:28px; }
.pine-user .pine-section { min-width:0; }
.pine-user .pine-section-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:17px; }
.pine-user .pine-section-heading a { font-size:12px; color:#708273; }
.pine-user .pine-chart { border-top:1px solid var(--pine-line); border-bottom:1px solid var(--pine-line); padding:20px 0 14px; }
.pine-user .pine-chart-caption { display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; font-size:11px; color:#86968a; }
.pine-user .pine-chart-caption strong { color:var(--pine-text); font-size:21px; font-weight:600; }
.pine-user .pine-bars { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); align-items:end; gap:12px; height:175px; background:repeating-linear-gradient(to top,transparent 0,transparent 48px,#e2e7e3 49px,#e2e7e3 50px); padding:0 0 0; }
.pine-user .pine-bar { min-width:0; display:flex; flex-direction:column; align-items:center; gap:9px; height:100%; }
.pine-user .pine-bar__track { height:145px; width:100%; display:flex; align-items:end; justify-content:center; }
.pine-user .pine-bar__track i { width:100%; max-width:27px; background:#a9c9bb; border-radius:3px 3px 0 0; }
.pine-user .pine-bar:last-child i { background:var(--pine-primary); }
.pine-user .pine-bar span { font-size:10px; color:#8a988e; white-space:nowrap; }
.pine-user .pine-activity { margin-top:26px; }
.pine-user .pine-activity-row { display:flex; align-items:center; gap:12px; border-bottom:1px solid var(--pine-line); padding:14px 0; font-size:12px; }
.pine-user .pine-activity-row > span { flex:1; min-width:0; overflow-wrap:anywhere; color:#607365; }
.pine-user .pine-activity-row time { font-size:11px; color:#8d9b91; flex-shrink:0; }
.pine-user .pine-dot { width:6px; height:6px; flex:none; display:inline-block; border-radius:50%; background:#548f7b; }
.pine-user .pine-subscription { background:#fff; border:1px solid var(--pine-line); border-radius:8px; padding:23px; margin-bottom:24px; }
.pine-user .pine-subscription__plan { font-size:20px; font-weight:650; margin:20px 0 5px; overflow-wrap:anywhere; }
.pine-user .pine-subscription__meta { color:#86958a; font-size:12px; }
.pine-user .pine-subscription__actions { display:flex; gap:10px; margin-top:20px; }
.pine-user .pine-subscription__actions .button--primary { flex:1; }
.pine-user .pine-subscription__footer { margin-top:20px; border-top:1px solid var(--pine-line); padding-top:14px; display:flex; justify-content:space-between; gap:10px; color:#8a988e; font-size:12px; }
.pine-user .pine-subscription__footer a { color:#607867; }
.pine-user .pine-badge { padding:3px 7px; background:var(--pine-soft); color:var(--pine-primary); border-radius:4px; font-size:11px; white-space:nowrap; }
.pine-user .pine-badge--muted { color:#7b827d; background:#eff1ef; }
.pine-user .pine-node { display:grid; grid-template-columns:30px minmax(0,1fr) auto; gap:10px; align-items:center; padding:16px 0; border-bottom:1px solid var(--pine-line); }
.pine-user .pine-node__flag { font-size:22px; }
.pine-user .pine-node strong { font-size:13px; font-weight:550; overflow-wrap:anywhere; }
.pine-user .pine-node small { display:block; margin-top:4px; color:#8a988e; font-size:11px; overflow-wrap:anywhere; }
.pine-user .pine-node .console-status { font-size:11px; }
.pine-user .pine-flash { margin-top:22px; padding:12px 14px; border:1px solid var(--pine-line); border-radius:6px; background:#fff; color:#58685c; font-size:13px; overflow-wrap:anywhere; }
@media (max-width:1100px) {
  .pine-user .pine-header__inner { gap:28px; }
  .pine-user .pine-nav { gap:20px; }
  .pine-user .pine-account__email { display:none; }
  .pine-user .pine-shell, .pine-user .shell, .pine-user .console-shell { padding-left:24px; padding-right:24px; }
  .pine-user .plan-grid--three { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pine-user .pine-overview-grid { gap:24px; }
  .pine-user .pine-overview-actions .pine-sync { display:none; }
  .pine-user .pine-overview-mobile-sync { display:block; }
}
@media (max-width:800px) {
  .pine-user .pine-header__inner { height:68px; }
  .pine-user .pine-nav { display:none; }
  .pine-user .pine-menu__primary { display:grid; grid-template-columns:1fr 1fr; padding-bottom:8px; margin-bottom:4px; border-bottom:1px solid var(--pine-line); }
  .pine-user .pine-menu { width:285px; }
  .pine-user .pine-page-head__inner { flex-direction:column; gap:18px; }
  .pine-user .pine-page-summary { width:100%; border-left:0; border-top:1px solid var(--pine-line); padding:14px 0 0; }
  .pine-user .pine-page-summary .detail-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  .pine-user .grid-2, .pine-user .billing-flow { grid-template-columns:1fr; gap:28px; }
  .pine-user .trade-side-panel { border-left:0 !important; border-top:1px solid var(--pine-line) !important; padding:20px 0 0 !important; }
  .pine-user .pine-overview-grid { grid-template-columns:1fr; gap:28px; }
  .pine-user .pine-overview-side { grid-row:1; }
  .pine-user .pine-bars { gap:9px; }
  .pine-user .pine-activity-row { flex-wrap:wrap; }
}
@media (max-width:540px) {
  .pine-user .pine-overview-heading { flex-wrap:wrap; }
  .pine-user .pine-subscription-strip { align-items:flex-start; flex-direction:column; gap:16px; }
  .pine-user .pine-terms { grid-template-columns:1fr; }
  .pine-user .plan-card__foot { flex-wrap:wrap; gap:12px; }
  .pine-user .pine-shell, .pine-user .shell, .pine-user .console-shell { padding-left:20px; padding-right:20px; }
  .pine-user h1 { font-size:24px; }
  .pine-user .pine-page-head { padding:26px 0 20px; }
  .pine-user .pine-overview { padding-top:27px; }
  .pine-user .pine-overview-heading { gap:10px; align-items:start; }
  .pine-user .pine-overview-heading p { font-size:12px; }
  .pine-user .pine-overview-actions .button { padding:8px 11px; font-size:12px; }
  .pine-user .pine-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .pine-user .pine-stat { padding:19px; }
  .pine-user .pine-stat:first-child { grid-column:1/-1; }
  .pine-user .pine-stat__value { font-size:25px; }
  .pine-user .pine-stat__value--date { font-size:20px; line-height:33px; }
  .pine-user .pine-stat__foot { font-size:10px; flex-wrap:wrap; gap:6px; }
  .pine-user .plan-grid--three, .pine-user .metric-strip, .pine-user .metric-strip--wide { grid-template-columns:1fr; }
  .pine-user .subscription-board--with-qr { grid-template-columns:1fr; }
  .pine-user .subscription-board__qr { align-items:start; }
  .pine-user .promo-box__head { flex-wrap:wrap; }
  .pine-user .promo-box__layout, .pine-user .billing-grid--submit { grid-template-columns:1fr; }
  .pine-user .promo-box__actions { justify-content:start; }
  .pine-user .pine-bars { gap:5px; }
  .pine-user .pine-bar span { font-size:8px; transform:rotate(-35deg); transform-origin:center; }
  .pine-user .pine-bars { height:185px; padding-bottom:10px; }
  .pine-user .trend-chart__grid { gap:5px; padding-bottom:15px; }
  .pine-user .trend-chart__bar { padding:0 3px; }
  .pine-user .trend-chart__col span { font-size:8px; transform:rotate(-35deg); transform-origin:center; }
  .pine-user .table { min-width:620px; }
  .pine-user .status-grid, .pine-user .protocol-stats { gap:12px; }
  .pine-user .status-card strong { font-size:20px; }
  .pine-user .protocol-stat-card { padding:14px 12px; }
  .pine-user .detail-list__row { flex-wrap:wrap; }
  .pine-user .purchase-success-modal { padding:16px; }
  .pine-user .purchase-success-modal__dialog { padding:22px; width:100%; }
}
