:root{--bg:#fff;--bg-elevated:#fff;--bg-sage:#f4f9f6;--bg-blue:#f0f4ff;--dark-bg:#0f1f17;--panel:#fff;--panel-border:#2e8b5724;--panel-border-strong:#2e8b5747;--text:#333;--text-heading:#1a2e1a;--muted:#666;--muted-soft:#8a9aa5;--primary:#2e8b57;--primary-hover:#236b43;--primary-soft:#2e8b5714;--accent-wood:#2e8b57;--accent-earth:#daa520;--accent-metal:#789;--accent-water:#4169e1;--accent-fire:#ff4500;--success:#2e8b57;--warning:#daa520;--danger:#d9481e;--info:#4169e1;--gradient-brand:linear-gradient(135deg, #2e8b57 0%, #4169e1 100%);--gradient-surface:linear-gradient(180deg, #fff 0%, #f4f9f6 100%);--shadow:0 8px 24px #1a2e1a12;--shadow-focus:0 0 0 4px #2e8b572e;--radius:12px;--radius-sm:8px;--radius-pill:999px;--font-brand:Georgia, "Times New Roman", serif;--font-ui:var(--font-source-sans), "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-body:var(--font-lora), Georgia, serif;--shell-max:1440px;--content-app:1408px;--content-wide:1200px;--content-form:560px;--content-readable:720px;--page-gutter:clamp(16px, 3vw, 32px);--prac-nav-sticky-height:3.5rem;--report-section-nav-sticky-top:var(--prac-nav-sticky-height);--report-section-scroll-margin:calc(var(--prac-nav-sticky-height) + 3.25rem);--patient-summary-sticky-top:var(--prac-nav-sticky-height);--transition-fast:.15s ease}html{scroll-padding-top:var(--report-section-scroll-margin)}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font-ui);margin:0;padding:0;overflow-x:clip}h1,h2,h3,.font-brand{font-family:var(--font-brand);color:var(--text-heading)}img,svg,video,canvas{max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}input,textarea,select{border:1px solid var(--panel-border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;outline:none;margin:0;padding:12px 14px}input:focus,textarea:focus,select:focus{box-shadow:var(--shadow-focus);border-color:#2e8b578c}input[type=checkbox],input[type=radio]{width:18px;min-width:18px;height:18px;accent-color:var(--primary);flex-shrink:0;margin:0;padding:0}textarea{resize:vertical;min-height:120px}button{cursor:pointer}body{min-width:320px}.shell{width:100%;max-width:var(--shell-max);padding-left:var(--page-gutter);padding-right:var(--page-gutter);box-sizing:border-box;margin-left:auto;margin-right:auto}.content-wide{width:100%;max-width:var(--content-wide);box-sizing:border-box;margin-left:auto;margin-right:auto}.content-form{width:100%;max-width:var(--content-form);box-sizing:border-box;margin-left:auto;margin-right:auto}.content-readable{width:100%;max-width:var(--content-readable);box-sizing:border-box;margin-left:auto;margin-right:auto}.brand-wordmark{line-height:1.18;font-family:var(--font-brand);letter-spacing:-.01em;flex-direction:column;font-weight:700;display:flex}.brand-wordmark-inline{font-family:var(--font-brand);letter-spacing:-.01em;font-weight:700;display:inline}.element-tag{border-radius:var(--radius-sm);letter-spacing:.06em;text-transform:uppercase;width:fit-content;font-size:11px;font-weight:700;font-family:var(--font-ui);justify-content:center;align-items:center;padding:4px 10px;line-height:1.2;display:inline-flex}.element-tag--wood{color:var(--accent-wood);background:#2e8b571f}.element-tag--fire{color:var(--accent-fire);background:#ff45001f}.element-tag--earth{color:#9a6b00;background:#daa52029}.element-tag--metal{color:#4a5560;background:#77889929}.element-tag--water{color:var(--accent-water);background:#4169e11f}.brand-wordmark{letter-spacing:-.01em;flex-direction:column;justify-content:center;font-family:Georgia,serif;font-weight:700;line-height:1.18;display:flex}.brand-wordmark-line1{color:#2e8b57}.brand-wordmark-line2{color:#4169e1}.brand-wordmark-inline{letter-spacing:-.01em;font-family:Georgia,serif;font-weight:700;display:inline}.brand-wordmark-inline .brand-wordmark-line1{color:#2e8b57}.brand-wordmark-inline .brand-wordmark-line2{color:#4169e1}.hero-card,.summary-card,.panel,.workflow-card,.detail-card,.auth-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.primary-action{color:#fff;background:linear-gradient(135deg,#2e8b57 0%,#3c9b64 100%);border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-family:Georgia,serif;font-size:.95rem;font-weight:800;line-height:1;transition:transform .15s,box-shadow .15s,filter .15s;display:inline-flex;box-shadow:0 10px 24px #2e8b5738}.primary-action:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 14px 28px #2e8b5747}.primary-action:active{transform:translateY(0);box-shadow:0 8px 18px #2e8b5733}.primary-action.is-disabled,.primary-action:disabled{opacity:.48;cursor:not-allowed;box-shadow:none;filter:grayscale(.25);transform:none}.primary-action.is-disabled:hover,.primary-action:disabled:hover{filter:grayscale(.25);box-shadow:none;transform:none}.dashboard-header-actions-wrap{flex-shrink:0;justify-content:flex-end;display:flex}.dashboard-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.secondary-action{color:var(--text);border:1px solid var(--panel-border);box-shadow:var(--shadow);background:#fffffff5;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-family:Georgia,serif;font-size:.95rem;font-weight:800;line-height:1;transition:transform .15s,box-shadow .15s,filter .15s;display:inline-flex}.secondary-action:hover{filter:brightness(1.01);transform:translateY(-1px)}.pill{width:fit-content;color:var(--text);background:#f0ece5;border-radius:999px;justify-content:center;align-items:center;padding:7px 12px;font-family:Georgia,serif;font-size:12px;font-weight:700;display:inline-flex}.pill-success{color:#2e8b57;background:#e7f3ec}.pill-warning{color:#9a6b00;background:#f6e7bc}.pill-danger{color:#b63d11;background:#fde2d8}.pill-info{color:#4169e1;background:#e4eaff}.workflow-status{background:var(--primary-soft);width:fit-content;color:var(--primary);border-radius:999px;padding:7px 12px;font-family:Georgia,serif;font-size:12px;font-weight:800;display:inline-flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #6e675f29;padding:14px 10px}th{color:#4d463d;font-family:Georgia,serif;font-size:.95rem;font-weight:700}td{color:var(--text);font-family:Georgia,serif}table tbody tr{transition:background-color .15s,transform .15s}table tbody tr:hover{background:#2e8b5708}table tbody tr td:first-child a{color:var(--text);font-weight:700}.trial-ended-message,.empty-state.trial-ended-message{color:#dc2626;font-weight:600}.back-to-top-button{z-index:9998;color:#fff;cursor:pointer;background:#1e293b;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;font-weight:700;line-height:1;transition:background .15s,transform .15s,box-shadow .15s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 14px #0f172a47}.back-to-top-button:hover{background:#334155;transform:translateY(-2px);box-shadow:0 6px 18px #0f172a52}.back-to-top-button:focus-visible{outline-offset:2px;outline:2px solid #4f46e5}.shell,.content-wide{width:100%;max-width:var(--shell-max);box-sizing:border-box;margin-left:auto;margin-right:auto}.dashboard{max-width:var(--content-app,1408px);margin:0 auto;padding:28px 24px 40px}.dashboard-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.dashboard-header h1{letter-spacing:-.05em;margin:0;font-family:Georgia,serif;font-size:clamp(2.2rem,4vw,4rem);line-height:1}.hero{grid-template-columns:1fr 370px;align-items:start;gap:24px;margin-bottom:28px;display:grid}.eyebrow{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.hero h1{letter-spacing:-.06em;margin:0;font-family:Georgia,serif;font-size:clamp(2.6rem,4.8vw,4.8rem);line-height:.96}.subheading{max-width:720px;color:var(--muted);margin:14px 0 0;font-family:Georgia,serif;font-size:1rem;line-height:1.7}.panel{padding:18px}.panel-header h2{letter-spacing:-.03em;margin:0;font-family:Georgia,serif;font-size:1.35rem}.patient-row-link{color:inherit;cursor:pointer;border-bottom:1px solid #e2e8f0;border-radius:0;grid-template-columns:200px 1fr;align-items:start;gap:20px;margin:0 -12px;padding:14px 12px;text-decoration:none;transition:background .12s;display:grid}.patient-row-link:nth-child(2n){background:#f8fafc}.patient-row-link:hover{background:#e2e8f0}.patient-row-link:focus-visible{outline-offset:-2px;outline:2px solid #3b82f6}.patient-row-link .patient-row-name{color:#0f172a;font-size:.95rem;font-weight:700}.patient-row-link:hover .patient-row-name{color:#1e40af}.workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.workflow-card{flex-direction:column;justify-content:space-between;min-height:150px;padding:18px;display:flex}.workflow-card-top{flex-direction:column;gap:12px;text-decoration:none;display:flex}.workflow-card-top:hover .workflow-status{filter:brightness(.98)}.workflow-card-top:hover strong{text-decoration:underline}.workflow-card-meta{gap:6px;display:grid}.workflow-card-meta p{color:var(--muted);margin:0}.workflow-card strong{letter-spacing:-.03em;margin-top:10px;font-family:Georgia,serif;font-size:1.7rem;line-height:1.1;display:block}.workflow-card p{color:var(--muted);margin:8px 0 0;font-family:Georgia,serif}.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.detail-card{gap:8px;padding:18px;display:grid}.detail-label{color:var(--muted);font-family:Georgia,serif;font-size:.95rem}.detail-card strong{font-family:Georgia,serif;font-size:1.1rem;line-height:1.4}.detail-back-row{margin-bottom:16px}.back-link{color:var(--primary);align-items:center;gap:8px;font-family:Georgia,serif;font-weight:700;display:inline-flex}.back-link:hover{text-decoration:underline}.activity-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.activity-list li{border-bottom:1px solid #6e675f29;flex-wrap:nowrap;align-items:center;gap:12px;min-width:0;padding:14px 0;display:flex}.activity-list li:last-child{border-bottom:0;padding-bottom:0}.activity-name{white-space:nowrap;flex-shrink:0;font-family:Georgia,serif;font-weight:700}.activity-name a:hover{text-decoration:underline}.activity-change{color:var(--muted);white-space:nowrap;flex-shrink:1;min-width:0;font-family:Georgia,serif;line-height:1.4}.activity-meta{color:#8a8178;white-space:nowrap;flex-shrink:0;font-family:Georgia,serif;font-size:.9rem}.empty-state{color:var(--muted);margin:0;padding:10px 2px;font-family:Georgia,serif}.empty-table-cell{text-align:center;color:var(--muted);padding:28px 10px}@media (max-width:1100px){.hero,.content-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-grid{grid-template-columns:1fr}.dashboard-header{flex-direction:column;align-items:flex-start}.dashboard-header-actions-wrap{justify-content:flex-start;width:100%}.dashboard-header-actions{justify-content:flex-start}}@media (max-width:720px){.dashboard{padding:20px 16px 32px}.panel{padding:16px}.detail-grid{grid-template-columns:1fr}.workflow-detail-row{flex-direction:column;align-items:flex-start}}.session-footer{background:var(--dark-bg,#1a2e1a);color:#8faaa0;border-top:1px solid #2a4032;flex-shrink:0;width:100%;margin-top:auto;position:relative}.session-footer:before{content:"";background:var(--gradient-brand,linear-gradient(90deg, #2e8b57, #3cb371));height:2px;display:block}.session-footer-inner{text-align:left;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;width:100%;max-width:none;margin:0;padding:10px clamp(16px,2.5vw,40px);display:flex}.session-footer-meta{font-size:.72rem;line-height:1.3;font-family:var(--font-ui);color:#6f8f80;letter-spacing:.02em;flex:0 auto;margin:0}.session-footer-nav{flex-wrap:wrap;align-items:baseline;gap:6px 10px;min-width:0;display:flex}.session-footer-nav-clinic{text-align:right;justify-content:flex-end}.session-footer-group-label{letter-spacing:.08em;text-transform:uppercase;color:#9bb5a8;font-size:.62rem;font-weight:700;font-family:var(--font-ui);white-space:nowrap;text-overflow:ellipsis;max-width:14rem;line-height:1.3;overflow:hidden}.session-footer-links{font-size:.75rem;line-height:1.3;font-family:var(--font-ui);flex-wrap:wrap;align-items:center;gap:0;display:flex}.session-footer-links a{color:#8faaa0;padding:0 5px;font-weight:600;text-decoration:none}.session-footer-links a:first-child{padding-left:0}.session-footer-links a:hover{color:#e8f2ec;text-decoration:underline}.session-footer-sep{color:#5f7a6c;-webkit-user-select:none;user-select:none;padding:0 1px}.session-footer-muted{color:#6f8f80;font-size:.72rem;font-weight:500}@media (max-width:720px){.session-footer{border-top-color:#324a3a}.session-footer-inner{padding:14px max(14px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));grid-template-columns:1fr;gap:10px;display:grid}.session-footer-meta{letter-spacing:.04em;text-transform:uppercase;color:#c5d8ce;background:#ffffff0a;border:1px solid #8faaa02e;border-radius:10px;max-width:100%;margin:0;padding:10px 12px;font-size:.78rem;font-weight:700}.session-footer-nav{background:#ffffff0a;border:1px solid #8faaa02e;border-radius:10px;gap:6px;width:100%;max-width:100%;padding:10px 12px;display:grid}.session-footer-nav-clinic{text-align:left;justify-content:flex-start;max-width:100%}.session-footer-group-label{white-space:normal;max-width:100%;text-overflow:unset;color:#d7e8dc;font-size:.68rem;overflow:visible}.session-footer-links{gap:4px 2px;font-size:.82rem}.session-footer-links a{color:#b7cfc2;border-radius:6px;margin:0 -6px;padding:4px 6px}.session-footer-links a:hover{color:#f0f7f3;background:#ffffff0f;text-decoration:none}.session-footer-muted{color:#8faaa0;font-size:.78rem;line-height:1.4}}.admin-hamburger{z-index:300;color:#fff;cursor:pointer;background:#1a1a1a;border:none;border-radius:6px;padding:.45rem .65rem;font-size:1.15rem;line-height:1;display:none;position:fixed;top:.75rem;left:.75rem;box-shadow:0 2px 6px #0000004d}.admin-overlay{z-index:200;background:#00000080;display:none;position:fixed;inset:0}.admin-overlay--visible{display:block}.admin-sidebar{color:#fff;z-index:250;background:#1a1a1a;flex-direction:column;flex-shrink:0;width:220px;height:100vh;padding:1.5rem 0;display:flex;position:sticky;top:0;overflow:hidden}.admin-sidebar-brand{padding:0 1.25rem 1.5rem}.admin-sidebar-eyebrow{letter-spacing:.1em;color:#999;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:700}.admin-sidebar-title{color:#fff;margin:.25rem 0 0;font-size:1.1rem;font-weight:700}.admin-sidebar-hr{border:none;border-top:1px solid #333;margin:0 0 1rem}.admin-sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:0 .75rem;display:flex}.admin-sidebar-link{color:#ccc;border-radius:6px;align-items:center;gap:.6rem;padding:.55rem .75rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .15s;display:flex}.admin-sidebar-link:hover{color:#fff;background:#2a2a2a}.admin-sidebar-icon{opacity:.7;font-size:.8rem}.admin-sidebar-footer{padding:1rem 1.25rem 0}.admin-sidebar-email{color:#888;word-break:break-all;margin:0 0 .5rem;font-size:.8rem}.admin-sidebar-signout{color:#aaa;cursor:pointer;background:0 0;border:1px solid #444;border-radius:6px;width:100%;padding:.4rem .75rem;font-size:.8rem}.admin-sidebar-signout:hover{color:#fff;border-color:#888}.admin-main-wrapper{flex:1;height:100vh;padding:2rem 2.5rem;overflow-y:auto}.admin-open-link{color:#1d4ed8;text-underline-offset:2px;font-weight:600;text-decoration:underline}.admin-open-link:hover{color:#1e40af}.admin-invite-grid{grid-template-columns:1fr 1fr;align-items:start;gap:2rem;display:grid}.admin-detail-grid{grid-template-columns:1fr 2fr;align-items:start;gap:1.5rem;display:grid}@media (max-width:768px){.admin-hamburger{display:block}.admin-sidebar{height:100vh;transition:transform .25s;position:fixed;top:0;left:0;overflow:hidden;transform:translate(-100%)}.admin-sidebar--open{transform:translate(0)}.admin-main-wrapper{height:100vh;padding:3.75rem 1rem 1.5rem}.admin-invite-grid,.admin-detail-grid{grid-template-columns:1fr}}@media (max-width:480px){.detail-card{padding:14px}.detail-label{font-size:.9rem}input,select,textarea{font-size:16px!important}}@media (max-width:768px){.audit-filter-bar{flex-direction:column;align-items:stretch}.audit-filter-bar>*{width:100%}.audit-filter-bar select,.audit-filter-bar input[type=text],.audit-filter-bar input[type=date]{width:100%;font-size:16px}}.prac-nav{padding:8px var(--page-gutter,24px);color:var(--text);border-bottom:1px solid var(--panel-border);box-sizing:border-box;z-index:100;-webkit-backdrop-filter:blur(10px);background:#fffffff7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 1px #0f172a0a}.prac-nav-spacer{height:var(--prac-nav-sticky-height,3.5rem);pointer-events:none;flex-shrink:0}.report-section-nav{top:var(--report-section-nav-sticky-top,var(--prac-nav-sticky-height,3.5rem));z-index:40;-webkit-backdrop-filter:blur(8px);background:#fffffff5;border:1px solid #e2e8f0;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:20px;padding:10px 14px;display:flex;position:sticky;box-shadow:0 2px 8px #0f172a0f}.report-section-nav-divider{color:#e2e8f0;-webkit-user-select:none;user-select:none;margin-right:4px}.report-section-nav-spacer{flex:1}.report-section-nav-btn{color:#475569;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:5px 10px;font-family:inherit;font-size:.74rem;font-weight:600;line-height:1.25}.report-section-nav-btn:hover{color:#4338ca;border-color:#c7d2fe}.report-section-nav-btn.is-active{color:#4338ca;background:#eef2ff;border-color:#818cf8}@media print{.prac-nav{position:static}.prac-nav-spacer{display:none}.report-section-nav{display:none!important}}.prac-nav-left{flex:auto;align-items:stretch;gap:20px;min-width:0;display:flex}.prac-nav-brand{color:inherit;flex-shrink:0;align-self:center;align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.prac-nav-brand:hover{text-decoration:none}.prac-nav-logo{flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;line-height:0;display:flex;overflow:visible}.prac-nav-logo .brand-logo{transform-origin:50%;width:36px;max-width:none;height:36px;display:block;transform:scale(1.35)}.prac-nav-brand .brand-wordmark{font-size:.95rem;line-height:1.15}.prac-nav-clinic-name{border:1px solid var(--panel-border-strong);min-width:0;max-width:100%;min-height:34px;color:var(--text);font-size:.8rem;font-weight:600;font-family:var(--font-ui);cursor:pointer;box-sizing:border-box;background:#fff;border-radius:8px;flex:0 auto;align-self:center;align-items:center;gap:7px;margin-left:2px;padding:0 12px 0 10px;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex;box-shadow:0 1px 2px #1f2a320a}.prac-nav-clinic-name:hover{color:var(--text);background:#f8fafc;border-color:#94a3b8;text-decoration:none;box-shadow:0 2px 8px #0f172a14}.prac-nav-clinic-name:focus-visible{border-color:#0f172a;outline:none;box-shadow:0 0 0 3px #0f172a14}.prac-nav-clinic-name-icon{opacity:.72;flex-shrink:0}.prac-nav-clinic-name:hover .prac-nav-clinic-name-icon{opacity:.95}.prac-nav-clinic-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.prac-nav-clinic-inline{border-left:1px solid var(--panel-border);align-self:center;margin-left:2px;padding-left:16px}.prac-nav-primary{border-left:1px solid var(--panel-border);align-self:stretch;align-items:stretch;gap:2px;margin-left:4px;padding-left:18px;display:none}.prac-nav-link{font-size:.84rem;font-weight:500;font-family:var(--font-ui);color:var(--muted);transition:color var(--transition-fast);border-radius:0;align-items:center;padding:6px 12px;text-decoration:none;display:inline-flex;position:relative}.prac-nav-link:hover{color:var(--text);background:0 0;text-decoration:none}.prac-nav-link.is-active{color:var(--text);background:0 0;font-weight:600}.prac-nav-link.is-active:after{content:"";background:var(--primary);border-radius:1px;height:2px;position:absolute;bottom:0;left:12px;right:12px}.prac-nav-msg-badge{color:#fff;letter-spacing:0;font-variant-numeric:tabular-nums;min-width:1.15rem;height:1.15rem;box-shadow:0 0 0 1.5px var(--bg-elevated,#fff);background:#dc2626;border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:.68rem;font-weight:700;line-height:1;display:inline-flex}.prac-nav-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;margin-left:auto;display:flex}.prac-nav-clinic{color:var(--muted);font-size:.75rem;font-family:var(--font-ui);align-items:center;gap:8px;display:flex;position:relative}.prac-nav-clinic-label{white-space:nowrap;font-weight:500}.prac-nav-clinic-measure{visibility:hidden;white-space:nowrap;font-size:.8rem;font-family:var(--font-ui);pointer-events:none;position:absolute}.prac-nav-clinic-select{appearance:none;border:1px solid var(--panel-border-strong);min-width:148px;box-shadow:none;color:var(--text);font-size:.8rem;font-weight:500;font-family:var(--font-ui);cursor:pointer;box-sizing:border-box;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:11px 7px;border-radius:8px;padding:7px 32px 7px 10px}.prac-nav-clinic-select:hover:not(:disabled){background-color:#f8fafc;border-color:#94a3b8}.prac-nav-clinic-select:focus{border-color:#0f172a;outline:none;box-shadow:0 0 0 3px #0f172a14}.prac-nav-clinic-select:disabled{cursor:wait;opacity:.75}.prac-nav-menu{position:relative}.prac-nav-menu-btn{color:#3d5a45;min-height:34px;font-size:.8rem;font-weight:600;font-family:var(--font-ui);letter-spacing:.01em;cursor:pointer;background:linear-gradient(#fff 0%,#f7fbf8 100%);border:1px solid #2e8b5729;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 12px 0 10px;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s;display:inline-flex;box-shadow:0 1px 2px #1f2a320a}.prac-nav-menu-btn:hover{color:#1f3d2a;background:linear-gradient(#fff 0%,#eef7f1 100%);border-color:#2e8b5747;box-shadow:0 2px 8px #2e8b571a}.prac-nav-menu-btn.is-open,.prac-nav-menu-btn.is-active{color:#2e8b57;background:#2e8b571a;border-color:#2e8b5757;box-shadow:inset 0 0 0 1px #2e8b570f}.prac-nav-menu-btn-gear{opacity:.88;flex-shrink:0}.prac-nav-menu-btn-chevron{opacity:.65;flex-shrink:0;transition:transform .18s}.prac-nav-menu-btn.is-open .prac-nav-menu-btn-chevron{opacity:.9;transform:rotate(180deg)}.prac-nav-dropdown{z-index:50;border-radius:var(--radius);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffffa;gap:2px;min-width:220px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 28px #1f2a321f}.prac-nav-dropdown-item{border-radius:var(--radius-sm);width:100%;color:var(--text);text-align:left;cursor:pointer;box-sizing:border-box;transition:background var(--transition-fast), color var(--transition-fast);font-size:.9rem;font-weight:500;font-family:var(--font-ui);background:0 0;border:none;padding:10px 14px;text-decoration:none;display:block}.prac-nav-dropdown-item:hover{background:var(--bg-sage);color:var(--primary);text-decoration:none}.prac-nav-dropdown-item.is-active{background:var(--primary-soft);color:var(--primary);font-weight:700}.prac-nav-dropdown-item.is-danger{color:var(--danger)}.prac-nav-dropdown-item.is-danger:hover{color:var(--danger);background:#d9481e14}.prac-nav-dropdown-divider{background:var(--panel-border);height:1px;margin:6px 4px}.prac-nav-dropdown-identity{gap:2px;min-width:0;padding:8px 14px 6px;display:grid}.prac-nav-dropdown-identity-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted,#64748b);font-size:.7rem;font-weight:600}.prac-nav-dropdown-identity-email{color:var(--text);word-break:break-word;font-size:.88rem;font-weight:600;line-height:1.35}.prac-nav-mobile-primary{display:contents}@media (min-width:900px){.prac-nav-primary{display:flex}.prac-nav-menu-btn-label{display:inline}.prac-nav-mobile-only{display:none}}@media (max-width:899px){.prac-nav{flex-wrap:nowrap;gap:8px;padding:4px 12px}.prac-nav-left{gap:8px;min-width:0}.prac-nav-brand{gap:6px}.prac-nav-logo{width:28px;height:28px}.prac-nav-logo .brand-logo{width:28px;height:28px;transform:scale(1.2)}.prac-nav-brand .brand-wordmark{display:none}.prac-nav-clinic-name{border-radius:6px;flex:auto;min-height:32px;padding:0 10px 0 8px;font-size:.75rem}.prac-nav-clinic-name-icon{width:13px;height:13px}.prac-nav-clinic-inline{flex:auto;min-width:0;margin-left:0;padding-left:10px}.prac-nav-clinic-label{display:none}.prac-nav-clinic-select{text-overflow:ellipsis;background-position:right 8px center;border-radius:6px;width:100%;min-width:0;max-width:100%;padding:4px 28px 4px 8px;font-size:.75rem}.prac-nav-actions{flex-wrap:nowrap;flex-shrink:0;gap:6px}.prac-nav-menu-btn-label,.prac-nav-menu-btn-chevron{display:none}.prac-nav-menu-btn{width:32px;min-height:32px;padding:0}.prac-nav-menu-btn-gear{width:16px;height:16px}}.prac-breadcrumbs{font-size:.88rem;font-family:var(--font-ui);color:var(--muted);flex-wrap:wrap;align-items:center;gap:0;margin:0 0 16px;line-height:1.35;display:flex}.prac-breadcrumbs-seg{align-items:center;min-width:0;display:inline-flex}.prac-breadcrumbs-sep{color:#94a3b8;-webkit-user-select:none;user-select:none;margin:0 .45em}.prac-breadcrumbs-link{color:var(--primary);font-weight:700;text-decoration:none}.prac-breadcrumbs-link:hover{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.prac-breadcrumbs-current{color:var(--text-heading,var(--text));text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:min(420px,70vw);font-weight:600;overflow:hidden}.breadcrumbs{font-size:.88rem;font-family:var(--font-ui);color:var(--muted);flex-wrap:wrap;align-items:center;gap:0;margin:0 0 16px;line-height:1.35;display:flex}.breadcrumb-separator{color:#94a3b8;-webkit-user-select:none;user-select:none;margin:0 .45em}.breadcrumb-link{color:var(--primary);font-weight:700;text-decoration:none}.breadcrumb-link:hover{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.breadcrumb-current{color:var(--text-heading,var(--text));font-weight:600}.patient-detail-top .prac-breadcrumbs,.patient-detail-top .breadcrumbs{margin:0}.prac-breadcrumbs-on-dark,.prac-breadcrumbs-on-dark .prac-breadcrumbs-link,.prac-breadcrumbs-on-dark .prac-breadcrumbs-current,.prac-breadcrumbs-on-dark .prac-breadcrumbs-sep{color:#ffffffeb}.prac-breadcrumbs-on-dark .prac-breadcrumbs-link:hover{color:#fff}.prac-breadcrumbs-on-dark .prac-breadcrumbs-sep{color:#ffffff8c}.prac-breadcrumbs-on-dark .prac-breadcrumbs-current{font-weight:700}.dashboard.command-center{background:0 0}.dashboard-shell-wash{background:var(--gradient-surface);flex-direction:column;flex:1;align-items:stretch;width:100%;min-height:0;display:flex}.dashboard-shell-wash>.dashboard,.dashboard-shell-wash>.patient-detail{width:100%;max-width:min(var(--content-app,1408px), 100%);box-sizing:border-box;min-width:0;margin-left:auto;margin-right:auto}.dashboard-header.dashboard-header-compact{align-items:center;gap:16px;margin-bottom:20px}.dashboard.command-center .panel-header{gap:12px}.dashboard.command-center .panel-header-patients{flex-wrap:wrap;align-items:center}.dashboard.command-center .panel-header>div:first-child{flex:200px;min-width:0}.dashboard-list-search{width:100%;margin-bottom:16px}.dashboard-list-search.is-compact{flex:240px;min-width:200px;max-width:420px;margin-bottom:0}.dashboard-list-search-field{border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:#fff;align-items:center;gap:8px;padding:10px 14px;display:flex}.dashboard-list-search.is-compact .dashboard-list-search-field{min-height:36px;padding:6px 10px}.dashboard-list-search-icon{color:var(--muted-soft);font-size:.95rem}.dashboard-list-search-field input{min-width:0;color:var(--text);font-size:.9rem;font-family:var(--font-ui);background:0 0;border:none;outline:none;flex:1}.dashboard-list-search-clear{background:var(--bg-sage);color:var(--muted);cursor:pointer;font-size:.75rem;font-weight:600;font-family:var(--font-ui);border:none;border-radius:6px;padding:4px 8px}.dashboard-header-compact h1{font-size:clamp(1.55rem,2.6vw,2.1rem)}.dashboard-header-compact .subheading{margin-top:6px;font-size:.92rem;line-height:1.5}.dashboard-summary-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.dashboard-summary-bar-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:700;font-family:var(--font-ui)}.dashboard-summary-bar-select-wrap{flex:0 280px;min-width:180px;position:relative}.dashboard-summary-bar-select{appearance:none;border-radius:var(--radius-sm);border:1px solid var(--panel-border);width:100%;min-height:40px;color:var(--text);font-size:.9rem;font-weight:600;font-family:var(--font-ui);cursor:pointer;background:#fff;padding:0 32px 0 12px}.dashboard-summary-bar-chevron{pointer-events:none;color:var(--muted);font-size:10px;font-weight:800;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.dashboard-summary-bar-badge{color:var(--danger);border-radius:var(--radius-sm);font-size:.78rem;font-weight:700;font-family:var(--font-ui);white-space:nowrap;background:#d9481e1a;border:1px solid #d9481e40;padding:7px 12px;text-decoration:none}.dashboard-summary-bar-badge:hover{background:#d9481e29;text-decoration:none}.dashboard-summary-bar-badge-your-move{color:#2f5d3a;background:#2e8b571f;border-color:#2e8b5747}.dashboard-summary-bar-badge-your-move:hover{background:#2e8b572e}.dashboard-page-stack,.dashboard-workspace{gap:10px;display:grid}.dashboard-workspace-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-activity-page-header{align-items:flex-start}.dashboard-activity-page-title{gap:6px;min-width:0;display:grid}.dashboard-activity-page-title .prac-breadcrumbs{margin:0}.dashboard-activity-page-title h1{font-size:clamp(1.25rem,2.2vw,1.65rem);line-height:1.2;font-family:var(--font-display,var(--font-ui));color:var(--text-heading);margin:0}.dashboard-activity-page-sub{color:var(--muted);font-size:.85rem;font-family:var(--font-ui);margin:0;font-weight:600}.dashboard-workspace-title{flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0;display:flex}.dashboard-workspace-title h1{font-size:clamp(1.25rem,2.2vw,1.65rem);line-height:1.2;font-family:var(--font-display,var(--font-ui));color:var(--text-heading);margin:0}.dashboard-workspace-meta{color:var(--muted);font-size:.8rem;font-family:var(--font-ui);font-weight:600}.dashboard-workspace-quiet-link{font-size:.8rem;font-weight:700;font-family:var(--font-ui);color:var(--primary);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin:0;padding:0;text-decoration:underline}.dashboard-workspace-quiet-link:hover{color:var(--primary-strong,var(--primary))}.dashboard-control-bar{z-index:2;flex-wrap:wrap;align-items:center;gap:8px;display:flex;position:relative}.dashboard-control-search{flex:220px;min-width:160px;max-width:480px}.dashboard-control-search .dashboard-list-search.is-compact{width:100%;max-width:none}.dashboard-control-filters{flex:none;align-self:center;position:relative}.dashboard-control-filters .patients-toolbar-compact{margin-bottom:0}.dashboard-view-panels{min-width:0}.dashboard-view-panel-inner.panel{margin:0}.panel-header-compact{margin-bottom:10px}.panel-header-compact h2{font-size:1.05rem}.attention-queue{border:1px solid var(--panel-border);border-radius:var(--radius-sm);background:#fff;margin-bottom:0;overflow:hidden}.attention-queue-toggle{width:100%;min-height:36px;color:var(--text);font-family:var(--font-ui);cursor:pointer;text-align:left;background:#d9481e0f;border:none;align-items:center;gap:8px;padding:6px 12px;display:flex}.attention-queue-toggle-label{font-size:.82rem;font-weight:700}.attention-queue-toggle-count{border-radius:var(--radius-pill);background:var(--danger);color:#fff;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.7rem;font-weight:700;display:inline-flex}.attention-queue-toggle-hint{color:var(--muted);font-size:.72rem;font-weight:600}.attention-queue-toggle-chevron{color:var(--muted);margin-left:auto;font-size:.65rem}.attention-queue.is-open .attention-queue-toggle{border-bottom:1px solid var(--panel-border)}.attention-list{gap:0;max-height:220px;margin:0;padding:0 10px;list-style:none;display:grid;overflow-y:auto}.attention-row{border-bottom:1px solid var(--panel-border);color:inherit;transition:background var(--transition-fast);grid-template-columns:minmax(0,1.4fr) auto minmax(0,1.2fr) auto;align-items:center;gap:10px;padding:8px 2px;text-decoration:none;display:grid}.attention-row:last-child{border-bottom:none}.attention-row:hover{background:#2e8b570f;text-decoration:none}.attention-row-name{color:var(--text);font-size:.92rem;font-weight:700;font-family:var(--font-ui)}.attention-row:hover .attention-row-name{color:var(--primary)}.attention-row-meta{color:var(--muted);margin-top:2px;font-size:.78rem}.attention-chip{border-radius:var(--radius-sm);font-size:.7rem;font-weight:700;font-family:var(--font-ui);white-space:nowrap;align-items:center;padding:3px 8px;display:inline-flex}.attention-chip-stalled,.attention-chip-overdue{color:var(--danger);background:#d9481e1f}.attention-chip-blocked{color:#9a6b00;background:#daa52029}.attention-chip-no_cycle{color:var(--info);background:#4169e11f}.attention-chip-due_soon{color:#9a6b00;background:#daa52024}.attention-row-step{color:var(--text);font-size:.82rem;font-family:var(--font-ui);min-width:0}.attention-row-due{color:var(--muted);font-size:.78rem;font-family:var(--font-ui);white-space:nowrap}.attention-row-due.is-overdue{color:var(--danger);font-weight:700}.dashboard-main-grid{grid-template-columns:minmax(0,1fr) minmax(280px,380px);align-items:start;gap:20px;display:grid}.patients-toolbar-compact{flex-direction:column;align-items:flex-end;margin-bottom:12px;display:flex;position:relative}.patients-toolbar-actions{align-items:center;gap:6px;display:inline-flex}.patients-toolbar-toggle{border-radius:var(--radius-sm);border:1px solid var(--panel-border);min-height:40px;color:var(--text);font-size:.82rem;font-weight:600;font-family:var(--font-ui);cursor:pointer;background:#fff;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.patients-toolbar-your-move{border-radius:var(--radius-sm);color:#2f5d3a;min-height:40px;font-size:.82rem;font-weight:700;font-family:var(--font-ui);cursor:pointer;white-space:nowrap;background:#2e8b571f;border:1px solid #2e8b5747;justify-content:center;align-items:center;padding:0 12px;display:inline-flex}.patients-toolbar-your-move:hover,.patients-toolbar-your-move.is-active{background:#2e8b5733;border-color:#2e8b5766}.patients-toolbar-clear{border-radius:var(--radius-sm);min-height:40px;color:var(--muted);font-size:.82rem;font-weight:600;font-family:var(--font-ui);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 12px;display:inline-flex}.patients-toolbar-clear:hover{color:var(--text);background:var(--bg-sage,#f4f7f5)}.patients-toolbar-clear.is-panel{border:1px solid var(--panel-border);width:100%;min-height:36px;color:var(--text);background:#fff}.patients-toolbar-clear.is-panel:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.patients-toolbar-panel-footer{border-top:1px solid var(--panel-border);grid-column:1/-1;padding-top:4px}.patients-toolbar-toggle.is-open{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.patients-toolbar-toggle-count{border-radius:var(--radius-pill);background:var(--primary);color:#fff;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.7rem;font-weight:700;display:inline-flex}.patients-toolbar-toggle-chevron{opacity:.7;margin-left:4px;font-size:.65rem}.patients-toolbar-panel{z-index:30;border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:#fff;grid-template-columns:repeat(3,minmax(140px,180px));gap:12px;min-width:min(100vw - 32px,520px);margin-top:0;padding:12px 14px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 28px #0f172a1f}.patients-toolbar-field{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700;font-family:var(--font-ui);gap:4px;display:grid}.patients-toolbar-select{appearance:none;border-radius:var(--radius-sm);border:1px solid var(--panel-border);width:100%;height:40px;min-height:40px;color:var(--text);font-size:.88rem;font-weight:600;font-family:var(--font-ui);cursor:pointer;background:#fff;padding:0 12px}.patients-table-wrap{overflow-x:auto}.patients-table{border-collapse:collapse;width:100%;min-width:640px}.patients-table th,.patients-table td{text-align:left;border-bottom:1px solid var(--panel-border);vertical-align:middle;font-family:var(--font-ui);padding:10px 8px}.patients-table th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:700}.patients-table tbody tr.patients-table-row{cursor:pointer;transition:background-color var(--transition-fast), box-shadow var(--transition-fast);border-left:3px solid #0000}.patients-table tbody tr.patients-table-row:nth-child(odd){background:#2e8b5709}.patients-table tbody tr.patients-table-row:nth-child(2n){background:#fff}.patients-table tbody tr.patients-table-row:hover{border-left-color:var(--primary);background:#2e8b571a}.patients-table tbody tr.patients-table-row.is-overdue-row{border-left-color:var(--danger);background:#d9481e0a}.patients-table tbody tr.patients-table-row.is-overdue-row:hover{background:#d9481e14}.patients-table tbody tr.is-inactive{opacity:.55}.patients-table tbody tr.is-pending-intake{opacity:.78;background:#faf8f5}.patients-table tbody tr.is-pending-intake:hover{opacity:1;background:#f4f1ea}.patients-table-index-col{width:2.25rem;color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;padding-right:4px}.patients-table th.patients-table-index-col{text-align:right}.patients-table-index{min-width:1.25rem;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700;display:inline-block}.patients-table-identity{align-items:center;gap:8px;min-width:0;display:flex}.patients-table-avatar{letter-spacing:.02em;width:32px;height:32px;font-size:.72rem;font-weight:800;font-family:var(--font-ui);border-radius:9px;flex:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.patients-table-avatar.tone-wood{color:#1f6b42;background:#2e8b5729;border:1px solid #2e8b5747}.patients-table-avatar.tone-earth{color:#8a6a00;background:#daa5202e;border:1px solid #daa52059}.patients-table-avatar.tone-water{color:#2f4fbf;background:#4169e124;border:1px solid #4169e147}.patients-table-avatar.tone-metal{color:#455a64;background:#7788992e;border:1px solid #77889959}.patients-table-avatar.tone-sage{background:var(--bg-sage);color:var(--primary);border:1px solid var(--panel-border-strong)}.patients-table-identity-text{min-width:0}.patients-table-name{color:var(--text-heading);font-size:.95rem;font-weight:700;text-decoration:none}.patients-table tbody tr:hover .patients-table-name{color:var(--primary)}.patients-table-cycle,.patients-table-step,.patients-table-updated,.patients-table-activity,.patients-table-waiting{color:var(--text);font-size:.9rem}.patients-table-type{color:#5c564e;white-space:nowrap;font-size:.88rem;font-weight:600}.patients-table-waiting{white-space:nowrap;font-weight:600}.patients-table-waiting.is-waiting-you{color:var(--primary)}.patients-table-activity{color:var(--muted);white-space:nowrap}.patients-table-cycle-chip{border-radius:var(--radius-sm);color:var(--primary);font-size:.8rem;font-weight:700;font-family:var(--font-ui);white-space:nowrap;background:#2e8b571a;border:1px solid #2e8b5738;align-items:center;padding:3px 8px;display:inline-flex}.patients-table-due{color:var(--muted);white-space:nowrap;font-size:.9rem}@media (min-width:1100px){.patients-table th,.patients-table td{padding:12px 10px}.patients-table-avatar{border-radius:10px;width:36px;height:36px;font-size:.78rem}.patients-table-name{font-size:1.05rem}.patients-table-type{font-size:.92rem}.patients-table-cycle,.patients-table-step,.patients-table-updated,.patients-table-activity,.patients-table-waiting,.patients-table-type,.patients-table-due{font-size:.95rem}.patients-table-cycle-chip{padding:4px 9px;font-size:.85rem}}.patients-table-due.is-overdue{color:var(--danger);font-weight:700}.patients-table-inactive{border-radius:var(--radius-sm);color:#7f1d1d;vertical-align:middle;background:#fef2f2;border:1px solid #fecaca;margin-left:6px;padding:1px 6px;font-size:.65rem;font-weight:700;display:inline-block}.patients-table-pending-intake{border-radius:var(--radius-sm);color:#92400e;vertical-align:middle;background:#fffbeb;border:1px solid #fde68a;margin-left:6px;padding:1px 6px;font-size:.65rem;font-weight:700;display:inline-block}.patients-table-your-move{border-radius:var(--radius-sm);letter-spacing:.02em;color:#1f4d2e;vertical-align:middle;font-size:.72rem;font-weight:800;font-family:var(--font-ui);background:#2e8b5738;border:1px solid #2e8b5773;margin-left:8px;padding:2px 8px;display:inline-block}.patients-table-step.is-your-move-step{color:var(--text-heading);font-weight:700}.patients-table tbody tr.patients-table-row.is-your-move{border-left-color:var(--primary);background:#2e8b571c}.patients-table tbody tr.patients-table-row.is-your-move:hover{border-left-color:var(--primary);background:#2e8b572b}.activity-panel-secondary .panel-header-compact{justify-content:flex-end}.activity-list-compact{gap:0;margin:0;padding:0;list-style:none;display:grid}.activity-list-compact li{border-bottom:1px solid var(--panel-border);gap:2px;padding:10px 0;display:grid}.activity-list-compact li:last-child{border-bottom:none}.activity-list-compact .activity-name{font-size:.85rem;font-weight:700}.activity-list-compact .activity-name a:hover{color:var(--primary)}.activity-list-compact .activity-change{color:var(--text);font-size:.8rem;line-height:1.4}.activity-list-compact .activity-meta{color:var(--muted);font-size:.72rem}.dashboard-owner-tabs{flex-wrap:wrap;gap:4px;margin-bottom:0;display:flex}.dashboard-owner-tab{border-radius:var(--radius-sm);border:1px solid var(--panel-border);color:var(--muted);font-size:.78rem;font-weight:700;font-family:var(--font-ui);transition:border-color var(--transition-fast), background var(--transition-fast), color var(--transition-fast);background:#fff;align-items:center;gap:6px;padding:5px 10px;text-decoration:none;display:inline-flex}.dashboard-owner-tab:hover{border-color:var(--panel-border-strong);background:var(--bg-sage);color:var(--primary);text-decoration:none}.dashboard-owner-tab.is-active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.dashboard-owner-tab-count{text-align:center;border-radius:var(--radius-pill);background:var(--bg-sage);min-width:18px;color:var(--muted);padding:1px 6px;font-size:.68rem;font-weight:700}.dashboard-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.dashboard-pagination-simple{color:var(--muted);font-size:.72rem;font-family:var(--font-ui)}.dashboard-pagination-range,.dashboard-pagination-page{color:var(--muted);font-size:.72rem;font-family:var(--font-ui);font-weight:600}.dashboard-pagination-controls{align-items:center;gap:6px;display:flex}.dashboard-pagination-link{border:1px solid var(--panel-border);color:var(--primary);font-size:.72rem;font-weight:700;font-family:var(--font-ui);background:#fff;border-radius:6px;padding:4px 8px;text-decoration:none}.dashboard-pagination-link.is-disabled{color:#94a3b8;pointer-events:none;background:#f8fafc}@media (max-width:1280px){.patients-table .patients-table-col-updated{display:none}}.dashboard-owner-tab.is-active .dashboard-owner-tab-count{color:var(--primary);background:#2e8b572e}@media (min-width:1400px){.dashboard-main-grid{grid-template-columns:minmax(0,1fr) minmax(320px,420px)}}@media (max-width:1100px){.dashboard-main-grid{grid-template-columns:1fr}.dashboard.command-center .panel-header{flex-wrap:wrap;align-items:flex-start;gap:12px}.dashboard.command-center .panel-header>div:first-child{flex:auto}}@media (max-width:768px){.dashboard.command-center .panel-header,.dashboard.command-center .panel-header-patients{flex-direction:column;align-items:stretch;gap:10px}.dashboard.command-center .panel-header>div:first-child{flex:none;width:100%}.dashboard-list-search.is-compact{flex:none;width:100%;min-width:0;max-width:none}.dashboard-summary-bar-select-wrap{flex:160px}.dashboard-control-bar{gap:8px}.dashboard-control-search{flex:100%;max-width:none}.dashboard-control-filters{flex:none;margin-left:auto}.patients-toolbar-compact{align-items:stretch;width:auto}.patients-toolbar-toggle{width:auto;min-width:96px}.patients-toolbar-toggle-chevron{margin-left:auto}.patients-toolbar-panel{grid-template-columns:1fr;width:min(100vw - 32px,320px);min-width:min(100vw - 32px,320px);left:auto;right:0}.patients-toolbar-select{font-size:16px}.attention-queue-toggle-hint{display:none}.dashboard-workspace-header .new-patient-action{min-height:36px;padding:8px 12px;font-size:.82rem}}@media (max-width:900px){.dashboard-header.dashboard-header-compact{flex-flow:row;align-items:center;gap:10px}.dashboard-header.dashboard-header-compact>div:first-child{flex:auto;min-width:0}.dashboard-header-actions-wrap{flex-shrink:0;width:auto}.dashboard-header-actions{justify-content:flex-end;width:auto}.new-patient-action{flex:none;min-width:0;min-height:40px;padding:10px 14px}.dashboard-header-compact .subheading{display:none}}@media (max-width:720px){.dashboard.command-center{padding:16px 14px 28px}.dashboard-header-compact h1{font-size:clamp(1.35rem,6vw,1.75rem)}.dashboard-header-compact .subheading{font-size:.85rem}.attention-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:12px 2px}.attention-row-step,.attention-row-due{grid-column:1/-1}.attention-row-step{font-size:.8rem}.dashboard.command-center .panel-header{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:12px}.dashboard.command-center .panel-header>div:first-child{flex:none;width:100%}.dashboard-list-search.is-compact{flex:none;width:100%;min-width:0;max-width:none}.dashboard-owner-tabs{gap:6px}.dashboard-owner-tab{flex:calc(50% - 4px);justify-content:center;padding:6px 10px;font-size:.75rem}.patients-table-wrap{margin:0 -2px;overflow:visible}.patients-table{border-collapse:separate;border-spacing:0 8px;min-width:0}.patients-table thead{display:none}.patients-table tbody,.patients-table tr,.patients-table td{width:100%;display:block}.patients-table tbody tr.patients-table-row{border:1px solid var(--panel-border);border-left:3px solid var(--primary);border-radius:var(--radius-sm);padding:10px 12px;box-shadow:0 1px 4px #1a2e1a0a}.patients-table tbody tr.patients-table-row:nth-child(odd){background:#2e8b570d}.patients-table tbody tr.patients-table-row:hover{border-color:var(--panel-border-strong);border-left-color:var(--primary);background:#2e8b571a}.patients-table tbody tr.patients-table-row.is-your-move{border-left-width:4px;border-left-color:var(--primary);background:#2e8b5721}.patients-table tbody tr.patients-table-row.is-your-move:hover{background:#2e8b572e}.patients-table th,.patients-table td{border-bottom:none;padding:4px 0}.patients-table td{grid-template-columns:88px minmax(0,1fr);align-items:baseline;gap:8px;display:grid}.patients-table td[data-label=Patient]{border-bottom:1px solid var(--panel-border);margin-bottom:4px;padding-bottom:8px;display:block}.patients-table td.patients-table-index-col{text-align:left;padding:0 0 6px;display:block}.patients-table td.patients-table-index-col:before{content:none}.patients-table td:not([data-label=Patient]):not(.patients-table-index-col):before{content:attr(data-label);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700;font-family:var(--font-ui)}.patients-table-name{font-size:.95rem}.activity-list-compact li{padding:12px 0}}@media (max-width:480px){.dashboard.command-center{padding:14px 12px 24px}.dashboard-owner-tab{flex:100%}.patients-table td{grid-template-columns:72px minmax(0,1fr)}.attention-queue .panel-header h2{font-size:1.15rem}.dashboard-list-search-field input,.dashboard-summary-bar-select,.patients-toolbar-select{font-size:16px}}.dashboard.messages-inbox{width:100%;max-width:min(var(--content-app,1408px), 100%);box-sizing:border-box;margin:0 auto;padding:20px 20px 40px}.messages-inbox-stack{gap:16px;max-width:720px;margin:0 auto}.messages-inbox-toolbar{flex-direction:column;gap:10px;display:flex}.messages-inbox-search{display:block;position:relative}.messages-inbox-search .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.messages-inbox-search-input{box-sizing:border-box;border:1px solid var(--panel-border,#e2e8f0);border-radius:var(--radius-sm,8px);width:100%;font-family:var(--font-ui);color:var(--text,#1e293b);background:#fff;outline:none;padding:11px 72px 11px 14px;font-size:.92rem;transition:border-color .12s,box-shadow .12s}.messages-inbox-search-input::placeholder{color:var(--muted-soft,#94a3b8)}.messages-inbox-search-input:focus{border-color:#2e8b578c;box-shadow:0 0 0 3px #2e8b571f}.messages-inbox-search-clear{color:var(--muted,#64748b);font-family:var(--font-ui);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:.78rem;font-weight:700;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.messages-inbox-search-clear:hover{color:var(--text,#1e293b);background:#0f172a0d}.messages-inbox-more{border-top:1px solid var(--panel-border,#e2e8f0);background:#f8fafcb3;justify-content:center;padding:14px 16px 16px;display:flex}.messages-inbox-more-btn{appearance:none;border:1px solid var(--panel-border,#e2e8f0);color:var(--text-heading,#1e293b);font-family:var(--font-ui);border-radius:var(--radius-sm,8px);cursor:pointer;background:#fff;padding:10px 16px;font-size:.85rem;font-weight:700;transition:background .12s,border-color .12s}.messages-inbox-more-btn:hover:not(:disabled){background:#2e8b570f;border-color:#2e8b5759}.messages-inbox-more-btn:disabled{opacity:.7;cursor:not-allowed}.messages-inbox-unread-tally{color:var(--danger,#d9481e);font-weight:700}.messages-inbox-filter{border-radius:var(--radius-sm,8px);border:1px solid var(--panel-border,#e2e8f0);background:#ffffffd9;flex-shrink:0;align-items:stretch;gap:2px;padding:3px;display:inline-flex}.messages-inbox-filter-btn{appearance:none;color:var(--muted,#64748b);font-family:var(--font-ui);border-radius:calc(var(--radius-sm,8px) - 2px);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:700;line-height:1;transition:background .15s,color .15s;display:inline-flex}.messages-inbox-filter-btn:hover{color:var(--text,#1e293b);background:#2e8b570f}.messages-inbox-filter-btn.is-active{color:var(--text-heading,#1e293b);background:#fff;box-shadow:0 1px 2px #0f172a14}.messages-inbox-filter-count{border-radius:var(--radius-pill,999px);background:var(--danger,#d9481e);color:#fff;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.68rem;font-weight:700;display:inline-flex}.messages-inbox-panel{border:1px solid var(--panel-border,#e2e8f0);border-radius:var(--radius,12px);background:#fff;min-height:200px;overflow:hidden}.messages-inbox-status{text-align:center;color:var(--muted,#64748b);font-family:var(--font-ui);margin:0;padding:28px 20px;font-size:.92rem;font-weight:600}.messages-inbox-status.is-error{color:var(--danger,#b91c1c)}.messages-inbox-empty{text-align:center;justify-items:center;gap:8px;padding:40px 24px;display:grid}.messages-inbox-empty-title{font-family:var(--font-display,var(--font-ui));color:var(--text-heading,#1e293b);margin:0;font-size:1.1rem;font-weight:700}.messages-inbox-empty-body{max-width:36ch;font-family:var(--font-ui);color:var(--muted,#64748b);margin:0;font-size:.9rem;line-height:1.5}.messages-inbox-empty-action{font-family:var(--font-ui);color:var(--primary,#2e8b57);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin-top:8px;padding:0;font-size:.85rem;font-weight:700;text-decoration:underline}.messages-inbox-empty-action:hover{color:var(--primary-strong,#246b43)}.messages-inbox-list{margin:0;padding:0;list-style:none}.messages-inbox-row{color:inherit;border-bottom:1px solid var(--panel-border,#e2e8f0);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;transition:background .12s;display:grid}.messages-inbox-list li:last-child .messages-inbox-row{border-bottom:none}.messages-inbox-row:hover{background:#2e8b570d;text-decoration:none}.messages-inbox-row.is-unread{background:#2e8b5712}.messages-inbox-row.is-unread:hover{background:#2e8b571c}.messages-inbox-avatar{background:var(--bg-sage,#eef5f0);color:#2f5d3a;width:42px;height:42px;font-family:var(--font-ui);letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;font-weight:800;display:inline-flex}.messages-inbox-avatar.is-unread{background:#2e8b572e;box-shadow:inset 0 0 0 2px #2e8b5759}.messages-inbox-body{gap:3px;min-width:0;display:grid}.messages-inbox-row-top{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.messages-inbox-name{font-family:var(--font-ui);color:var(--text-heading,#1e293b);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;overflow:hidden}.messages-inbox-row.is-unread .messages-inbox-name{font-weight:800}.messages-inbox-when{font-family:var(--font-ui);color:var(--muted-soft,#94a3b8);white-space:nowrap;flex-shrink:0;font-size:.75rem;font-weight:600}.messages-inbox-row-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.messages-inbox-chip{font-family:var(--font-ui);letter-spacing:.03em;text-transform:uppercase;color:#8a4b12;background:#d977061f;border:1px solid #d9770647;border-radius:4px;align-items:center;padding:2px 6px;font-size:.68rem;font-weight:800;display:inline-flex}.messages-inbox-who{font-family:var(--font-ui);color:var(--muted,#64748b);font-size:.72rem;font-weight:700}.messages-inbox-preview{font-family:var(--font-ui);color:var(--muted,#64748b);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;line-height:1.4;overflow:hidden}.messages-inbox-row.is-unread .messages-inbox-preview{color:var(--text,#334155);font-weight:600}.messages-inbox-preview.is-muted{font-style:italic;font-weight:500}.messages-inbox-chevron{color:var(--muted-soft,#94a3b8);opacity:.55;font-size:.95rem;font-weight:600;transition:opacity .12s,transform .12s}.messages-inbox-row:hover .messages-inbox-chevron{opacity:1;color:var(--primary,#2e8b57);transform:translate(2px)}@media (max-width:560px){.dashboard.messages-inbox{padding:14px 12px 28px}.messages-inbox-row{gap:10px;padding:12px}.messages-inbox-avatar{width:38px;height:38px}.messages-inbox-chevron{display:none}}.patient-detail{max-width:min(var(--content-app,1408px), 100%);padding:16px var(--page-gutter) 40px;box-sizing:border-box;width:100%;margin:0 auto;overflow:visible}.patient-detail-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.patient-detail-top .breadcrumbs{margin:0}.patient-detail-top-actions{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.patient-portal-link,.patient-activity-trigger{border-radius:var(--radius-sm);border:1px solid var(--panel-border);color:var(--text);box-shadow:var(--shadow);white-space:nowrap;font-size:.9rem;font-weight:600;font-family:var(--font-ui);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast), color var(--transition-fast);background:#fff;align-items:center;gap:.4rem;padding:7px 14px;text-decoration:none;display:inline-flex}.patient-portal-link:hover,.patient-activity-trigger:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);text-decoration:none}.patient-summary-main{top:var(--patient-summary-sticky-top,var(--prac-nav-sticky-height,3.5rem));z-index:90;border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);background:#fffffff7;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"identity cycle toggle""secondary secondary secondary";align-items:center;gap:8px 12px;margin-bottom:12px;padding:12px 16px;display:grid;position:sticky}.patient-detail:has(.patient-summary-details) .patient-summary-main{border-bottom-color:#0000;border-bottom-right-radius:0;border-bottom-left-radius:0;margin-bottom:0;box-shadow:0 1px #0f172a0a}.patient-summary-identity{grid-area:identity;min-width:0}.patient-summary-title-row{flex-wrap:wrap;align-items:center;gap:8px 10px;min-width:0;display:flex}.patient-summary-name{min-width:0;color:var(--text-heading);font-size:clamp(1.35rem,2.2vw,1.65rem);font-weight:700;font-family:var(--font-brand);letter-spacing:-.02em;margin:0;line-height:1.2}.patient-summary-contact{flex-wrap:wrap;flex:auto;align-items:center;gap:6px;min-width:0;display:flex}.patient-info-chip.patient-summary-chip-mobile-only,.patient-summary-empty-chips.patient-summary-chip-mobile-only{display:none}.patient-summary-chip-status-active{background:var(--primary-soft);color:var(--primary);border-color:#236b4359}.patient-summary-chip-status-inactive{color:#52525b;background:#f4f4f5;border-color:#d4d4d8}.patient-summary-chip-status-archived{color:#92400e;background:#fef3c7;border-color:#fcd34d}.patient-summary-awaiting{margin:4px 0 0}.patient-pending-intake-banner{border-radius:var(--radius-sm);background:#fffbeb;border:1px solid #fde68a;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;margin:0 16px 12px;padding:12px 14px;display:flex}.patient-pending-intake-banner-copy{flex:220px;min-width:0}.patient-pending-intake-status{border-radius:var(--radius-sm);letter-spacing:.02em;color:#92400e;font-size:.7rem;font-weight:700;font-family:var(--font-ui);background:#fef3c7;border:1px solid #fcd34d;margin-bottom:4px;padding:2px 8px;display:inline-block}.patient-pending-intake-meta{color:#78350f;font-size:.88rem;line-height:1.4;font-family:var(--font-ui);margin:0}.patient-pending-intake-message{color:#92400e;font-size:.85rem;font-weight:600;font-family:var(--font-ui);margin:6px 0 0}.patient-pending-intake-lock{color:#9a3412;font-size:.85rem;font-weight:600;line-height:1.4;font-family:var(--font-ui);margin:8px 0 0}.patient-pending-intake-lock a{color:#9a3412;font-weight:700;text-decoration:underline}.patient-pending-intake-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.patient-pending-intake-btn{min-height:34px;font-family:var(--font-ui);cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:7px 13px;font-size:.82rem;font-weight:700;line-height:1.2;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:inline-flex}.patient-pending-intake-btn:disabled{opacity:.55;cursor:not-allowed}.patient-pending-intake-btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.patient-pending-intake-btn-primary:hover:not(:disabled){filter:brightness(1.05)}.patient-pending-intake-btn-secondary{color:#78350f;background:#fff;border-color:#e7d7a8}.patient-pending-intake-btn-secondary:hover:not(:disabled){background:#fff8eb;border-color:#d6b86a}.patient-pending-intake-btn-danger{color:#9a3412;background:0 0;border-color:#f1c0b0}.patient-pending-intake-btn-danger:hover:not(:disabled){background:#fff1ec;border-color:#e8a48e}.patient-summary-cycle-select{grid-area:cycle;justify-self:start;align-items:center;gap:8px;min-width:0;max-width:100%;display:inline-flex;position:relative}.patient-summary-cycle-select-label{letter-spacing:.06em;text-transform:uppercase;color:#8a8278;font-size:.72rem;font-weight:700;font-family:var(--font-ui,system-ui, sans-serif);flex-shrink:0}.patient-summary-cycle-native{appearance:none;color:#1f3d2c;min-width:10.5rem;max-width:min(100%,18rem);font-family:var(--font-ui,system-ui, sans-serif);cursor:pointer;background-color:#faf8f4;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236e675f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:12px 8px;border:1px solid #e2ddd4;border-radius:8px;margin:0;padding:7px 32px 7px 12px;font-size:.88rem;font-weight:650;line-height:1.2;transition:border-color .15s,background-color .15s,box-shadow .15s}.patient-summary-cycle-native:hover{background-color:#fff;border-color:#c9c2b8}.patient-summary-cycle-native:focus{background-color:#fff;border-color:#2e8b578c;outline:none;box-shadow:0 0 0 3px #2e8b5724}.patient-summary-cycle{color:var(--primary);background:var(--primary-soft);border:1px solid var(--panel-border-strong);border-radius:var(--radius-sm);font-size:.88rem;font-weight:700;font-family:var(--font-ui);white-space:nowrap;grid-area:cycle;padding:4px 11px}.patient-summary-actions-cluster{flex-wrap:wrap;grid-area:toggle;justify-self:end;align-items:center;gap:8px;max-width:100%;display:inline-flex}.patient-summary-messages-btn{color:var(--text-heading);border-radius:var(--radius-sm);border:1px solid var(--panel-border);white-space:nowrap;cursor:pointer;font-size:.9rem;font-weight:600;font-family:var(--font-ui);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:#fff;align-items:center;padding:7px 14px;display:inline-flex}.patient-summary-messages-btn:hover{color:var(--primary-hover,var(--primary));background:#2e8b5714;border-color:#236b4366}.patient-summary-toggle{justify-self:end}.patient-summary-secondary{grid-area:secondary;min-width:0}.patient-summary-secondary.is-mobile-only-chips{display:none}.patient-summary-chips{flex-wrap:wrap;gap:6px;display:flex}.patient-info-chip{border-radius:var(--radius-sm);background:var(--bg-sage);border:1px solid var(--panel-border);color:var(--text);font-size:.88rem;line-height:1.35;font-family:var(--font-ui);align-items:center;gap:6px;padding:5px 10px;display:inline-flex}.patient-info-chip-label{color:var(--muted);font-size:.8rem;font-weight:700}.patient-summary-meta{color:var(--muted);font-size:.88rem;line-height:1.45;font-family:var(--font-ui);margin:8px 0 0}.patient-summary-empty-chips{color:var(--muted-soft);font-size:.88rem;font-family:var(--font-ui)}.patient-summary-toggle{color:var(--primary-hover);border-radius:var(--radius-sm);white-space:nowrap;cursor:pointer;font-size:.9rem;font-weight:600;font-family:var(--font-ui);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);background:#eef6f1;border:1px solid #236b4373;align-items:center;gap:8px;padding:7px 14px;display:inline-flex}.patient-summary-toggle:hover{border-color:var(--primary-hover);color:var(--primary-hover);background:#e2f0e8}.patient-summary-toggle.is-open{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 1px #1a2e1a0f}.patient-summary-toggle-chevron{opacity:.85;width:.45rem;height:.45rem;transition:transform var(--transition-fast);border-bottom:2px solid;border-right:2px solid;display:inline-block;transform:rotate(45deg)translateY(-1px)}.patient-summary-toggle.is-open .patient-summary-toggle-chevron{transform:rotate(225deg)translateY(1px)}.patient-summary-details{border:1px solid var(--panel-border);border-top:1px solid var(--panel-border);border-radius:0 0 var(--radius) var(--radius);background:linear-gradient(180deg, #f7fbf8 0%, var(--bg-sage) 100%);box-shadow:var(--shadow);margin-bottom:12px;padding:16px 18px 18px;animation:.16s patient-summary-details-in}@keyframes patient-summary-details-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.patient-summary-details-title{color:var(--text-heading);font-size:1.05rem;font-weight:700;font-family:var(--font-ui);letter-spacing:-.015em;margin:0}.patient-summary-details-toolbar{border-bottom:1px solid #2e8b5729;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:12px;display:flex}.patient-summary-edit-btn{border-radius:var(--radius-sm);min-height:34px;color:var(--primary-hover);font-family:var(--font-ui);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:#eef6f1;border:1px solid #236b4373;justify-content:center;align-items:center;padding:7px 14px;font-size:.85rem;font-weight:700;display:inline-flex}.patient-summary-edit-btn:hover{border-color:var(--primary-hover);background:#e2f0e8}.patient-summary-edit-form{margin:0}.patient-summary-fieldset{border:none;min-width:0;margin:0;padding:0}.patient-summary-fieldset:disabled{opacity:.65}.patient-detail-section{border-bottom:1px solid #2e8b571f;margin:0 0 14px;padding:0 0 14px}.patient-detail-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.patient-detail-section-title{letter-spacing:-.01em;text-transform:none;color:var(--text-heading);font-size:.95rem;font-weight:700;font-family:var(--font-ui);border-bottom:none;align-items:center;gap:10px;margin:0 0 14px;padding:0;line-height:1.25;display:flex}.patient-detail-section-title:before{content:"";background:var(--primary);border-radius:2px;flex-shrink:0;width:3px;height:1.05em}.patient-summary-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin:0;padding-left:13px;display:grid}.patient-detail-field{background:0 0;border:none;gap:5px;min-width:0;margin:0;padding:0;display:grid}.patient-detail-field.is-wide{grid-column:1/-1}.patient-detail-field-label{letter-spacing:.03em;text-transform:uppercase;color:var(--muted-soft,var(--muted));font-size:.72rem;font-weight:600;font-family:var(--font-ui);margin:0;line-height:1.2;display:block}.patient-detail-field-label.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.patient-detail-input{width:100%;font-size:.95rem;font-weight:600;font-family:var(--font-ui);color:var(--text-heading);border:1px solid var(--panel-border-strong);box-sizing:border-box;background:#fff;border-radius:6px;margin:0;padding:8px 10px}.patient-detail-input:focus{border-color:var(--primary);box-shadow:var(--shadow-focus);outline:none}.patient-detail-textarea{resize:vertical;min-height:96px;font-weight:500;line-height:1.45}.patient-detail-field-hint{color:var(--muted-soft);font-size:.82rem;font-family:var(--font-ui);line-height:1.35}.patient-summary-read{margin:0}.patient-detail-read-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:0;padding-left:13px;display:grid}.patient-detail-row{gap:3px;min-width:0;margin:0;display:grid}.patient-detail-row.is-wide{grid-column:1/-1}.patient-detail-row-label{letter-spacing:.03em;text-transform:uppercase;color:var(--muted-soft,var(--muted));font-size:.72rem;font-weight:600;font-family:var(--font-ui);line-height:1.2}.patient-detail-row-value{color:var(--text-heading);font-size:.95rem;font-weight:600;font-family:var(--font-ui);word-break:break-word;margin:0;line-height:1.4}.patient-detail-row-value.is-empty{color:var(--muted-soft);font-weight:500}.patient-summary-notes{border-left:3px solid var(--primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#ffffffb8;margin-left:13px;padding:12px 14px}.patient-summary-notes-body{color:var(--text-heading);font-size:.95rem;font-weight:500;line-height:1.5;font-family:var(--font-ui);white-space:pre-wrap;margin:0 0 6px}.patient-summary-notes-body.is-empty{color:var(--muted-soft)}.patient-summary-actions{border-top:1px solid #2e8b571f;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:18px;padding-top:16px;display:flex}.patient-summary-actions.is-sticky{z-index:2;background:linear-gradient(#f7fbf800 0%,#f3f8f4 28% 100%);margin-left:-4px;margin-right:-4px;padding:12px 4px 4px;position:sticky;bottom:0}.patient-summary-actions .patient-summary-action-btn{min-width:112px;min-height:44px;padding:12px 20px;font-size:.92rem}.patient-summary-actions .secondary-action:disabled,.patient-summary-actions .primary-action:disabled{opacity:.55;cursor:not-allowed;filter:none;transform:none}.patient-summary-save-message{font-size:.9rem;font-weight:600;font-family:var(--font-ui);margin:0 auto 0 0}.patient-summary-save-message-inline{margin:4px 0 14px}.patient-summary-save-message.is-success{color:var(--primary)}.patient-summary-save-message.is-error{color:var(--danger)}.patient-summary-save-message.is-dirty{color:#92400e}.patient-summary-billing-note{color:#92400e;text-align:right;font-size:.9rem;line-height:1.45;font-family:var(--font-ui);flex:220px;margin:0}.patient-summary-billing-note-inline{text-align:right;flex:auto;font-size:.85rem}.patient-summary-billing-note a{color:#92400e;font-weight:700;text-decoration:underline}.patient-summary-tools{border-top:1px solid #2e8b5724;gap:12px;margin-top:20px;padding-top:16px;display:grid}.patient-summary-secure-links,.patient-summary-transfer-panel{border-radius:var(--radius-sm);background:#ffffffc7;border:1px solid #236b432e;padding:14px 16px}.patient-summary-tool-title{color:var(--text-heading);font-size:.9rem;font-weight:700;font-family:var(--font-ui);margin:0 0 6px}.patient-summary-tool-copy{color:var(--muted);font-size:.82rem;line-height:1.5;font-family:var(--font-ui);margin:0 0 10px}.patient-summary-tool-meta{color:var(--muted-soft);font-size:.78rem;font-family:var(--font-ui);margin:0 0 12px}.patient-summary-tool-message{font-size:.82rem;font-weight:600;font-family:var(--font-ui);margin:0 0 10px}.patient-summary-tool-message.is-success{color:var(--primary)}.patient-summary-tool-message.is-error{color:var(--danger)}.patient-summary-tool-warning{color:#92400e;font-size:.82rem;font-weight:600;font-family:var(--font-ui);background:#fffbeb;border:1px solid #fde68a;border-radius:6px;margin:0;padding:8px 10px;line-height:1.4}.patient-summary-secure-actions{flex-wrap:wrap;align-items:stretch;gap:10px 8px;margin-top:12px;display:flex}.patient-summary-secure-action{flex-direction:column;flex:11.5rem;gap:6px;min-width:min(100%,11.5rem);display:flex}.patient-summary-secure-actions .patient-summary-action-btn{text-align:center;white-space:nowrap;flex:none;justify-content:center;width:100%;margin:0}.patient-summary-secure-sent{font-family:var(--font-ui);color:var(--text,#334155);flex-direction:column;gap:1px;min-height:2.1em;margin:0;font-size:.75rem;line-height:1.35;display:flex}.patient-summary-secure-sent-label{letter-spacing:.03em;text-transform:uppercase;color:var(--muted,#64748b);font-size:.68rem;font-weight:700}.patient-summary-secure-sent time{color:var(--text-heading,#1e293b);font-weight:600}.patient-summary-secure-sent-empty{font-style:italic;color:var(--muted-soft,#94a3b8)!important;font-weight:500!important}.patient-summary-secure-sent.is-spacer{visibility:hidden;pointer-events:none}@media (min-width:720px){.patient-summary-secure-actions{flex-wrap:nowrap}.patient-summary-secure-action{flex:1 1 0;min-width:0}.patient-summary-secure-actions .patient-summary-action-btn{white-space:normal}}.patient-summary-secure-hint{margin-top:8px}.patient-summary-transfer{min-width:0}.patient-summary-transfer-field{max-width:360px}.patient-summary-transfer-confirm{color:var(--text);font-size:.85rem;line-height:1.45;font-family:var(--font-ui);align-items:flex-start;gap:8px;margin:12px 0 0;display:flex}.patient-summary-transfer-confirm input{flex-shrink:0;margin-top:3px}.patient-summary-transfer-btn{border-radius:var(--radius-sm);color:#9a3412;min-height:40px;font-family:var(--font-ui);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), opacity var(--transition-fast);background:#fff7f3;border:1px solid #9a341259;justify-content:center;align-items:center;margin-top:14px;padding:9px 16px;font-size:.88rem;font-weight:700;display:inline-flex}.patient-summary-transfer-btn:hover:not(:disabled){background:#ffefe8;border-color:#9a34128c}.patient-summary-transfer-btn:disabled{opacity:.5;cursor:not-allowed}.patient-detail-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;margin-top:4px;display:grid}.patient-detail-main{gap:12px;min-width:0;max-width:100%;display:grid}.patient-detail-main>.panel{box-shadow:none;box-sizing:border-box;min-width:0;max-width:100%;overflow-x:clip}.patient-detail-main>.panel>*{min-width:0;max-width:100%}.patient-detail-main>.panel .panel-header{flex-wrap:wrap;padding-bottom:10px}.patient-detail-main>.panel .panel-header>div:first-child{min-width:0}.workflow-cycle-header{border-bottom:1px solid #e8e4dc;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"title view create""subtitle subtitle subtitle";align-items:center;gap:8px 12px;margin:0 0 4px;padding:0 0 12px;display:grid}.workflow-cycle-title-cluster{grid-area:title;align-items:center;gap:8px;min-width:0;display:flex}.workflow-cycle-title{color:#1f3d2c;font-size:1.02rem;font-weight:700;font-family:var(--font-brand);letter-spacing:-.02em;margin:0;line-height:1.25}.workflow-cycle-title-meta{color:#8a8278;font-size:.72rem;font-weight:500;font-family:var(--font-ui);margin-left:6px}.workflow-cycle-create-btn{white-space:nowrap;color:#6e675f;font-family:var(--font-ui,system-ui, sans-serif);letter-spacing:.01em;cursor:pointer;box-shadow:none;background:#faf8f4;border:1px solid #c9c2b8;border-radius:8px;grid-area:create;justify-content:center;place-self:center end;align-items:center;gap:6px;margin:0;padding:8px 14px;font-size:.8rem;font-weight:650;line-height:1.2;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s;display:inline-flex}.workflow-cycle-create-icon{opacity:.9;justify-content:center;align-items:center;width:1.1em;height:1.1em;font-size:1.05em;font-weight:700;line-height:1;display:inline-flex}.workflow-cycle-create-btn.is-ready:not(:disabled){color:#fff;background:linear-gradient(135deg,#2e8b57 0%,#3a9660 100%);border-color:#2e8b5773;font-weight:700;box-shadow:inset 0 1px #ffffff2e,0 6px 14px #2e8b572e}.workflow-cycle-create-btn.is-ready:not(:disabled):hover{color:#fff;background:linear-gradient(135deg,#26784a 0%,#2e8b57 100%);border-color:#1f3d2c59;transform:translateY(-1px);box-shadow:inset 0 1px #fff3,0 10px 18px #2e8b5738}.workflow-cycle-create-btn.is-ready:not(:disabled):active{transform:translateY(0);box-shadow:inset 0 1px #ffffff1f,0 3px 8px #2e8b5729}.workflow-cycle-create-btn:not(.is-ready):not(:disabled):hover{color:#3f3a34;background:#fff;border-color:#b8aea0}.workflow-cycle-create-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;filter:grayscale(.15);transform:none}.workflow-cycle-create-btn.is-ready.is-creating:disabled{opacity:1;cursor:wait;filter:none;color:#fff;background:linear-gradient(135deg,#2e8b57 0%,#3a9660 100%);border-color:#2e8b5773;box-shadow:inset 0 1px #ffffff2e,0 6px 14px #2e8b572e}.workflow-cycle-create-btn.is-strip-cta{grid-area:unset;justify-self:unset;border-radius:10px;min-height:38px;padding:0 16px;font-size:.9rem}.workflow-cycle-subtitle{color:var(--muted);font-size:.88rem;line-height:1.4;font-family:var(--font-ui);grid-area:subtitle;margin:0}.workflow-cycle-subtitle-warning{color:#d97706;font-weight:600}.workflow-cycle-back-link{color:#2563eb;cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;font-family:inherit;font-weight:600;text-decoration:underline}.workflow-cycle-view-row{flex-wrap:nowrap;grid-area:view;justify-content:flex-end;align-items:center;gap:0;margin:0;display:flex}.workflow-cycle-view-toggle{background:#f4f1ea;border:1px solid #e2ddd4;border-radius:8px;align-items:stretch;gap:0;display:inline-flex;overflow:hidden}.workflow-cycle-view-btn{color:#6e675f;font-family:var(--font-ui,system-ui, sans-serif);cursor:pointer;background:0 0;border:none;border-right:1px solid #e2ddd4;padding:5px 11px;font-size:.75rem;font-weight:600;line-height:1.2;transition:background .15s,color .15s,box-shadow .15s}.workflow-cycle-view-btn:last-child{border-right:none}.workflow-cycle-view-btn:hover:not(.is-active){color:var(--primary,#2e8b57);background:#2e8b5714}.workflow-cycle-view-btn.is-active{background:var(--primary,#2e8b57);color:#fff;font-weight:700;box-shadow:inset 0 0 0 1px #1a2e1a1f}.workflow-cycle-view-btn.is-active:hover{background:var(--primary-hover,#246b44);color:#fff}.workflow-cycle-view-meta{color:#8a8278;font-size:.72rem;font-weight:500;font-family:var(--font-ui,system-ui, sans-serif);white-space:nowrap;line-height:1.2}.patient-progress-label-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;min-width:0;display:flex}@media (max-width:900px){.workflow-cycle-header{grid-template-columns:minmax(0,1fr);grid-template-areas:"title""subtitle""view""create";row-gap:8px;min-width:0;max-width:100%;margin-bottom:4px;padding-bottom:12px}.workflow-cycle-title-cluster{width:100%;max-width:100%}.workflow-cycle-title{min-width:0;font-size:.98rem}.workflow-cycle-create-btn{box-sizing:border-box;justify-content:center;justify-self:stretch;width:100%;max-width:100%;min-height:40px;padding:10px 14px;font-size:.88rem}.workflow-cycle-subtitle{overflow-wrap:anywhere;min-width:0;font-size:.82rem}.workflow-cycle-view-row{justify-content:stretch;width:100%;min-width:0;max-width:100%}.workflow-cycle-view-toggle{box-sizing:border-box;width:100%;max-width:100%;display:flex}.workflow-cycle-view-btn{white-space:normal;text-align:center;flex:1 1 0;min-width:0;padding:8px;font-size:.75rem}.workflow-cycle-view-meta{max-width:100%}.patient-progress-label-row{align-items:flex-start}}.patient-activity-backdrop{z-index:110;cursor:pointer;background:#1c242059;border:0;padding:0;position:fixed;inset:0}.patient-activity-drawer{z-index:120;background:var(--panel);border-left:1px solid var(--panel-border);flex-direction:column;width:min(400px,100vw);height:100vh;max-height:100dvh;animation:.2s ease-out patient-activity-slide-in;display:flex;position:fixed;top:0;right:0;box-shadow:-8px 0 28px #1c24201f}@keyframes patient-activity-slide-in{0%{opacity:.85;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.patient-activity-drawer-header{border-bottom:1px solid var(--panel-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.patient-activity-drawer-header h2{font-size:1.15rem;font-family:var(--font-brand);color:var(--text-heading);margin:0}.patient-activity-drawer-close{border-radius:var(--radius-sm);border:1px solid var(--panel-border);width:32px;height:32px;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;font-family:var(--font-ui);background:#fff;justify-content:center;align-items:center;display:inline-flex}.patient-activity-drawer-close:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.patient-activity-drawer-toolbar{border-bottom:1px solid var(--panel-border);flex-shrink:0;justify-content:flex-start;align-items:center;gap:10px;padding:10px 18px;display:flex}.panel-header.activity-panel-header{align-items:center;gap:12px}button.activity-history-btn{appearance:none;color:#3f3a34;min-height:34px;font-family:var(--font-ui,system-ui, sans-serif);letter-spacing:0;white-space:nowrap;cursor:pointer;box-shadow:none;background:#faf8f4;border:1px solid #d7d0c4;border-radius:8px;flex:none;justify-content:center;align-items:center;margin:0;padding:7px 14px;font-size:.82rem;font-weight:600;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}button.activity-history-btn:hover{border-color:var(--primary,#2e8b57);background:var(--primary-soft,#eef7f1);color:var(--primary,#2e8b57)}button.activity-history-btn.is-expanded{color:var(--primary,#2e8b57);background:#2e8b5714;border-color:#2e8b574d}button.activity-history-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #2e8b572e}.patient-activity-drawer-toolbar button.activity-history-btn{width:auto;max-width:100%}.patient-activity-legend{font-size:.88rem;font-family:var(--font-ui);gap:14px;display:flex}.patient-activity-legend-item{color:var(--muted);align-items:center;gap:6px;display:flex}.patient-activity-swatch{border-radius:2px;width:12px;height:12px;display:inline-block}.patient-activity-swatch-done{border:1px solid var(--primary);background:#2e8b572e}.patient-activity-swatch-active{background:#daa52033;border:1px solid #9a6b00}.patient-activity-drawer-body{flex:1;min-height:0;padding:12px 16px 24px;overflow-y:auto}.patient-activity-drawer-body .activity-list{max-height:none}.patient-activity-drawer-body .activity-list-drawer li{flex-wrap:unset;grid-template-columns:1fr;align-items:start;gap:4px;padding:12px 0;display:grid}.patient-activity-drawer-body .activity-list-drawer .activity-name{white-space:normal}.patient-activity-drawer-body .activity-list-drawer .activity-change{white-space:normal;word-break:break-word}.patient-activity-drawer-body .activity-list-drawer .activity-meta{white-space:normal;font-size:.8rem}.patient-activity-drawer-body .empty-state{padding:16px 10px}.workflow-step-focus-flash{animation:.9s ease-out workflow-step-focus-flash}@keyframes workflow-step-focus-flash{0%{box-shadow:0 0 #2e8b5759}40%{box-shadow:0 0 0 6px #2e8b571f}to{box-shadow:none}}.patient-progress{gap:8px;min-width:0;max-width:100%;display:grid}.patient-progress-label{letter-spacing:.06em;text-transform:uppercase;color:#9a9288;font-size:.72rem;font-weight:700;font-family:var(--font-ui);margin:0}.patient-progress-track{flex-wrap:nowrap;gap:4px;width:100%;padding-bottom:2px;display:flex;overflow:hidden}.patient-progress-step{min-width:0;text-align:inherit;font:inherit;cursor:default;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:6px;flex:1 1 0;align-content:start;gap:4px;margin:0;padding:0;display:grid}.patient-progress-bar{background:#e2ddd4;border-radius:999px;width:100%;height:7px;transition:background .2s}.patient-progress-bar.is-done,.patient-progress-bar.is-current{background:var(--primary)}.patient-progress-bar.is-started{background:var(--accent-earth)}.patient-progress-bar.is-todo{background:#e2ddd4}.patient-progress-meta{text-align:center;min-width:0;padding:0 1px}.patient-progress-index{color:#a8a29a;font-size:.72rem;line-height:1;font-family:var(--font-ui);margin-bottom:1px}.patient-progress-title{color:#3f3a34;-webkit-line-clamp:4;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;font-size:.78rem;font-weight:650;line-height:1.2;font-family:var(--font-ui);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.patient-progress-step.is-todo .patient-progress-title{color:#94a3b8}.patient-progress-status{min-width:0;font-size:.72rem;line-height:1.15;font-family:var(--font-ui);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px;margin-top:2px;display:flex}.patient-progress-status.is-done{color:var(--primary)}.patient-progress-status.is-current{color:#1f3d2c}.patient-progress-status.is-started{color:#7a5a10}.patient-progress-status.is-todo{color:#94a3b8}.patient-payment-banner{border-radius:var(--radius-sm);background:#fffbeb;border:1px solid #fcd34d;padding:16px 18px}.patient-payment-banner h3{color:#92400e;font-size:1.1rem;font-family:var(--font-brand);margin:0 0 8px}.patient-payment-banner p{color:#78350f;font-size:1rem;font-family:var(--font-ui);margin:0 0 12px}.patient-payment-banner-link{background:var(--primary);color:#fff;border-radius:var(--radius-sm);font-size:.95rem;font-weight:700;font-family:var(--font-ui);align-items:center;padding:9px 18px;text-decoration:none;display:inline-flex}.patient-payment-banner-link:hover{background:var(--primary-hover);color:#fff;text-decoration:none}.patient-payment-banner-note{margin:12px 0 0!important;font-size:.85rem!important}@media (max-width:900px){.patient-progress-track{scrollbar-width:thin;-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-x:contain;max-width:100%;padding-bottom:4px;overflow:auto hidden}.patient-progress-step{pointer-events:none;flex:none;width:72px;min-width:64px}}@media (max-width:720px){.patient-detail{padding:14px max(14px, env(safe-area-inset-right)) 32px max(14px, env(safe-area-inset-left));overflow:visible}.patient-detail-main>.panel{padding:14px}.patient-detail-top{flex-direction:column;align-items:stretch;gap:10px}.patient-detail-top-actions{width:100%}.patient-detail-top-actions .patient-portal-link,.patient-detail-top-actions .patient-activity-trigger{flex:auto;justify-content:center;min-height:40px}.patient-detail-main>.panel .panel-header{flex-direction:column;align-items:stretch;gap:10px}.patient-detail-main>.panel .panel-header>div:last-child{align-items:stretch;width:100%}.patient-activity-drawer{width:100dvw;height:100dvh;max-height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);box-sizing:border-box}.patient-activity-drawer-header,.patient-activity-drawer-toolbar,.patient-activity-drawer-body{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}.patient-progress-track{scroll-snap-type:x mandatory;gap:2px}.patient-progress-step{scroll-snap-align:start;width:72px;min-width:64px;min-height:56px}.patient-payment-banner-link{box-sizing:border-box;justify-content:center;width:100%}.patient-summary-contact{display:none}.patient-info-chip.patient-summary-chip-mobile-only{display:inline-flex}.patient-summary-empty-chips.patient-summary-chip-mobile-only{display:inline}.patient-summary-secondary.is-mobile-only-chips{display:block}.patient-summary-fields,.patient-detail-read-grid{grid-template-columns:1fr}.patient-summary-billing-note-inline{text-align:left;width:100%}.patient-summary-actions.is-sticky{margin-left:0;margin-right:0}.patient-summary-main{grid-template-columns:1fr;grid-template-areas:"identity""cycle""toggle""secondary";gap:6px 8px;padding:10px 12px}.patient-summary-name{font-size:1.25rem}.patient-summary-cycle{justify-self:start;max-width:100%;padding:3px 9px;font-size:.8rem}.patient-summary-cycle-select{justify-self:stretch;max-width:100%}.patient-summary-cycle-native{box-sizing:border-box;width:100%;max-width:none}.patient-summary-toggle{box-sizing:border-box;justify-content:center;justify-self:stretch;gap:6px;width:100%;padding:8px 10px;font-size:.82rem}.patient-summary-actions-cluster{grid-template-columns:1fr 1fr;justify-self:stretch;width:100%;display:grid}.patient-summary-messages-btn{box-sizing:border-box;justify-content:center;width:100%;padding:8px 10px;font-size:.82rem}.patient-summary-details{padding:12px}}.patient-msg-modal-overlay{z-index:1200;box-sizing:border-box;background:#0f172a7a;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.patient-msg-modal{border-radius:var(--radius,12px);border:1px solid var(--panel-border,#e2e8f0);background:#fff;flex-direction:column;width:100%;max-width:560px;max-height:min(88vh,760px);display:flex;overflow:hidden;box-shadow:0 16px 48px #0f172a38}.patient-msg-modal-header{border-bottom:1px solid var(--panel-border,#e2e8f0);background:linear-gradient(#f7fbf8 0%,#fff 100%);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 12px;display:flex}.patient-msg-modal-heading h2{color:var(--text-heading,#1e293b);font-size:1.2rem;font-weight:700;font-family:var(--font-display,var(--font-ui));word-break:break-word;margin:0;line-height:1.25}.patient-msg-modal-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--muted,#64748b);font-size:.72rem;font-weight:700;font-family:var(--font-ui);margin:0 0 4px}.patient-msg-modal-email{color:var(--text,#334155);font-size:.9rem;font-weight:600;font-family:var(--font-ui);word-break:break-all;margin:4px 0 0}.patient-msg-modal-email.is-missing{color:var(--muted,#94a3b8);font-style:italic;font-weight:500}.patient-msg-modal-sub{color:var(--muted,#64748b);font-size:.8rem;font-family:var(--font-ui);margin:6px 0 0;line-height:1.4}.patient-msg-modal-close{cursor:pointer;color:var(--muted,#64748b);background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:2px 8px;font-size:1.5rem;line-height:1}.patient-msg-modal-close:hover{color:var(--text,#1e293b);background:#0f172a0f}.patient-msg-modal-thread{background:var(--bg-elevated,#f8fafc);flex-direction:column;flex:auto;gap:10px;min-height:220px;padding:14px 16px;display:flex;overflow-y:auto}.patient-msg-modal-status,.patient-msg-modal-empty{text-align:center;color:var(--muted,#94a3b8);font-size:.9rem;font-family:var(--font-ui);margin:auto 0;padding:24px 12px;line-height:1.5}.patient-msg-modal-older{align-self:center;font-size:.8rem}.patient-msg-bubble{max-width:88%;color:var(--text,#1e293b);border:1px solid var(--border,#e2e8f0);background:#fff;border-radius:12px;align-self:flex-start;padding:8px 12px}.patient-msg-bubble.is-mine{background:var(--accent,#1e4d3d);color:#fff;border:none;align-self:flex-end}.patient-msg-bubble-meta{opacity:.85;font-size:.72rem;font-family:var(--font-ui);margin-bottom:3px}.patient-msg-bubble-body{white-space:pre-wrap;font-size:.9rem;line-height:1.45;font-family:var(--font-ui)}.patient-msg-modal-error{color:#b91c1c;font-size:.875rem;font-family:var(--font-ui);flex-shrink:0;margin:0;padding:8px 18px 0}.patient-msg-modal-compose{border-top:1px solid var(--panel-border,#e2e8f0);background:#fff;flex-shrink:0;gap:10px;padding:12px 16px 16px;display:grid}.patient-msg-modal-compose textarea{box-sizing:border-box;border:1px solid var(--border,#cbd5e1);width:100%;font-family:var(--font-ui);resize:vertical;min-height:72px;color:var(--text,#1e293b);border-radius:8px;padding:10px 12px;font-size:.9rem}.patient-msg-modal-compose textarea:focus{border-color:#236b438c;outline:none;box-shadow:0 0 0 3px #2e8b571f}.patient-msg-modal-compose-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (max-width:560px){.patient-msg-modal-overlay{align-items:stretch;padding:0}.patient-msg-modal{border-radius:0;max-width:none;height:100%;max-height:none}}.dashboard.new-patient-layout{box-sizing:border-box;flex-direction:column;align-items:center;width:100%;display:flex}.dashboard.new-patient-layout>.new-patient-page{box-sizing:border-box;flex:0 auto;align-self:center;gap:20px;width:min(760px,100%);max-width:760px;display:grid}.new-patient-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;display:flex}.new-patient-header-text h1{color:var(--text-heading);font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.2;font-family:var(--font-display,var(--font-ui));margin:0}.new-patient-billing-lock{border-radius:var(--radius-sm,8px);background:#fff1ec;border:1px solid #f1c0b0;margin:0 0 4px;padding:12px 14px}.new-patient-billing-lock p{color:#9a3412;font-size:.9rem;font-weight:600;line-height:1.45;font-family:var(--font-ui);margin:0}.new-patient-billing-lock a{color:#9a3412;font-weight:700;text-decoration:underline}.new-patient-header-text p{color:var(--muted);font-size:.92rem;font-family:var(--font-ui);margin:6px 0 0;line-height:1.45}.new-patient-back{font-size:.85rem;font-weight:700;font-family:var(--font-ui);color:var(--primary);white-space:nowrap;padding-top:4px;text-decoration:none}.new-patient-back:hover{text-underline-offset:2px;text-decoration:underline}.new-patient-form{gap:16px;width:100%;display:grid}.new-patient-panel.panel{gap:0;width:100%;margin:0;padding:0;display:grid;overflow:hidden}.new-patient-section{border-bottom:1px solid var(--panel-border);padding:22px 24px}.new-patient-section:last-child{border-bottom:none}.new-patient-section-head{margin-bottom:16px}.new-patient-section-head h2{color:var(--text-heading);font-size:1.02rem;font-weight:700;font-family:var(--font-ui);margin:0}.new-patient-section-head p{color:var(--muted);font-size:.85rem;font-family:var(--font-ui);margin:4px 0 0;line-height:1.4}.new-patient-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px 18px;display:grid}.new-patient-fields-extra{border-radius:var(--radius-sm);background:var(--bg-sage,#f4f9f6);border:1px solid var(--panel-border);margin-top:14px;padding:14px}.new-patient-field{min-width:0;font-family:var(--font-ui);flex-direction:column;gap:6px;display:flex}.new-patient-label{min-height:1.15rem;color:var(--muted);letter-spacing:.02em;font-size:.78rem;font-weight:700;line-height:1.15;display:block}.new-patient-field input,.new-patient-field select,.new-patient-field textarea{border-radius:var(--radius-sm);border:1px solid var(--panel-border);width:100%;height:42px;min-height:42px;color:var(--text);font-size:.95rem;font-family:var(--font-ui);box-sizing:border-box;background:#fff;padding:0 12px;line-height:1.3}.new-patient-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px 8px;padding-right:36px}.new-patient-field select:disabled{color:var(--muted);cursor:not-allowed;background-color:#f8fafc}.new-patient-field textarea{resize:vertical;height:auto;min-height:110px;padding:10px 12px;line-height:1.45}.new-patient-field input:focus,.new-patient-field select:focus,.new-patient-field textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2e8b571f}.new-patient-field-span{grid-column:1/-1}.new-patient-hint{color:var(--muted);font-size:.8rem;line-height:1.4;font-family:var(--font-ui);margin:0}.new-patient-status{border-top:1px dashed var(--panel-border);gap:8px;margin-top:16px;padding-top:16px;display:grid}.new-patient-checkbox{width:fit-content;color:var(--text);font-size:.92rem;font-weight:600;font-family:var(--font-ui);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.new-patient-checkbox input{width:16px;height:16px;accent-color:var(--primary);margin:0}.new-patient-actions{background:linear-gradient(to top, var(--bg,#f6f8f6) 70%, transparent);z-index:2;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:14px 0 8px;display:flex;position:sticky;bottom:0}.new-patient-actions .primary-action{min-height:44px;padding:0 20px}.new-patient-actions-hint{color:var(--muted);font-size:.8rem;font-family:var(--font-ui);flex:160px;margin:0}.new-patient-cancel{color:#3f3a34;min-height:44px;font-size:.88rem;font-weight:600;font-family:var(--font-ui,system-ui, sans-serif);white-space:nowrap;cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #d7d0c4;border-radius:8px;justify-content:center;align-items:center;margin-left:auto;padding:0 18px;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.new-patient-cancel:hover{color:#2c2823;background:#f8f6f2;border-color:#c4bbae;text-decoration:none}.new-patient-prefill-toggle{color:#3f3a34;min-height:36px;font-family:var(--font-ui,system-ui, sans-serif);cursor:pointer;background:#fff;border:1px solid #d7d0c4;border-radius:8px;justify-content:center;align-self:flex-start;align-items:center;gap:6px;margin:0;padding:0 14px;font-size:.82rem;font-weight:600;line-height:1.2;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.new-patient-prefill-toggle:hover{color:#2c2823;background:#f8f6f2;border-color:#c4bbae}.new-patient-prefill-toggle.is-open{color:#2c2823;background:#f3f0ea;border-color:#c4bbae}.new-patient-prefill-toggle-fields{margin-top:12px}@media (max-width:720px){.new-patient-fields{grid-template-columns:1fr}.new-patient-section{padding:18px 16px}.new-patient-actions{flex-direction:column;align-items:stretch}.new-patient-actions .primary-action{width:100%}.new-patient-cancel{text-align:center;margin-left:0}.new-patient-field input,.new-patient-field select,.new-patient-field textarea{font-size:16px}}.session-banner-stack{position:relative}.session-banner-stack-body{display:grid}.session-banner{box-sizing:border-box;max-width:100%;min-height:0;font-size:.9rem;line-height:1.35;font-family:var(--font-ui);flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:10px;padding:8px clamp(12px,2vw,18px);display:flex}.session-banner-text{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.session-banner-cta{white-space:nowrap;font-size:.82rem;font-weight:600;font-family:var(--font-ui);border-radius:6px;flex-shrink:0;margin-left:auto;padding:4px 12px;text-decoration:none}.session-banner-cta-short{display:none}.session-banner-link{white-space:nowrap;flex-shrink:0;font-size:.85rem;font-weight:700;text-decoration:underline}.session-banner-dismiss{color:inherit;opacity:.85;font-size:.78rem;font-weight:700;font-family:var(--font-ui);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid;border-radius:5px;flex-shrink:0;padding:3px 9px;line-height:1.3}.session-banner-dismiss-icon{display:none}.session-banner-dismiss:hover{opacity:1;background:#ffffff2e}@media (max-width:768px){.session-banner{flex-wrap:wrap;align-items:center;gap:4px 6px;padding:6px 10px;font-size:.78rem;line-height:1.25}.session-banner-text{white-space:normal;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:100%;display:-webkit-box;overflow:hidden}.session-banner-cta{margin-left:0;padding:3px 8px;font-size:.72rem}.session-banner-cta-full{display:none}.session-banner-cta-short{display:inline}.session-banner-link{font-size:.75rem}.session-banner-dismiss{border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;margin-left:auto;padding:0;font-size:1.15rem;font-weight:500;line-height:1;display:inline-flex}.session-banner-dismiss-label{display:none}.session-banner-dismiss-icon{display:block}}@media (max-width:480px){.session-banner{padding:5px 8px;font-size:.75rem}.session-banner-cta{padding:3px 7px;font-size:.7rem}}.landing-page{flex-direction:column;width:100%;min-height:100vh;display:flex;overflow-x:clip}.landing-nav{padding:12px var(--page-gutter);z-index:100;background:#fffffff7;border-bottom:1px solid #2e8b5724;justify-content:space-between;align-items:center;gap:18px;margin-bottom:0;display:flex;position:sticky;top:0;box-shadow:0 1px 14px #00000012}.landing-brand{min-width:0;color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.landing-brand:hover{text-decoration:none}.brand-logo{flex:none;width:42px;height:42px;display:block}.landing-brand .brand-wordmark{font-size:.98rem}.landing-brand p{color:var(--muted);font-size:.72rem;font-family:var(--font-ui);margin:3px 0 0}.landing-nav-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.nav-action{border-radius:var(--radius-sm);min-height:42px;transition:background var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);font-size:.9rem;font-weight:700;line-height:1;font-family:var(--font-brand);white-space:nowrap;letter-spacing:.01em;justify-content:center;align-items:center;padding:10px 18px;text-decoration:none;display:inline-flex}.nav-action-primary{background:var(--primary);color:#fff;box-shadow:0 4px 16px #2e8b5738}.nav-action-primary:hover{background:var(--primary-hover);color:#fff;text-decoration:none;transform:translateY(-1px);box-shadow:0 6px 18px #2e8b5747}.nav-action-secondary{color:var(--text);border:1px solid var(--panel-border);box-shadow:var(--shadow);background:#fff}.nav-action-secondary:hover{background:var(--bg-sage);text-decoration:none}.nav-action-demo{color:var(--primary);box-shadow:none;background:0 0;border:2px solid #2e8b5773}.nav-action-demo:hover{background:var(--primary-soft);color:var(--primary-hover);border-color:var(--primary);text-decoration:none}.ecosystem-banner{text-align:center;color:var(--muted);letter-spacing:.02em;font-size:.82rem;font-family:var(--font-ui);background:0 0;border-bottom:none;border-radius:0;margin:0 0 8px;padding:14px 0 0}.ecosystem-banner a{color:var(--primary);font-weight:600;text-decoration:none}.ecosystem-banner a:hover{color:var(--primary-hover);text-decoration:underline}.landing-hero-band{background:var(--gradient-brand);width:100vw;padding:48px var(--page-gutter) 56px;color:#fff;margin-bottom:0;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.landing-hero{max-width:var(--content-wide);grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);align-items:stretch;gap:28px;margin:0 auto;display:grid}.landing-hero-copy{flex-direction:column;justify-content:center;min-width:0;padding:8px 0;display:flex}.landing-hero-band .eyebrow{color:#ffffffd9}.landing-hero h1{letter-spacing:-.02em;max-width:14em;font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.1;font-family:var(--font-brand);color:#fff;margin:0}.landing-hero-band .subheading{color:#ffffffe0;font-family:var(--font-body)}.hero-cta-row{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.hero-cta{font-size:.95rem;font-weight:700;font-family:var(--font-brand);letter-spacing:.02em;border-radius:8px;justify-content:center;align-items:center;padding:14px 28px;text-decoration:none;transition:background .2s,border-color .2s,transform .15s,box-shadow .15s;display:inline-flex}.hero-cta:hover{text-decoration:none;transform:translateY(-2px)}.hero-cta-primary{color:#fff;background:#2e8b57;box-shadow:0 4px 16px #0003}.hero-cta-primary:hover{color:#fff;background:#236b43}.hero-cta-secondary{color:#fff;box-shadow:none;background:0 0;border:2px solid #ffffffbf}.hero-cta-secondary:hover{color:#fff;background:#ffffff1f;border-color:#fff}.hero-access-note{color:#ffffffc7;max-width:640px;font-size:.88rem;line-height:1.6;font-family:var(--font-ui);margin:16px 0 0}.hero-access-note a{color:#fff;text-underline-offset:3px;font-weight:700;text-decoration:underline}.hero-card{border-radius:var(--radius);color:var(--text);background:#fffffff5;border:1px solid #ffffff59;box-shadow:0 12px 40px #0000002e}.hero-visual{flex-direction:column;justify-content:center;gap:18px;padding:24px;display:flex}.mock-dashboard{gap:12px;display:grid}.mock-row{border-radius:var(--radius);background:var(--bg-sage);border:1px solid #2e8b572e;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.mock-row span{color:var(--muted);font-weight:600;font-family:var(--font-ui);min-width:0}.mock-row strong{color:var(--text);font-size:1.3rem;font-family:var(--font-ui)}.hero-card-label{letter-spacing:.12em;text-transform:uppercase;color:var(--primary);font-size:.7rem;font-weight:800;font-family:var(--font-ui);margin-bottom:12px;display:inline-block}.hero-preview-link{color:inherit;cursor:pointer;flex-direction:column;padding:24px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:flex}.hero-preview-link:hover{color:inherit;text-decoration:none;transform:translateY(-3px);box-shadow:0 18px 40px #00000038}.preview-card-inner{flex-direction:column;flex:1;justify-content:space-between;gap:12px;display:flex}.preview-card-content{flex-direction:column;gap:8px;display:flex}.preview-mock-screen{border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;overflow:hidden;box-shadow:0 2px 8px #0000000f}.preview-mock-topbar{background:#1e293b;align-items:center;gap:8px;padding:6px 10px;display:flex}.preview-mock-dots{gap:4px;display:flex}.preview-mock-dots span{background:#475569;border-radius:50%;width:7px;height:7px;display:block}.preview-mock-url{color:#64748b;letter-spacing:0;font-family:monospace;font-size:.62rem}.preview-mock-rows{background:#f8fafc;flex-direction:column;gap:5px;padding:8px;display:flex}.preview-mock-row{background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;display:flex}.preview-mock-row--muted{opacity:.5}.preview-mock-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:block}.pmd-green{background:#22c55e}.pmd-amber{background:#f59e0b}.pmd-grey{background:#e2e8f0}.preview-mock-name{color:#334155;white-space:nowrap;text-overflow:ellipsis;flex:1;font-family:Georgia,serif;font-size:.72rem;font-weight:600;overflow:hidden}.preview-mock-badge{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:2px 7px;font-size:.6rem;font-weight:700}.pmb-green{color:#16a34a;background:#dcfce7}.pmb-amber{color:#b45309;background:#fef3c7}.pmb-grey{color:#94a3b8;background:#f1f5f9}.preview-card-icon{font-size:2.2rem;line-height:1}.preview-card-title{color:var(--text);letter-spacing:-.03em;margin:0;font-family:Georgia,serif;font-size:1.25rem;font-weight:800;line-height:1.2}.preview-card-desc{color:var(--muted);margin:0;font-family:Georgia,serif;font-size:.82rem;line-height:1.5}.preview-card-features{flex-direction:column;gap:5px;margin:6px 0 0;padding:0;list-style:none;display:flex}.preview-card-features li{color:var(--text);align-items:flex-start;gap:10px;font-family:Georgia,serif;font-size:.82rem;font-weight:600;line-height:1.4;display:flex}.preview-card-features li:before{content:"";background:var(--primary);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:.45em;box-shadow:0 0 0 2px #2e8b5726}.preview-card-cta{background:var(--primary);color:#fff;font-size:.85rem;font-weight:700;font-family:var(--font-brand);border-radius:10px;align-items:center;width:fit-content;margin-top:2px;padding:8px 16px;transition:background .15s;display:inline-flex;box-shadow:0 4px 14px #2e8b5738}.hero-preview-link:hover .preview-card-cta{background:var(--primary-hover)}.feature-band{width:100vw;padding:72px var(--page-gutter);box-shadow:none;background:#fff;border:0;border-radius:0;margin:0 calc(50% - 50vw)}.feature-band>*{max-width:var(--content-wide);margin-left:auto;margin-right:auto}.feature-band-copy h2{letter-spacing:-.01em;font-size:clamp(1.7rem,2.8vw,2.3rem);font-family:var(--font-brand);color:var(--text-heading);text-align:center;margin:0}.feature-band-copy p{max-width:640px;color:var(--muted);font-size:1.05rem;line-height:1.65;font-family:var(--font-body);text-align:center;margin:12px auto 0}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px;margin-bottom:0;display:grid}.summary-card{border-radius:var(--radius);min-height:160px;box-shadow:none;background:#f9fdf9;border:1px solid #d4e9dc;flex-direction:column;justify-content:flex-start;padding:28px 22px;transition:box-shadow .2s,transform .2s;display:flex}.summary-card:hover{transform:translateY(-3px);box-shadow:0 8px 32px #2e8b571a}.summary-card span{font-size:1.05rem;font-weight:700;line-height:1.35;font-family:var(--font-brand);color:var(--text-heading);display:block}.summary-card p{color:var(--muted);font-family:var(--font-body);margin:12px 0 0;line-height:1.6}.pricing-band{width:100vw;padding:72px var(--page-gutter);background:var(--bg-sage);box-shadow:none;border:0;border-radius:0;margin:0 calc(50% - 50vw)}.pricing-band>*{max-width:var(--content-wide);margin-left:auto;margin-right:auto}.pricing-band-copy{text-align:center}.pricing-band-copy h2{letter-spacing:-.01em;font-size:clamp(1.6rem,2.8vw,2.3rem);font-family:var(--font-brand);color:var(--text-heading);margin:0}.pricing-band-copy p{max-width:680px;color:var(--muted);font-size:1.02rem;line-height:1.65;font-family:var(--font-body);margin:12px auto 0}.pricing-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:32px;display:grid}.pricing-card{border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;border:1px solid #2e8b572e;padding:22px 20px;position:relative}.pricing-card--highlight{background:linear-gradient(#f9fdf9,#fff);border-color:#2e8b5766}.pricing-card-badge{background:var(--primary);color:#fff;letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700;font-family:var(--font-ui);border-radius:999px;margin:0;padding:3px 12px;position:absolute;top:-11px;left:50%;transform:translate(-50%)}.pricing-card-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:700;font-family:var(--font-ui);margin:0}.pricing-card-price{color:var(--text-heading);font-size:2rem;font-weight:800;line-height:1;font-family:var(--font-brand);margin:6px 0 0}.pricing-card-price span{color:var(--muted);font-size:.95rem;font-weight:500}.pricing-card-savings{color:var(--primary);margin:8px 0 0;font-size:.82rem;font-weight:600}.pricing-card-features{color:var(--muted);font-size:.88rem;line-height:1.55;font-family:var(--font-ui);margin:14px 0 0;padding-left:18px}.pricing-card-features li+li{margin-top:4px}.pricing-footnote{max-width:680px;color:var(--muted);font-size:.85rem;line-height:1.55;font-family:var(--font-ui);text-align:center;margin:16px auto 0}.info-band{width:100vw;padding:72px var(--page-gutter);box-shadow:none;background:#fff;border:0;border-radius:0;margin:0 calc(50% - 50vw)}.info-band>*{max-width:var(--content-wide);margin-left:auto;margin-right:auto}.info-band h2{letter-spacing:-.01em;font-size:clamp(1.5rem,2.4vw,2.1rem);font-family:var(--font-brand);color:var(--text-heading);text-align:center;margin:0}.info-band p{max-width:680px;color:var(--muted);font-size:1.02rem;line-height:1.65;font-family:var(--font-body);text-align:center;margin:12px auto 0}.info-band a{color:var(--primary);text-underline-offset:3px;font-weight:700;text-decoration:underline}.info-band a:hover{color:var(--primary-hover)}.info-band--ecosystem{background:var(--bg-sage);border-top:0}.ecosystem-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:24px;display:grid}.ecosystem-card{background:#fff;border:1px solid #2e8b5733;border-radius:10px;padding:20px;box-shadow:0 1px 4px #0000000f}.ecosystem-card--current{background:#2e8b5714;border:2px solid #2e8b5759}.ecosystem-card-label{letter-spacing:.08em;text-transform:uppercase;color:var(--primary);font-size:.72rem;font-weight:700;font-family:var(--font-ui);margin:0 0 8px}.ecosystem-card-domain{color:var(--text-heading);font-weight:700;font-family:var(--font-brand);margin:0 0 6px}.ecosystem-card-desc{color:var(--muted);font-size:.85rem;line-height:1.6;font-family:var(--font-body);margin:0 0 14px}.ecosystem-card-link{color:var(--primary);font-size:.82rem;font-weight:600;font-family:var(--font-ui);text-decoration:none}.ecosystem-card-link:hover{text-decoration:underline}.ecosystem-card-badge{color:var(--primary);font-size:.82rem;font-weight:600;font-family:var(--font-ui)}.content-grid{grid-template-columns:1fr 1fr;align-items:stretch;gap:16px;margin-bottom:16px;display:grid}.panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:18px}.panel-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.panel-header h2{letter-spacing:-.03em;font-size:1.35rem;font-family:var(--font-brand);color:var(--text-heading);margin:0}.panel-header span{color:var(--muted);font-family:var(--font-ui)}.workflow-detail-list{gap:12px;display:grid}.workflow-detail-row{border-bottom:1px solid #6e675f29;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.workflow-detail-row:last-child{border-bottom:0}.workflow-detail-row span{color:#4d463d;font-family:Georgia,serif;font-weight:600}.legal-doc{width:min(720px,100%);font-family:var(--font-body);color:var(--text);margin:28px auto 48px;padding:0 0 24px;line-height:1.7}.legal-doc-back{margin:0 0 20px}.legal-doc-back a{color:var(--primary);font-family:var(--font-ui);font-size:.9rem;font-weight:700;text-decoration:none}.legal-doc-back a:hover{text-underline-offset:2px;text-decoration:underline}.legal-doc-header h1{color:var(--text-heading);font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;line-height:1.2;font-family:var(--font-brand);letter-spacing:-.02em;margin:0 0 8px}.legal-doc-updated{color:var(--muted);font-family:var(--font-ui);margin:0 0 28px;font-size:.9rem}.legal-doc-body section{margin-bottom:1.75rem}.legal-doc-body h2{color:var(--text-heading);font-size:1.15rem;font-weight:700;font-family:var(--font-ui);margin:0 0 .5rem}.legal-doc-body p,.legal-doc-body li{color:var(--text);font-size:.98rem}.legal-doc-body ul{margin:.5rem 0 0;padding-left:1.35rem}.legal-doc-body li+li{margin-top:.35rem}.legal-doc-body a{color:var(--primary);font-weight:600}.site-footer{background:var(--dark-bg);color:#c8d8cf;width:100%;font-family:var(--font-ui);box-shadow:none;border:0;border-radius:0;margin-top:auto}.site-footer-accent{background:var(--gradient-brand);height:3px}.site-footer-inner{max-width:1100px;padding:44px var(--page-gutter) 28px;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(0,1fr));align-items:start;gap:32px 40px;margin:0 auto;display:grid}.site-footer-brand{gap:12px;min-width:0;max-width:280px;display:grid}.site-footer-brand-link{width:fit-content;font-size:1.15rem;text-decoration:none;display:inline-block}.site-footer-brand-link:hover{text-decoration:none}.site-footer-brand-link .brand-wordmark-inline .brand-wordmark-line1,.site-footer-brand-link .brand-wordmark-inline .brand-wordmark-line2{-webkit-text-fill-color:transparent;color:#0000;background:linear-gradient(90deg,#2e8b57,#4169e1);-webkit-background-clip:text;background-clip:text}.site-footer-tagline{color:#8faaa0;font-size:.9rem;line-height:1.55;font-family:var(--font-body);margin:0}.site-footer-col{justify-items:start;gap:10px;min-width:0;display:grid}.site-footer-heading{letter-spacing:.08em;text-transform:uppercase;color:#6b8a7c;font-size:.72rem;font-weight:700;font-family:var(--font-ui);margin:0 0 2px}.site-footer-col a{color:#c8d8cf;font-size:.92rem;font-weight:600;font-family:var(--font-ui);text-decoration:none;transition:color .15s}.site-footer-col a:hover{color:#fff}.site-footer-col-legal a{color:#7d968a;font-size:.84rem;font-weight:500}.site-footer-col-legal a:hover{color:#c8d8cf}.site-footer-bottom{max-width:1100px;padding:16px var(--page-gutter) 22px;border-top:1px solid #ffffff12;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin:0 auto;display:flex}.site-footer-bottom p{color:#4a6b5d;font-size:.8rem;font-family:var(--font-ui);margin:0}@media (max-width:1100px){.landing-hero{grid-template-columns:1fr}.landing-nav{padding:12px 24px}.landing-brand{gap:10px}.brand-logo{width:48px;height:48px}.landing-brand .brand-wordmark{font-size:.9rem}.landing-brand p{font-size:.7rem}.nav-action{padding:10px 16px;font-size:.9rem}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-cards{grid-template-columns:1fr}}@media (max-width:768px){.landing-nav{flex-wrap:wrap;gap:12px;padding:12px 16px}.landing-brand{gap:10px;width:100%}.landing-nav-actions{gap:8px;width:100%}.nav-action{flex:calc(50% - 4px);min-height:44px;padding:10px;font-size:.82rem}.nav-action-demo{flex:100%;order:-1}.landing-hero{gap:16px}.landing-hero h1{max-width:none;font-size:clamp(1.8rem,6vw,2.5rem)}.landing-hero-copy{padding:8px 0}.hero-cta-row{flex-direction:column;align-items:stretch}.hero-cta{text-align:center;width:100%}.ecosystem-banner{border-radius:8px;margin:0 0 20px;font-size:.75rem;line-height:1.5}.hero-visual{padding:16px}.preview-card-title{font-size:1.2rem}.preview-card-desc{font-size:.85rem}.preview-card-views{gap:6px}.preview-card-views span{padding:3px 10px;font-size:.7rem}.feature-band,.info-band,.panel{padding:18px}.summary-grid{grid-template-columns:1fr;gap:12px}.summary-card{min-height:auto;padding:16px}.summary-card span{font-size:.95rem}.summary-card p{margin-top:8px;font-size:.85rem}.content-grid{grid-template-columns:1fr;gap:12px;margin-bottom:12px}.panel{padding:16px}.panel-header{flex-direction:column;align-items:flex-start;gap:4px}.panel-header h2{font-size:1.15rem}.workflow-detail-row{flex-direction:column;align-items:flex-start}.site-footer-inner{padding:36px var(--page-gutter) 24px;grid-template-columns:1fr 1fr;gap:28px 24px}.site-footer-brand{grid-column:1/-1;max-width:none}.site-footer-bottom{flex-direction:column;align-items:flex-start;gap:6px}.eyebrow{font-size:.7rem}.subheading{font-size:.95rem}}@media (max-width:480px){.landing-nav{gap:10px;padding:10px 12px}.brand-logo{width:40px;height:40px}.landing-brand .brand-wordmark{font-size:.85rem}.landing-brand p{margin-top:2px;font-size:.65rem}.landing-nav-actions{gap:6px;width:100%}.nav-action{min-height:40px;padding:9px 12px;font-size:.8rem}.landing-hero{gap:12px;margin-bottom:16px}.landing-hero h1{font-size:clamp(1.5rem,5vw,2.2rem)}.hero-visual{padding:14px}.preview-card-inner{gap:7px}.preview-card-title{font-size:1.05rem}.preview-card-desc{font-size:.78rem}.preview-card-features li{font-size:.76rem}.preview-card-cta{padding:7px 14px;font-size:.8rem}.feature-band-copy h2{font-size:clamp(1.4rem,5vw,1.8rem)}.feature-band-copy p{font-size:.9rem}.info-band h2{font-size:clamp(1.2rem,4vw,1.6rem)}.info-band p{font-size:.9rem}.summary-card{padding:14px}.summary-card span{font-size:.9rem}.summary-card p{font-size:.8rem}.site-footer-inner{grid-template-columns:1fr;gap:24px;padding:32px 16px 22px}.site-footer-brand{grid-column:auto}.site-footer-bottom{padding:14px 16px 18px}.eyebrow{font-size:.65rem}.subheading{font-size:.9rem;line-height:1.6}}.auth-shell{flex-direction:column;justify-content:space-between;gap:32px;min-height:100vh;padding:40px 0 0;display:flex}.auth-card{width:100%;max-width:520px;margin:0 auto;padding:28px}.auth-shell>.site-footer{box-sizing:border-box;width:100vw;margin-top:auto;margin-left:calc(50% - 50vw);margin-right:0}.form-field{flex-direction:column;gap:6px;display:flex}.form-field label{color:#333;margin:0;font-size:.85rem;font-weight:600}.form-field input{margin:0!important}.form-field.is-invalid input{box-shadow:0 0 0 1px #b91c1c33;border-color:#b91c1c!important}.form-field-error{color:#b91c1c;margin:0;font-size:.78rem;line-height:1.35}.form-hint{color:#666;margin:4px 0 0;font-size:.8rem;line-height:1.4}.auth-title{letter-spacing:-.05em;margin:0;font-family:Georgia,serif;font-size:clamp(2rem,3vw,3rem);line-height:1.02}.auth-form-stack{gap:12px;margin-top:22px;display:grid}.auth-submit{width:100%;min-height:48px;margin-top:4px}.auth-submit-busy{justify-content:center;align-items:center;gap:10px;display:inline-flex}.auth-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite auth-spin}.auth-spinner.is-muted{border-color:#2e8b5740;border-top-color:var(--primary,#2e8b57)}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-redirect-note{text-align:center;color:var(--muted);margin:0;font-size:.85rem;line-height:1.4}.auth-help-row{justify-content:flex-end;margin-top:2px;display:flex}.auth-help-row a,.auth-back-link a{color:var(--primary);text-underline-offset:3px;font-family:Georgia,serif;font-weight:700;text-decoration:underline}.auth-footer-note{color:var(--muted);border-top:1px solid #6e675f29;margin-top:18px;padding-top:16px;font-family:Georgia,serif;font-size:.95rem;line-height:1.6}.auth-back-link{margin-top:18px}.auth-back-link a:hover,.auth-help-row a:hover{filter:brightness(.95)}.auth-card input+input{margin-top:0}.auth-help-row+.auth-help-row{margin-top:6px}.auth-card input+input,.auth-card select+input,.auth-card input+select{margin-top:0}.auth-card .subheading{max-width:100%}.auth-content{gap:12px;margin-top:22px;display:grid}@media (max-width:768px){.auth-shell{gap:24px;padding:24px 16px 0}.auth-card{max-width:100%;padding:20px}.auth-title{font-size:clamp(1.5rem,5vw,2.2rem)}.auth-form-stack{gap:10px;margin-top:16px}.auth-submit{min-height:44px;margin-top:4px}.auth-footer-note{font-size:.9rem;line-height:1.5}}@media (max-width:480px){.auth-shell{gap:20px;padding:16px 12px 0}.auth-card{padding:18px}.auth-title{font-size:clamp(1.3rem,4vw,1.8rem)}.auth-form-stack{gap:8px;margin-top:14px}.auth-submit{min-height:40px}.auth-footer-note{margin-top:12px;padding-top:12px;font-size:.85rem;line-height:1.4}.auth-back-link{margin-top:12px;font-size:.9rem}.auth-help-row a{font-size:.88rem}.subheading{font-size:.9rem;line-height:1.5}}.session-expiry-modal-overlay{z-index:9999;background:#00000080;justify-content:center;align-items:center;animation:.2s ease-in-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.session-expiry-modal{background:#fff;border-radius:12px;width:90%;max-width:500px;padding:32px;animation:.3s ease-out slideUp;box-shadow:0 20px 60px #0000004d}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.session-expiry-content{margin-bottom:24px}.session-expiry-content h2{color:#1e293b;margin:0 0 12px;font-family:Georgia,serif;font-size:1.5rem}.session-expiry-content p{color:#64748b;margin:8px 0;font-family:Georgia,serif;font-size:.95rem;line-height:1.5}.session-expiry-content p strong{color:#dc2626;font-weight:700}.session-expiry-note{color:#94a3b8;font-size:.85rem;margin-top:12px!important}.session-expiry-actions{flex-direction:column;gap:12px;display:flex}.session-action-stay,.session-action-logout{cursor:pointer;border:none;border-radius:8px;min-height:44px;padding:12px 18px;font-family:Georgia,serif;font-size:.95rem;font-weight:700;transition:all .2s}.session-action-stay{color:#fff;background:linear-gradient(135deg,#2e8b57 0%,#3c9b64 100%);box-shadow:0 4px 12px #2e8b5733}.session-action-stay:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2e8b574d}.session-action-logout{color:#dc2626;background:#dc26261a;border:1px solid #dc262633}.session-action-logout:hover{background:#dc262626;border-color:#dc26264d}@media (max-width:480px){.session-expiry-modal{width:95%;padding:24px}.session-expiry-content h2{font-size:1.3rem}.session-expiry-actions{flex-direction:column}.session-action-stay,.session-action-logout{width:100%}}@media (max-width:768px){:root{--page-gutter:16px}.primary-action,.secondary-action,.nav-action{min-height:44px}}@media (max-width:480px){:root{--page-gutter:14px}h1{word-break:break-word}}.agreements-page{width:min(var(--content-wide,1200px), 100%);padding:24px var(--page-gutter);font-family:var(--font-ui);color:var(--text);margin:0 auto}.agreements-page h1{color:var(--text-heading);font-size:clamp(1.4rem,2.4vw,1.7rem);font-weight:700;font-family:var(--font-brand);letter-spacing:-.02em;margin:0 0 6px}.agreements-page h2{color:var(--text-heading);font-size:1.08rem;font-weight:700;font-family:var(--font-ui);margin:0}.agreements-back{color:var(--primary);align-items:center;gap:6px;margin-bottom:12px;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.agreements-back:hover{text-underline-offset:2px;text-decoration:underline}.agreements-intro{color:var(--muted);margin:0;line-height:1.55}.agreements-intro strong{color:var(--text-heading)}.agreements-intro a{color:var(--primary);font-weight:600;text-decoration:none}.agreements-intro a:hover{text-underline-offset:2px;text-decoration:underline}.agreements-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:none;margin-bottom:14px;padding:18px 20px}.agreements-card.is-muted{background:var(--bg-sage);border-left:4px solid var(--accent-metal)}.agreements-card.is-ready{border-left:4px solid var(--success);background:#f6fdf9}.agreements-card.is-action{border-left:4px solid var(--danger)}.agreements-feedback.is-complete{border-radius:var(--radius-sm);background:#ecfdf5;border:1px solid #a7f3d0;padding:12px 14px;font-weight:600}.agreements-muted{color:var(--muted);font-size:.9rem;line-height:1.5}.agreements-pill{border-radius:var(--radius-pill);font-size:.75rem;font-weight:700;font-family:var(--font-ui);padding:3px 10px;display:inline-block}.agreements-pill.is-ok{color:#047857;background:#ecfdf5}.agreements-pill.is-required{color:#b91c1c;background:#fef2f2}.agreements-pill.is-update{color:#92400e;background:#fffbeb}.agreements-btn{border-radius:var(--radius-sm);background:var(--primary);color:#fff;font-weight:700;font-family:var(--font-ui);cursor:pointer;border:none;padding:10px 16px;font-size:.92rem}.agreements-btn:hover:not(:disabled){background:var(--primary-hover)}.agreements-btn:disabled{opacity:.65;cursor:not-allowed}.agreements-btn.is-secondary{background:#3d5a4c}.agreements-btn.is-secondary:hover:not(:disabled){background:#2f473c}.agreements-btn.is-ghost{color:var(--primary);border:1px solid var(--panel-border-strong);background:#fff}.agreements-field{border-radius:var(--radius-sm);border:1px solid var(--panel-border-strong);width:100%;min-height:42px;color:var(--text);font-family:var(--font-ui);box-sizing:border-box;background:#fff;padding:10px 12px;font-size:.95rem}.agreements-field:focus{border-color:var(--primary);box-shadow:var(--shadow-focus);outline:none}.agreements-field:disabled,.agreements-field[readonly]{background:var(--bg-sage);color:var(--muted)}.agreements-textarea{border-radius:var(--radius-sm);border:1px solid var(--panel-border-strong);width:100%;color:var(--text);box-sizing:border-box;background:#fff;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8rem;line-height:1.45}.agreements-textarea:focus{border-color:var(--primary);box-shadow:var(--shadow-focus);outline:none}.agreements-doc-toggle{border-radius:var(--radius-sm);border:1px solid var(--panel-border-strong);background:var(--bg-sage);color:var(--text-heading);font-size:.9rem;font-weight:600;font-family:var(--font-ui);cursor:pointer;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.agreements-doc-toggle.is-open{background:#e7f2ec;border-color:#2e8b5759}.agreements-doc-body{border:1px solid var(--panel-border);border-radius:var(--radius-sm);background:var(--bg-sage);max-height:360px;margin-top:10px;padding:14px;font-size:.88rem;line-height:1.5;overflow:auto}.agreements-preview-btn{border-radius:var(--radius-sm);border:1px solid var(--panel-border-strong);color:var(--primary);font-size:.82rem;font-weight:600;font-family:var(--font-ui);cursor:pointer;white-space:nowrap;background:#fff;padding:6px 12px}.agreements-preview-btn:hover{background:var(--primary-soft)}.billing-page{width:min(760px,100%);padding:24px var(--page-gutter,20px);font-family:var(--font-ui);color:var(--text);margin:0 auto}.billing-page h1{color:var(--text-heading);font-size:clamp(1.4rem,2.4vw,1.7rem);font-weight:700;font-family:var(--font-brand);letter-spacing:-.02em;margin:0 0 6px}.billing-intro{max-width:640px;color:var(--muted);margin:0 0 20px;font-size:.92rem;line-height:1.55}.billing-intro strong{color:var(--text-heading)}.billing-alert{border-radius:var(--radius-sm,8px);border:1px solid var(--panel-border);background:var(--bg-sage,#f4f7f5);color:var(--text);margin:0 0 16px;padding:14px 16px;font-size:.9rem;line-height:1.5}.billing-alert strong{color:var(--text-heading)}.billing-alert.is-muted{color:#475569;background:#f8faf8;border-color:#d7e0d9}.billing-alert.is-info{color:#1f4d36;background:#f0f7f3;border-color:#c5dccb}.billing-loading,.billing-empty{color:var(--muted);margin:0;font-size:.92rem}.billing-card{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);margin-bottom:14px;padding:20px 22px;scroll-margin-top:80px}.billing-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:6px;display:flex}.billing-card-header h2{color:var(--text-heading);font-size:1.08rem;font-weight:700;font-family:var(--font-ui);margin:0}.billing-status{color:var(--muted);margin:0;font-size:.88rem;line-height:1.5}.billing-status strong{color:var(--text-heading);font-weight:700}.billing-status.is-warn{color:#92400e;font-weight:600}.billing-status.is-danger{color:#b91c1c;font-weight:600}.billing-status.is-comp{color:#065f46;font-weight:600}.billing-alert.is-comp{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.billing-cta-reassure.is-comp{color:#065f46}.billing-breakdown-note{color:#065f46;margin:10px 0 0;font-size:.85rem;line-height:1.45}.billing-error{color:#b91c1c;margin:10px 0 0;font-size:.85rem;font-weight:600}.billing-section{margin-top:18px}.billing-plans{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:640px){.billing-plans.has-annual{grid-template-columns:1fr 1fr}}.billing-plan{border:1px solid var(--panel-border);border-radius:var(--radius-sm,8px);background:#fff;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.billing-plan.is-highlight{border-color:var(--panel-border-strong,#b7c9bb);background:var(--bg-sage,#f4f7f5)}.billing-plan-eyebrow{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.72rem;font-weight:700}.billing-plan.is-highlight .billing-plan-eyebrow{color:var(--primary)}.billing-plan-price{color:var(--text-heading);margin:4px 0 0;font-size:1.65rem;font-weight:800;line-height:1}.billing-plan-price span{color:var(--muted);font-size:.92rem;font-weight:500}.billing-plan-save{color:var(--primary);margin:6px 0 0;font-size:.82rem;font-weight:700}.billing-plan-note{color:#475569;margin:8px 0 0;font-size:.84rem;line-height:1.45}.billing-plan-list{color:#475569;flex-direction:column;gap:4px;margin:0;padding:0 0 0 18px;font-size:.84rem;display:flex}.billing-cta-reassure{border-radius:var(--radius-sm,8px);color:#1f4d36;text-align:center;background:#f0f7f3;border:1px solid #c5dccb;margin:12px 0 0;padding:10px 12px;font-size:.86rem;line-height:1.45}.billing-cta-reassure strong{color:#163d2b}.billing-btn{border-radius:var(--radius-sm,8px);background:var(--primary);color:#fff;width:100%;min-height:42px;font-family:var(--font-ui);cursor:pointer;border:none;justify-content:center;align-items:center;margin-top:auto;padding:10px 16px;font-size:.9rem;font-weight:700;display:inline-flex}.billing-btn:hover:not(:disabled){background:var(--primary-hover,#247a4a)}.billing-btn:disabled{opacity:.65;cursor:not-allowed}.billing-btn.is-secondary{width:auto;color:var(--primary);border:1px solid var(--panel-border-strong,#b7c9bb);background:#fff}.billing-btn.is-secondary:hover:not(:disabled){background:var(--bg-sage,#f4f7f5)}.billing-btn.is-ghost{width:auto;color:var(--text-heading);border:1px solid var(--panel-border);background:#fff;flex-shrink:0;font-size:.84rem;font-weight:600}.billing-btn.is-ghost:hover:not(:disabled){background:#f8faf8}.billing-breakdown{border-radius:var(--radius-sm,8px);border:1px solid var(--panel-border);background:var(--bg-sage,#f4f7f5);padding:16px 18px}.billing-breakdown-title{color:var(--text-heading);margin:0 0 12px;font-size:.88rem;font-weight:700}.billing-breakdown-rows{color:#475569;flex-direction:column;gap:8px;font-size:.84rem;display:flex}.billing-breakdown-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.billing-breakdown-row strong{color:#334155}.billing-breakdown-meta{color:#94a3b8;margin-left:6px}.billing-breakdown-row.is-subtotal{border-top:1px dashed #c5d2c8;margin-top:4px;padding-top:10px}.billing-breakdown-total{border-top:2px solid #c5d2c8;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:12px;font-size:.9rem;display:flex}.billing-breakdown-total-label{color:var(--text-heading);font-weight:700}.billing-breakdown-total-value{color:var(--text-heading);font-size:1.1rem;font-weight:800}.billing-breakdown-total-value span{color:var(--muted);font-size:.85rem;font-weight:500}.billing-breakdown-warn{color:#b45309;margin:10px 0 0;font-size:.78rem}.billing-breakdown-footnote{color:#94a3b8;margin:10px 0 0;font-size:.78rem;line-height:1.45}.billing-actions{margin-top:16px}.billing-export{border-top:1px solid #2e8b571f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-top:20px;padding-top:16px;display:flex}.billing-export p{max-width:480px;color:var(--muted);flex:240px;margin:0;font-size:.82rem;line-height:1.45}.billing-export strong{color:var(--text-heading)}.billing-footer-help{text-align:center;color:#94a3b8;max-width:560px;margin:8px auto 0;font-size:.82rem;line-height:1.5}.billing-footer-help a{color:var(--primary);font-weight:700;text-decoration:none}.billing-footer-help a:hover{text-underline-offset:2px;text-decoration:underline}.billing-footer-help strong{color:#64748b}.guest-link-page{width:min(560px,100%);min-width:0;max-width:100%;margin:0 auto}.guest-link-shell main.shell{padding-left:max(12px, var(--page-gutter,16px));padding-right:max(12px, var(--page-gutter,16px));box-sizing:border-box;max-width:100%;overflow-x:clip}.guest-intake-nav{align-items:stretch;gap:12px;width:100%;margin-top:8px;display:flex}.guest-intake-nav-back,.guest-intake-nav-continue{border-radius:var(--radius-sm);min-width:0;min-height:48px;font-family:var(--font-ui);text-align:center;cursor:pointer;box-sizing:border-box;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast), transform var(--transition-fast);flex:1 1 0;justify-content:center;align-items:center;gap:8px;padding:12px 14px;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex}.guest-intake-nav-back{color:#3f4f46;background:#fff;border:1px solid #2e8b5747}.guest-intake-nav-back:hover{color:#2a3a32;background:#f4f9f6;border-color:#2e8b5773}.guest-intake-nav-continue{background:var(--primary);color:#fff;border:1.5px solid var(--primary-hover,#1f5e3b);box-shadow:0 1px 2px #1a2e1a1f}.guest-intake-nav-continue:hover:not(:disabled){background:var(--primary-hover)}.guest-intake-nav-continue:active:not(:disabled){transform:translateY(1px)}.guest-intake-nav-continue:disabled{opacity:.7;cursor:not-allowed}.guest-intake-nav-continue.is-solo{flex:100%}.guest-intake-nav-secondary{border-radius:var(--radius-sm);color:#64748b;min-height:44px;font-family:var(--font-ui);cursor:pointer;background:0 0;border:1px solid #cbd5e1;flex:100%;justify-content:center;align-items:center;margin-top:4px;padding:10px 14px;font-size:.9rem;font-weight:600;display:inline-flex}.guest-intake-nav-secondary:hover:not(:disabled){color:#475569;background:#f8fafc}.guest-intake-nav-secondary:disabled{opacity:.65;cursor:not-allowed}.guest-link-card{background:var(--panel,#fff);border:1px solid var(--panel-border);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow);font-family:var(--font-ui);padding:clamp(22px,4vw,32px)}.guest-link-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--primary);font-size:.78rem;font-weight:700;font-family:var(--font-ui);margin:0 0 8px}.guest-link-card h2{letter-spacing:-.02em;color:var(--text-heading);font-size:clamp(1.45rem,3vw,1.85rem);line-height:1.2;font-family:var(--font-brand);margin:0}.guest-link-lead{color:var(--muted);font-size:.98rem;line-height:1.55;font-family:var(--font-body);margin:10px 0 0}.guest-link-lead strong{color:var(--text);font-weight:700;font-family:var(--font-ui)}.guest-link-clinic{border-radius:var(--radius-sm);background:var(--bg-sage);border:1px solid var(--panel-border);color:var(--text-heading);font-size:.82rem;font-weight:600;font-family:var(--font-ui);align-items:center;gap:8px;margin-top:16px;padding:8px 12px;display:inline-flex}.guest-link-form{gap:14px;margin-top:22px;display:grid}.guest-link-row{gap:14px;display:grid}@media (min-width:520px){.guest-link-row.is-split{grid-template-columns:1fr 1fr}}.guest-link-field{color:var(--text);font-size:.875rem;font-weight:600;font-family:var(--font-ui);gap:6px;display:grid}.guest-link-field input,.guest-link-field select{border-radius:var(--radius-sm);width:100%;color:var(--text);font-size:1rem;font-weight:500;font-family:var(--font-ui);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;border:1px solid #2e8b5738;padding:11px 12px}.guest-link-field input:focus,.guest-link-field select:focus{border-color:var(--primary);box-shadow:var(--shadow-focus);outline:none}.guest-link-field input::placeholder{color:var(--muted-soft);font-weight:400}.guest-link-hint{color:var(--muted);margin:0;font-size:.8rem;font-weight:500;line-height:1.4}.guest-link-error{border-radius:var(--radius-sm);color:#9a3412;background:#fff1ec;border:1px solid #f1c0b0;margin:0;padding:10px 12px;font-size:.875rem;font-weight:600;line-height:1.4}.guest-link-submit{border-radius:var(--radius-sm);background:var(--primary);color:#fff;font-size:.98rem;font-weight:700;font-family:var(--font-ui);cursor:pointer;transition:background var(--transition-fast), opacity var(--transition-fast), transform var(--transition-fast);border:none;margin-top:4px;padding:13px 18px}.guest-link-submit:hover:not(:disabled){background:var(--primary-hover)}.guest-link-submit:active:not(:disabled){transform:translateY(1px)}.guest-link-submit:disabled{opacity:.7;cursor:not-allowed}.guest-link-loading,.guest-link-unavailable{background:var(--panel,#fff);border:1px solid var(--panel-border);border-radius:calc(var(--radius) + 4px);width:min(560px,100%);box-shadow:var(--shadow);font-family:var(--font-ui);margin:0 auto;padding:clamp(22px,4vw,32px)}.guest-link-loading p,.guest-link-unavailable p{color:var(--muted);line-height:1.5;font-family:var(--font-body);margin:10px 0 0}.guest-link-unavailable h2{font-family:var(--font-brand);color:var(--text-heading);margin:0}.guest-link-progress{border-top:1px solid var(--panel-border);margin-top:22px;padding-top:16px}.guest-link-progress.is-sticky{z-index:40;padding:12px var(--page-gutter,20px) calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--panel-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;margin:0;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #1a2e1a0f}.guest-link-progress.is-sticky .guest-link-progress-track{max-width:560px;margin:0 auto}.guest-link-progress.is-sticky .guest-link-progress-text{margin-top:8px}.guest-link-progress-track{background:#2e8b571f;border-radius:999px;height:6px;overflow:hidden}.guest-link-progress-fill{border-radius:inherit;background:var(--primary);height:100%;transition:width .35s;display:block}.guest-link-progress-text{color:var(--muted);font-size:.82rem;font-weight:600;font-family:var(--font-ui);text-align:center;margin:10px 0 0}.guest-link-progress-label{color:var(--text);font-weight:700}.guest-upload-panel{border:1px solid var(--panel-border);background:var(--bg-sage,#f4f9f6);border-radius:8px;margin:20px 0 0;padding:14px 16px}.guest-upload-panel-title{letter-spacing:.02em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:700;font-family:var(--font-ui);margin:0 0 8px}.guest-upload-panel-list{color:var(--text);font-family:var(--font-ui);margin:0;padding:0 0 0 1.1rem;font-size:.9rem;line-height:1.55}.guest-upload-panel-list li+li{margin-top:2px}.guest-upload-panel-note{color:var(--muted);font-size:.82rem;line-height:1.45;font-family:var(--font-ui);margin:10px 0 0}.guest-upload-actions{flex-direction:column;gap:14px;margin-top:22px;display:flex}.guest-upload-skip{appearance:none;width:100%;color:var(--muted);font-family:var(--font-ui);text-align:center;text-underline-offset:3px;cursor:pointer;background:0 0;border:none;margin:0;padding:8px 4px;font-size:.88rem;font-weight:600;text-decoration:underline;display:block}.guest-upload-skip:hover:not(:disabled){color:var(--text)}.guest-upload-skip:disabled{opacity:.65;cursor:not-allowed}.guest-policy-legal{border:1px solid var(--panel-border);border-radius:var(--radius-sm);background:var(--bg-sage,#f4f9f6);flex-direction:column;gap:12px;margin:0;padding:12px 14px;display:flex}.guest-policy-legal legend{color:var(--muted);font-size:.8rem;font-weight:700;font-family:var(--font-ui);padding:0 4px}.guest-policy-check{color:var(--text);font-size:.88rem;font-weight:500;font-family:var(--font-ui);cursor:pointer;align-items:flex-start;gap:10px;line-height:1.5;display:flex}.guest-policy-check input{flex-shrink:0;width:16px;height:16px;margin-top:3px}.guest-policy-doc-link{color:var(--primary);font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:none;margin:0;padding:0;font-weight:700;text-decoration:underline;display:inline}.guest-policy-doc-link:hover,.guest-policy-doc-link.is-opened{color:var(--primary-hover)}.guest-policy-modal{z-index:2000;background:#fff;flex-direction:column;display:flex;position:fixed;inset:0}.guest-policy-modal-header{padding:14px var(--page-gutter,20px);border-bottom:1px solid var(--panel-border);background:#fffffff7;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.guest-policy-modal-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--primary);font-size:.72rem;font-weight:700;font-family:var(--font-ui);margin:0}.guest-policy-modal-header h3{color:var(--text-heading);font-size:clamp(1.15rem,2.5vw,1.4rem);font-family:var(--font-brand);margin:4px 0 0}.guest-policy-modal-close{border-radius:var(--radius-sm);background:var(--bg-sage);color:var(--text);font-size:.85rem;font-weight:700;font-family:var(--font-ui);cursor:pointer;border:1px solid #2e8b5738;flex-shrink:0;padding:8px 12px}.guest-policy-modal-body{padding:22px var(--page-gutter,20px) 28px;color:var(--text);font-size:.98rem;line-height:1.65;font-family:var(--font-body);-webkit-overflow-scrolling:touch;background:linear-gradient(#f7fbf8 0%,#fff 120px);flex:1;overflow:auto}.guest-policy-modal-body h1,.guest-policy-modal-body h2,.guest-policy-modal-body h3{font-family:var(--font-brand);color:var(--text-heading);overflow-wrap:anywhere}.guest-policy-html{overflow-wrap:anywhere;word-break:break-word;max-width:100%}.guest-policy-html img,.guest-policy-html video,.guest-policy-html iframe{max-width:100%;height:auto}.guest-policy-html table{-webkit-overflow-scrolling:touch;max-width:100%;display:block;overflow-x:auto}.guest-policy-html pre{white-space:pre-wrap;max-width:100%;overflow-x:auto}@media (max-width:480px){.guest-link-card{padding:18px 14px}.guest-intake-nav{gap:8px}.guest-intake-nav-back,.guest-intake-nav-continue{padding:12px 10px;font-size:.88rem}.guest-policy-modal-header{padding:12px 14px}.guest-policy-modal-body{padding:16px 14px 22px;font-size:.94rem}}.guest-policy-modal-footer{padding:12px var(--page-gutter,20px) 16px;border-top:1px solid var(--panel-border);background:#fff}.guest-policy-modal-footer .guest-link-submit{width:100%;margin-top:0}.guest-maf-page{box-sizing:border-box;width:min(740px,100%);min-width:0;max-width:100%;margin:0 auto;padding-bottom:72px}.guest-maf-card{background:var(--panel,#fff);border:1px solid var(--panel-border);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow);font-family:var(--font-ui);min-width:0;padding:clamp(22px,3.5vw,32px)}.guest-maf-title{letter-spacing:-.02em;color:var(--text-heading,#0f172a);font-size:clamp(1.45rem,3vw,1.85rem);line-height:1.2;font-family:var(--font-brand,Georgia, serif);margin:0}.guest-maf-lead{color:var(--muted);font-size:.98rem;line-height:1.55;font-family:var(--font-body,Georgia, serif);margin:10px 0 0}.guest-maf-loading{color:var(--muted);font-family:var(--font-ui);margin:24px 0 0;font-size:.95rem}.guest-maf-form-wrap{min-width:0;margin-top:22px}.guest-maf-form-wrap .maf-form-container{max-width:100%;color:var(--text,#0f172a);font-family:var(--font-ui,system-ui, sans-serif);background:0 0;margin:0;padding:0;font-size:.95rem}.guest-maf-form-wrap .maf-form-header{text-align:left;background:0 0;border-bottom:1px solid #2e8b5724;margin-bottom:18px;padding:0 0 14px}.guest-maf-form-wrap .maf-form-header h1{font-family:var(--font-brand,Georgia, serif);letter-spacing:-.01em;color:var(--text-heading,#0f172a);margin:0 0 6px;font-size:clamp(1.15rem,2.4vw,1.35rem);font-weight:700}.guest-maf-form-wrap .maf-form-subtitle{font-family:var(--font-ui);color:var(--muted);margin:0 0 6px;font-size:.9rem;font-style:normal;font-weight:500;line-height:1.45}.guest-maf-form-wrap .maf-form-header p{font-family:var(--font-ui)}@media (max-width:520px){.guest-maf-card{padding:18px 14px}.guest-maf-page{padding-bottom:88px}}
