.portal-body{background:#fff}.portal-main{padding-top:12px}.header-actions{display:flex;align-items:center;gap:16px}.header-actions .secondary{font-size:14px;padding:10px 14px;min-height:42px}.login-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:90px;align-items:start;padding:62px 0}.login-intro h1{font-size:clamp(40px,5.6vw,68px);letter-spacing:-2.8px}.login-intro>p{max-width:420px}.access-explanation{display:grid;grid-template-columns:38px 1fr;gap:20px 12px;margin:32px 0}.access-explanation>span{font:700 14px Manrope,Arial,sans-serif;color:var(--purple);padding-top:3px}.access-explanation strong{font-size:17px}.access-explanation p{font-size:14px;margin:4px 0 0}.text-link{background:none;border:0;padding:0;color:var(--purple);font-size:14px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.form-panel label:not(:first-child){margin-top:20px}.form-panel>.primary{margin-top:24px}.form-panel>h2{margin-bottom:12px}.notice{padding:14px 18px;background:var(--soft);border:1px solid var(--line);border-radius:10px;font-size:14px;color:var(--muted);margin:16px 0}.workspace-top{display:flex;justify-content:space-between;gap:30px;align-items:end;padding:26px 0}.workspace-top h1{font-size:34px;letter-spacing:-1.3px;margin-bottom:8px}.workspace-top p{margin-bottom:0}.workspace-top .eyebrow{margin-bottom:10px}.business-select{width:300px;max-width:100%}.portal-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:26px 0}.portal-toolbar h2{margin:0}.portal-columns{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;margin-top:24px}.portal-card{border:1px solid var(--line);border-radius:16px;padding:26px;margin-top:20px}.portal-card h2{margin-bottom:12px}.portal-card .fine{margin-bottom:0}.stack{display:grid;gap:16px}.action-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.action-row .primary,.action-row .secondary{min-width:130px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.status-badge{font-size:14px;border:1px solid var(--line);border-radius:20px;padding:6px 12px;display:inline-block}.tag-active{color:var(--purple);background:var(--soft)}.card-balance{font:800 56px/1.1 Manrope,Arial,sans-serif;color:var(--purple);margin:22px 0 10px}.card-balance span{font-size:20px;color:var(--muted)}.portal-card code{overflow-wrap:anywhere;font-size:14px}.portal-card input{margin-bottom:14px}.portal-card canvas{max-width:100%;height:auto}.portal-card.empty-state{padding:48px 26px;text-align:center}.empty-state p{max-width:410px;margin:0 auto 16px}.inline-error{color:#a91f42;font-size:14px;line-height:1.6}.invite-code{display:block;padding:16px;background:var(--soft);border-radius:10px;overflow-wrap:anywhere;font-size:14px}.table-wrap td:last-child{white-space:nowrap}.portal-section{padding-top:8px}.portal-section .table-wrap{margin-top:16px}.portal-section select{margin-bottom:12px}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin:18px 0}.pagination .secondary{min-height:40px;padding:8px 14px}.subnav{display:flex;gap:10px;flex-wrap:wrap;padding:20px 0}.subnav button{font-size:14px;padding:10px 15px;border:1px solid var(--line);border-radius:24px;background:white;color:var(--muted)}.subnav button[aria-pressed=true]{border-color:var(--purple);color:var(--purple);background:var(--soft)}.scanner-video{width:100%;max-height:300px;border-radius:12px;margin-top:16px}.form-panel button[type=submit]{width:100%}dialog .form-panel{border:0;padding:0}dialog h2{margin-top:12px}dialog{max-height:90dvh;overflow:auto;width:min(500px,calc(100% - 32px))}.muted{color:var(--muted)}.row-heading{margin-bottom:16px}.route-error{padding:30px;border:1px solid var(--line);border-radius:16px}.receipt{background:var(--soft);padding:18px;border-radius:12px;margin-top:16px}.receipt p{margin:4px 0}.portal-card .eyebrow{font-size:12px}.loading{padding:32px 0;color:var(--muted)}
@media(max-width:760px){.login-grid{grid-template-columns:1fr;gap:30px;padding:25px 0}.login-intro h1{font-size:46px;letter-spacing:-1.8px}.access-explanation{display:none}.login-intro .text-link{display:inline-block;margin-top:4px}.workspace-top{display:block}.business-select{width:100%;margin-top:20px}.portal-columns{grid-template-columns:1fr}.portal-toolbar{align-items:start}.portal-card{padding:22px}.field-grid{grid-template-columns:1fr}.header-actions{gap:8px}.header-actions .demo-pill{display:none}.portal-main nav{display:flex;flex-wrap:wrap}.portal-main nav .tab{flex:1}.workspace-top h1{font-size:28px}.portal-main .form-panel{padding:24px}.portal-toolbar h2{font-size:20px}.action-row{align-items:stretch}.action-row button{flex:1}.table-wrap td:last-child{white-space:normal}.login-intro>p{margin-bottom:18px}}
