.pp-wrap{margin-top:4px}.pp-head{margin-bottom:16px}.pp-title{font-size:var(--text-md);color:var(--pathway-ink);letter-spacing:-.02em;margin:0;font-weight:800}.pp-lead{font-size:var(--text-sm);color:var(--c-ink-500);max-width:52ch;margin:8px 0 0;line-height:1.6}.pp-muted{font-size:var(--text-sm);color:var(--c-ink-400)}.pp-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.pp-card{border-radius:var(--premium-radius-lg);border:1px solid var(--premium-border);background:var(--premium-surface-muted);box-shadow:var(--premium-shadow-sm);transition:box-shadow .2s var(--premium-ease), transform .15s var(--premium-ease);padding:20px 22px;position:relative;overflow:hidden}.pp-card:before{content:"";background:linear-gradient(90deg, var(--c-teal-600), var(--c-teal-300));opacity:.75;height:3px;position:absolute;top:0;left:0;right:0}.pp-card:hover{box-shadow:var(--premium-shadow-md);transform:translateY(-2px)}.pp-card--expired{opacity:.72;border-style:dashed}.pp-card--expired:before{background:var(--c-ink-300)}.pp-tier-name{letter-spacing:.1em;text-transform:uppercase;color:var(--c-ink-500);margin:0;font-size:10px;font-weight:800}.pp-price{color:var(--pathway-ink);letter-spacing:-.03em;margin:10px 0 0;font-size:1.5rem;font-weight:800}.pp-yearly{font-size:var(--text-xs);color:var(--c-ink-400);margin:4px 0 0}.pp-summary{font-size:var(--text-sm);color:var(--c-ink-600);margin:12px 0 0;line-height:1.55}.pp-expiry{font-size:var(--text-xs);color:var(--c-warn-600);margin:12px 0 0;font-weight:700}.pp-expiry--past{color:var(--c-error-700)}:root{--cp-brand:#0e7490;--cp-brand-light:#3d7db0;--cp-ink:#0f172a;--cp-muted:#64748b;--cp-surface:#fff;--cp-border:#0f172a14;--cp-shadow-sm:0 1px 2px #0f172a0a, 0 6px 16px #0f172a0d;--cp-shadow-md:0 4px 8px #0f172a0a, 0 16px 40px #0f172a14;--cp-shadow-lg:0 8px 20px #0f172a0f, 0 28px 56px #0f172a1a;--cp-radius:14px;--cp-radius-lg:18px}.cp-wrap{flex-direction:column;display:flex}.cp-body--narrow{max-width:580px}.cp-stats-row{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;display:grid}.cp-stat{background:var(--cp-surface);border:1px solid var(--cp-border);border-radius:var(--cp-radius);box-shadow:var(--cp-shadow-sm);flex-direction:column;gap:6px;padding:20px 22px;transition:box-shadow .2s,transform .15s;display:flex;position:relative;overflow:hidden}.cp-stat:before{content:"";background:linear-gradient(90deg, var(--cp-brand), var(--cp-brand-light));opacity:.75;height:3px;position:absolute;top:0;left:0;right:0}.cp-stat:hover{box-shadow:var(--cp-shadow-md);transform:translateY(-2px)}.cp-stat-val{color:var(--cp-ink);letter-spacing:-.03em;font-size:2rem;font-weight:800;line-height:1}.cp-stat-label{color:var(--cp-muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.cp-card{background:var(--portal-elevated,var(--cp-surface));border:1px solid var(--portal-elevated-border,var(--cp-border));border-radius:var(--cp-radius);box-shadow:var(--portal-elevated-shadow,var(--cp-shadow-sm));margin-bottom:16px;padding:22px 24px;transition:box-shadow .2s,border-color .15s}.cp-card:hover{box-shadow:0 2px 4px #0f172a0d,0 8px 24px #0f172a12}.cp-card-head{align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.cp-card-icon{margin-top:1px;font-size:22px}.cp-card-title{color:#0f172a;margin:0 0 3px;font-size:14px;font-weight:700}.cp-card-desc{color:#94a3b8;margin:0 0 14px;font-size:12px}.cp-invite-card{background:linear-gradient(135deg,#f0f9ff 0%,#ecfeff 100%);border-color:#a5f3fc}.cp-invite-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cp-invite-url{color:#475569;white-space:nowrap;text-overflow:ellipsis;background:#fff;border:1.5px solid #cffafe;border-radius:9px;flex:1;min-width:0;padding:9px 13px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;display:block;overflow:hidden}.cp-copy-btn{color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:9px;flex-shrink:0;padding:9px 18px;font-family:inherit;font-size:12px;font-weight:600;transition:opacity .14s}.cp-copy-btn:hover{opacity:.88}.cp-copy-btn:disabled{opacity:.45;cursor:not-allowed}.cp-copy-btn.copied{background:#10b981!important}.cp-quick-actions{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.cp-action-card{background:var(--cp-surface);border:1px solid var(--cp-border);cursor:pointer;box-shadow:var(--cp-shadow-sm);text-align:left;border-radius:12px;align-items:center;gap:10px;padding:14px 16px;font-family:inherit;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.cp-action-card:hover{box-shadow:var(--cp-shadow-md);border-color:#0e749047;transform:translateY(-2px)}.cp-action-icon{font-size:20px}.cp-action-label{color:#0f172a;flex:1;font-size:13px;font-weight:600}.cp-action-arrow{color:#94a3b8;font-size:14px}.cp-search{box-sizing:border-box;color:#0f172a;background:#f8fafc;border:1.5px solid #dde4f0;border-radius:9px;outline:none;width:100%;margin-bottom:16px;padding:9px 13px;font-family:inherit;font-size:13px;transition:border-color .14s,box-shadow .14s}.cp-search:focus{background:#fff;border-color:#0e7490;box-shadow:0 0 0 3px #0e74901a}.cp-table{border-collapse:collapse;width:100%}.cp-table th{text-align:left;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;border-bottom:1.5px solid #e8ecf4;padding:6px 12px 10px 0;font-size:11px;font-weight:700}.cp-table td{color:#0f172a;vertical-align:middle;border-bottom:1px solid #f0f3f9;padding:11px 12px 11px 0;font-size:13px}.cp-table tr:last-child td{border-bottom:none}.cp-table tbody tr:hover td{background:#f8faff}.cp-client-cell{align-items:center;gap:10px;display:flex}.cp-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:flex}.cp-avatar-sm{width:28px;height:28px;font-size:11px}.cp-mood-pip{border-radius:50%;width:8px;height:8px;display:inline-block}.cp-mood-5{background:#10b981}.cp-mood-4{background:#6ee7b7}.cp-mood-3{background:#fbbf24}.cp-mood-2{background:#f97316}.cp-mood-1{background:#ef4444}.cp-mood-none{background:#e2e8f0}.cp-member-list{flex-direction:column;gap:0;display:flex}.cp-member-row{border-bottom:1px solid #f0f3f9;align-items:center;gap:12px;padding:12px 0;display:flex}.cp-member-row:last-child{border-bottom:none}.cp-member-info{flex:1;min-width:0}.cp-member-name{color:#0f172a;font-size:14px;font-weight:600}.cp-member-email{color:#94a3b8;font-size:12px}.cp-role-badge{border-radius:20px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:600}.cp-role-admin{color:#0e7490;background:#ecfeff}.cp-role-therapist{color:#15803d;background:#f0fdf4}.cp-remove-btn{color:#94a3b8;cursor:pointer;background:0 0;border:1px solid #dde4f0;border-radius:7px;flex-shrink:0;padding:4px 10px;font-family:inherit;font-size:11px;transition:border-color .14s,color .14s}.cp-remove-btn:hover{color:#ef4444;border-color:#ef4444}.cp-invite-form{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:4px;display:flex}.cp-form-field{flex-direction:column;flex:1;gap:5px;min-width:160px;display:flex}.cp-form-field--narrow{flex:0 0 160px;max-width:160px}.cp-form-field--full{grid-column:1/-1}.cp-form-field label{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.cp-form-field input,.cp-form-field select{color:#0f172a;background:#fff;border:1.5px solid #dde4f0;border-radius:9px;outline:none;padding:9px 12px;font-family:inherit;font-size:13px;transition:border-color .14s,box-shadow .14s}.cp-form-field input:focus,.cp-form-field select:focus{border-color:#0e7490;box-shadow:0 0 0 3px #0e74901a}.cp-field-hint{color:#94a3b8;margin-top:4px;font-size:.75rem;display:block}.cp-form-error{color:#ef4444;margin:8px 0 0;font-size:12px}.cp-btn-primary{color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:9px;align-self:flex-end;padding:9px 20px;font-family:inherit;font-size:13px;font-weight:600;transition:opacity .14s}.cp-btn-primary:disabled{opacity:.5;cursor:not-allowed}.cp-btn-primary:hover:not(:disabled){opacity:.88}.cp-settings-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px;display:grid}.cp-color-row{align-items:center;gap:10px;display:flex}.cp-color-row input[type=color]{cursor:pointer;background:#fff;border:1.5px solid #dde4f0;border-radius:8px;flex-shrink:0;width:40px;height:36px;padding:2px}.cp-color-row input[type=text]{border:1.5px solid #dde4f0;border-radius:9px;outline:none;flex:1;padding:9px 12px;font-size:13px;transition:border-color .14s}.cp-color-row input[type=text]:focus{border-color:#0e7490}.cp-color-preview{border:1.5px solid;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;display:flex}.cp-color-preview-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.cp-color-preview-label{color:#94a3b8;margin-left:auto;font-size:11px}.cp-save-row{align-items:center;gap:12px;display:flex}.cp-ok-msg{color:#10b981;font-size:13px;font-weight:600}.cp-err-msg{color:#ef4444;font-size:13px}.cp-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.cp-kpi-card{box-shadow:var(--cp-shadow-sm);background:linear-gradient(#fff 0%,#fbfdff 100%);transition:box-shadow .2s,transform .15s}.cp-kpi-card:hover{box-shadow:var(--cp-shadow-md);transform:translateY(-1px)}.cp-kpi-list{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.cp-kpi-list li{color:#334155;border-bottom:1px dashed #e4ecf5;justify-content:space-between;align-items:center;padding-bottom:6px;font-size:13px;display:flex}.cp-kpi-list li:last-child{border-bottom:none;padding-bottom:0}.cp-kpi-list strong{color:#0f172a;font-weight:700}.cp-pill{letter-spacing:.02em;border:1px solid;border-radius:999px;justify-content:center;align-items:center;padding:3px 10px;font-size:11px;font-weight:800;display:inline-flex}.cp-pill--ready{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.cp-pill--submitted{color:#334155;background:#f1f5f9;border-color:#e2e8f0}.cp-pill--denied{color:#9f1239;background:#fff1f2;border-color:#fecdd3}.cp-pill--paid{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.cp-trend{grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:10px;height:160px;padding-top:10px;display:grid}.cp-trend-bar{flex-direction:column;align-items:center;gap:8px;display:flex}.cp-trend-fill{background:#0e7490;border:1px solid #0f172a14;border-radius:10px;width:100%}.cp-trend-bar span{color:#94a3b8;font-size:11px;font-weight:700}.cp-audit-list{flex-direction:column;gap:10px;display:flex}.cp-audit-row{background:#fff;border:1px solid #eef2fb;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.cp-audit-main{flex:1;min-width:0}.cp-audit-title{color:#0f172a;font-size:13px;font-weight:800}.cp-audit-sub{color:#94a3b8;margin-top:2px;font-size:12px}.cp-sev{text-align:center;border:1px solid;border-radius:999px;flex-shrink:0;width:54px;padding:4px 0;font-size:10px;font-weight:900}.cp-sev--low{color:#334155;background:#f1f5f9;border-color:#e2e8f0}.cp-sev--med{color:#92400e;background:#fffbeb;border-color:#fde68a}.cp-sev--high{color:#9f1239;background:#fff1f2;border-color:#fecdd3}.cp-mini-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #dde4f0;border-radius:10px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:700}.cp-mini-btn:hover{border-color:#a5f3fc}.cp-docs{flex-direction:column;gap:10px;display:flex}.cp-doc-row{background:#fff;border:1px solid #eef2fb;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.cp-doc-title{color:#0f172a;font-size:13px;font-weight:800}.cp-doc-sub{color:#94a3b8;margin-top:2px;font-size:12px}.cp-weekmap{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.cp-weekmap-col{background:#fff;border:1px solid #eef2fb;border-radius:12px;padding:10px}.cp-weekmap-head{color:#0f172a;margin-bottom:8px;font-size:12px;font-weight:900}.cp-weekmap-slot{background:#f8fafc;border:1px dashed #dbe5f2;border-radius:10px;justify-content:space-between;gap:8px;margin-bottom:8px;padding:8px 10px;display:flex}.cp-weekmap-slot--muted{background:#f1f5f9;border-color:#e2e8f0}.cp-weekmap-slot span{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:900}.cp-weekmap-slot strong{color:#0f172a;font-size:12px}.cp-check{border:1px solid;border-radius:7px;justify-content:center;align-items:center;width:22px;height:22px;font-weight:900;display:inline-flex}.cp-check.on{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.cp-check.off{color:#64748b;background:#f1f5f9;border-color:#e2e8f0}.cp-modal-overlay{z-index:60;background:#0f172a80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.cp-modal-card{background:#fff;border:1.5px solid #e8ecf4;border-radius:16px;flex-direction:column;gap:10px;width:100%;max-width:520px;padding:18px 20px;display:flex;box-shadow:0 20px 48px #0f172a40}.cp-modal-card h3{color:#0f172a;margin:0 0 2px;font-size:1.02rem;font-weight:800}.cp-modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.cp-muted{color:#94a3b8}.cp-sm{font-size:12px}.cp-empty{text-align:center;border-radius:var(--cp-radius-lg);background:radial-gradient(80% 60% at 50% 0,#0e749014 0%,#0000 70%),linear-gradient(#ffffffeb 0%,#f8fafce0 100%);border:1.5px dashed #0e749038;flex-direction:column;justify-content:center;align-items:center;gap:10px;margin:8px 0;padding:56px 28px;animation:.4s cubic-bezier(.22,1,.36,1) both cp-empty-in;display:flex;box-shadow:inset 0 1px #fffc}@keyframes cp-empty-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}.cp-empty-icon{background:linear-gradient(145deg,#0e749024 0%,#b8e4f459 100%);border:1px solid #0e74902e;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:6px;font-size:2rem;line-height:1;display:flex;box-shadow:0 8px 24px #0e74901f,inset 0 1px #ffffffb3}.cp-empty h3{color:var(--cp-ink);letter-spacing:-.02em;margin:0;font-size:1.05rem;font-weight:800}.cp-empty p{color:var(--cp-muted);max-width:360px;margin:0;font-size:.875rem;line-height:1.65}@media (prefers-reduced-motion:reduce){.cp-body,.cp-empty,.cp-stat,.cp-card{transition:none!important;animation:none!important}}.cp-denied-wrap{text-align:center;color:#64748b;max-width:440px;margin:80px auto;padding:20px}.cp-denied-icon{margin-bottom:14px;font-size:40px}.cp-denied-wrap h2{color:#0f172a;margin:0 0 10px;font-size:18px}.cp-denied-wrap p{margin:0 0 20px;font-size:14px}.cp-back-link{color:#0e7490;font-size:13px;font-weight:600;text-decoration:none}.cp-sk-list{flex-direction:column;gap:8px;display:flex}.cp-sk{background:linear-gradient(90deg,#e8ecf4 25%,#f4f6fb 50%,#e8ecf4 75%) 0 0/200% 100%;border-radius:6px;animation:1.4s infinite cp-shimmer}@keyframes cp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (width<=860px){.cp-stats-row,.cp-quick-actions{grid-template-columns:1fr 1fr}.cp-premium-grid{grid-template-columns:1fr}.cp-trend{grid-template-columns:repeat(5,minmax(0,1fr))}.cp-weekmap{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.cp-stats-row{grid-template-columns:1fr 1fr}.cp-quick-actions,.cp-settings-grid{grid-template-columns:1fr}.cp-invite-form{flex-direction:column}.cp-form-field--narrow{flex:1;max-width:100%}}.cp-welcome-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.cp-welcome-modal{background:#fff;border-radius:16px;width:min(480px,100%);padding:28px 28px 24px;box-shadow:0 24px 64px #0f172a2e}.cp-welcome-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:#0e7490;margin:0 0 8px;font-size:12px;font-weight:700}.cp-welcome-title{color:#0f172a;margin:0 0 12px;font-size:1.35rem;font-weight:800;line-height:1.25}.cp-welcome-body{color:#475569;margin:0 0 16px;font-size:14px;line-height:1.55}.cp-welcome-list{color:#334155;margin:0 0 22px;padding-left:20px;font-size:13px;line-height:1.6}.cp-welcome-actions{flex-direction:column;gap:10px;display:flex}.cp-welcome-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0e7490,#0891b2);border:none;border-radius:10px;padding:12px 16px;font-size:14px;font-weight:700}.cp-pending-list{flex-direction:column;gap:10px;display:flex}.cp-pending-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.cp-pending-email{color:#0f172a;font-size:14px;font-weight:700}.cp-pending-meta{color:#64748b;margin-top:2px;font-size:12px}.cp-pending-badge{color:#92400e;background:#fef9c3;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:700}.cp-pending-badge--expired{color:#991b1b;background:#fee2e2}.cd-panel{flex-direction:column;gap:16px;display:flex}.cd-panel-head{margin-bottom:4px}.cd-panel-title{color:#0f172a;margin:0;font-size:1rem;font-weight:800}.cd-panel-sub{color:#94a3b8;margin:4px 0 0;font-size:.78rem}.cd-alert{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;padding:12px 14px;font-size:.85rem}.cd-alert p{margin:4px 0 0;font-size:.8rem}.cd-upload-card{background:#fafbfd;border:1.5px solid #e8ecf4;border-radius:14px;padding:16px}.cd-upload-label{letter-spacing:.06em;text-transform:uppercase;color:#6b7a99;margin:0 0 10px;font-size:.72rem;font-weight:700}.cd-upload-fields{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}.cd-select,.cd-input{background:#fff;border:1.5px solid #dde2ee;border-radius:10px;padding:9px 12px;font-family:inherit;font-size:.88rem}.cd-input{flex:1;min-width:160px}.cd-upload-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cd-muted{color:#94a3b8;margin:0;font-size:.82rem}.cd-empty{text-align:center;color:#94a3b8;border:1px dashed #dde2ee;border-radius:12px;padding:24px;font-size:.88rem}.cd-list{flex-direction:column;gap:10px;display:flex}.cd-row{background:#fff;border:1px solid #e8ecf4;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;display:flex}.cd-row-main{flex:1;min-width:180px}.cd-row-title{color:#0f172a;font-size:.9rem;font-weight:700}.cd-row-sub{color:#94a3b8;margin-top:2px;font-size:.76rem}.cd-status{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:700}.cd-status--draft{color:#64748b;background:#f1f5f9}.cd-status--sent{color:#b45309;background:#fef3c7}.cd-status--signed{color:#15803d;background:#dcfce7}.cd-row-actions{flex-wrap:wrap;gap:6px;display:flex}.cd-btn{cursor:pointer;color:#334155;background:#fff;border:1px solid #dde2ee;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:.78rem;font-weight:600}.cd-btn:hover{background:#f8fafc}.cd-btn.primary{color:#fff;background:linear-gradient(135deg,#1e4d7b,#3d7db0);border:none}.cd-btn.ghost{background:0 0}.cd-btn.danger{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.tcal{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex}.tcal-page-head{flex-direction:column;gap:14px;display:flex}.tcal-page-title{color:var(--edu-ink,#1a1b1f);margin:0;font-size:1.35rem;font-weight:800}.tcal-subbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.tcal-subbar-left{flex-wrap:wrap;align-items:center;gap:10px 14px;min-width:0;display:flex}.tcal-month{color:var(--edu-ink,#1a1b1f);font-size:.95rem;font-weight:800}.tcal-range{color:var(--edu-muted,#6b7280);font-size:.78rem}.tcal-nav{gap:4px;display:flex}.tcal-nav-btn{border:1px solid var(--edu-line,#e5e7eb);cursor:pointer;width:34px;height:34px;color:var(--edu-ink);background:#fff;border-radius:8px;font-size:1.05rem;line-height:1}.tcal-nav-btn--text{width:auto;padding:0 12px;font-size:.78rem;font-weight:700}.tcal-segment{background:var(--edu-line-soft,#f3f4f6);border-radius:10px;padding:3px;display:flex}.tcal-segment-btn{color:var(--edu-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 14px;font-size:.78rem;font-weight:700}.tcal-segment-btn.is-active{color:var(--edu-ink);background:#fff;box-shadow:0 1px 4px #00000014}.tcal-primary{background:var(--c-teal-600,#3d7db0);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;padding:10px 18px;font-size:.82rem;font-weight:800}.tcal-board{box-shadow:var(--edu-card-shadow,0 2px 8px #0f172a0a);border:1px solid var(--edu-line,#e5e7eb);background:#fff;border-radius:22px;flex-direction:column;flex:0 auto;display:flex;overflow:hidden}.tcal-loading,.tcal-empty-hint{color:var(--edu-muted);padding:16px 20px;font-size:.84rem}.tcal-empty-hint{border-top:1px solid var(--edu-line)}.tcal-table-wrap{overflow:auto visible}.tcal-table{border-collapse:collapse;width:100%;min-width:640px;display:grid}.tcal-th{border-bottom:1px solid var(--edu-line,#e5e7eb);border-right:1px solid var(--edu-line,#e5e7eb);background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:52px;padding:8px 6px;display:flex}.tcal-th--corner{border-right:1px solid var(--edu-line)}.tcal-th:last-child{border-right:none}.tcal-th.is-today .tcal-th-date{background:var(--c-teal-600,#3d7db0);color:#fff}.tcal-th-dow{color:var(--edu-muted,#6b7280);text-align:center;font-size:.72rem;font-weight:700;line-height:1.2}.tcal-th-date{min-width:28px;height:28px;color:var(--edu-ink);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.88rem;font-weight:800;display:inline-flex}.tcal-table-body{display:block}.tcal-table-inner{align-items:stretch;display:flex}.tcal-time-col{border-right:1px solid var(--edu-line);background:#fff;flex:0 0 64px;width:64px}.tcal-time-row{height:var(--tcal-hour-h,56px);box-sizing:border-box;color:var(--edu-muted);border-bottom:1px solid var(--edu-line,#e5e7eb);justify-content:flex-end;align-items:flex-start;padding:0 8px;font-size:.68rem;font-weight:700;display:flex;transform:translateY(-.45em)}.tcal-time-row:last-child{border-bottom:none}.tcal-day-cols{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));min-width:0;display:grid}.tcal-day-cols--one{grid-template-columns:1fr}.tcal-day-col{border-right:1px solid var(--edu-line);background:#fff;position:relative}.tcal-day-col:last-child{border-right:none}.tcal-day-col.is-today{background:#3d7db008}.tcal-day-grid{height:100%;position:relative}.tcal-cell{width:100%;height:var(--tcal-hour-h,56px);border:none;border-bottom:1px solid var(--edu-line,#e5e7eb);cursor:pointer;background:0 0;margin:0;padding:0;display:block}.tcal-cell:hover{background:#3d7db00f}.tcal-cell:last-child{border-bottom:none}.tcal-events-layer{pointer-events:none;position:absolute;inset:0 6px}.tcal-event{z-index:2;text-align:center;cursor:pointer;pointer-events:auto;box-sizing:border-box;border:none;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;margin:0;padding:6px 8px;display:flex;position:absolute;left:0;right:0;overflow:hidden;box-shadow:0 1px 3px #0f172a14}.tcal-event-title{text-overflow:ellipsis;max-width:100%;font-size:.72rem;font-weight:800;line-height:1.25;display:block;overflow:hidden}.tcal-event-time{opacity:.9;font-size:.62rem;font-weight:700;display:block}.tcal-event-meta{opacity:.85;text-overflow:ellipsis;max-width:100%;font-size:.6rem;font-weight:600;display:block;overflow:hidden}.tcal-event--blue{color:#1d4ed8;background:#dbeafe}.tcal-event--pink{color:#be185d;background:#fce7f3}.tcal-event--purple{color:#6d28d9;background:#ede9fe}.tcal-event--green{color:#15803d;background:#dcfce7}.tcal-event--sky{color:#0369a1;background:#e0f2fe}.tcal-modal-backdrop{z-index:200;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.tcal-modal{background:#fff;border-radius:18px;width:100%;max-width:420px;max-height:90vh;padding:22px;overflow-y:auto;box-shadow:0 24px 60px #0003}.tcal-modal-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.tcal-modal-head h3{margin:0;font-size:1.1rem;font-weight:800}.tcal-modal-close{cursor:pointer;color:var(--edu-muted);background:0 0;border:none;font-size:1.5rem}.tcal-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.tcal-field span{text-transform:uppercase;letter-spacing:.06em;color:var(--edu-muted);font-size:.72rem;font-weight:800}.tcal-field input,.tcal-field select,.tcal-field textarea{border:1px solid var(--edu-line);font:inherit;border-radius:10px;padding:10px 12px}.tcal-field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.tcal-modal-actions{gap:10px;margin-top:8px;display:flex}.tcal-ghost{border:1px solid var(--edu-line);cursor:pointer;background:#fff;border-radius:12px;padding:10px 16px;font-weight:700}.tcal-danger{color:#b91c1c;cursor:pointer;background:0 0;border:none;width:100%;margin-top:12px;padding:10px;font-weight:700}.tcal-table-wrap{--tcal-hour-h:56px}.tp-wrap--schedule .tp-requests-body{flex-direction:column;flex:0 auto;min-height:0;display:flex}.tp-wrap--schedule .tcal{flex:0 auto;height:auto;min-height:0}:root{--portal-workspace-bg:#f2f3f5;--portal-elevated:#fff;--portal-elevated-border:#0f172a0f;--portal-elevated-shadow:0 2px 8px #0f172a0a, 0 12px 28px #0f172a0f;--portal-content-pad-x:28px;--portal-content-pad-y:24px;--portal-frame-max:1280px}.cl-content,.tl-content{background:var(--portal-workspace-bg);flex-direction:column;display:flex}.portal-page-frame{width:100%;min-height:0;max-width:var(--portal-frame-max);padding:var(--portal-content-pad-y) var(--portal-content-pad-x) 32px;box-sizing:border-box;flex-direction:column;flex:1;margin-inline:auto;display:flex}.portal-outlet-loading{color:#64748b;flex:1;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.cp-wrap,.tp-wrap{background:0 0;flex-direction:column;flex:0 auto;width:100%;min-height:0;display:flex}.tp-wrap--clients,.tp-wrap--schedule,.tp-wrap--dashboard,.tp-wrap--fill{flex:1 1 0;min-height:0}.tp-wrap--clients{overflow:hidden}.tp-wrap--content{flex:0 auto}.tp-wrap--content .tp-requests-body{flex-direction:column;flex:none;align-items:stretch;gap:16px;padding-top:2px;display:flex}.tp-wrap--content .tp-page-sub+.tp-premium-card,.tp-wrap--content .tp-page-sub+.tp-chart-panel,.tp-wrap--content .tp-page-sub+.cd-panel{margin-top:0}.tp-wrap--content .tp-chart-panel,.tp-wrap--content .cd-panel,.tp-wrap--content .tp-empty{flex:none}.tp-wrap--clients .tp-clients-stage{flex:1 1 0;max-width:none;margin:0;padding:0}.cp-body,.tp-requests-body{box-sizing:border-box;width:100%;max-width:none;margin:0;padding:0}:root{--tp-brand:#1e4d7b;--tp-brand-light:#3d7db0;--tp-ink:#0f172a;--tp-muted:#64748b;--tp-surface:#fff;--tp-border:#0f172a14;--tp-shadow-sm:0 1px 2px #0f172a0a, 0 6px 16px #0f172a0d;--tp-shadow-md:0 4px 8px #0f172a0a, 0 16px 40px #0f172a14;--tp-shadow-lg:0 8px 20px #0f172a0f, 0 28px 56px #0f172a1a;--tp-radius:14px;--tp-radius-lg:18px}.tp-wrap--clients{flex:1 1 0;min-height:0;overflow:hidden}.tp-clients-stage{box-sizing:border-box;flex-direction:column;flex:1 1 0;width:100%;min-height:0;display:flex;overflow:hidden}.tp-clients-error{flex-shrink:0;margin:0 0 12px}.tp-wrap--clients .tp-grid{border:1px solid var(--tp-border);background:var(--tp-surface);width:100%;max-width:none;min-height:0;box-shadow:var(--tp-shadow-md);border-radius:16px;flex:1 1 0;margin:0;overflow:hidden}.tp-wrap--clients .tp-sidebar{background:linear-gradient(#fafbfd 0%,#f4f7fb 100%);width:300px;min-height:0}.tp-wrap--clients .tp-client-list{min-height:0}.tp-wrap--clients .tp-detail{overscroll-behavior:contain;background:linear-gradient(#fff 0%,#f8fafc 100%);flex:1 1 0;min-height:0;padding:18px 24px 20px;overflow:hidden auto}.tp-wrap--clients .tp-detail-card{max-width:960px;margin-inline:auto}.tp-wrap--clients .tp-empty:not(.tp-detail-empty){background:#ffffffd9;border:1px dashed #94a3b859;border-radius:16px;flex-direction:column;flex:1;justify-content:center;align-items:center;margin:0;display:flex}.tp-page-sub{color:var(--tp-muted);max-width:56ch;margin:0 0 20px;padding-top:4px;font-size:.84rem;font-weight:500;line-height:1.55}.tp-body{flex:1;padding:22px 28px 40px;overflow-y:auto}.tp-error{color:#e11d48;background:#fff1f2;border-left:3px solid #e11d48;border-radius:8px;margin:0 0 16px;padding:10px 14px;font-size:.82rem;font-weight:600}.tp-grid{flex:1;gap:0;width:100%;min-height:0;display:flex;overflow:hidden}.tp-sidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid var(--tp-border);background:#ffffffb8;flex-direction:column;flex-shrink:0;width:300px;display:flex;overflow:hidden;box-shadow:4px 0 20px #0f172a0a}.tp-exec-strip{border-bottom:1px solid var(--tp-border);background:linear-gradient(#ffffffe6 0%,#f8fbffd9 100%);grid-template-columns:1fr;gap:8px;padding:14px;display:grid}.tp-exec-card{background:var(--tp-surface);box-shadow:var(--tp-shadow-sm);border:1px solid #3d7db01f;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.tp-exec-card span{text-transform:uppercase;letter-spacing:.05em;color:#7a8aad;font-size:.68rem;font-weight:700}.tp-exec-card strong{color:#1e4d7b;font-size:.95rem}.tp-search-wrap{border-bottom:1px solid var(--tp-border);flex-shrink:0;padding:14px 14px 10px}.tp-search{box-sizing:border-box;background:var(--tp-surface);width:100%;color:var(--tp-ink);border:1px solid #0f172a1a;border-radius:10px;outline:none;padding:10px 12px;font-family:inherit;font-size:.85rem;transition:border-color .15s,box-shadow .15s;box-shadow:inset 0 1px 2px #0f172a0a}.tp-search:focus{background:#fff;border-color:#3d7db0;box-shadow:0 0 0 3px #3d7db01f}.tp-client-list{flex:1;overflow-y:auto}.tp-client-item{cursor:pointer;border-bottom:1px solid #f4f6fb;border-left:3px solid #0000;align-items:center;gap:11px;padding:13px 16px;transition:background .1s,border-color .1s;display:flex}.tp-client-btn{text-align:left;background:0 0;border-top:none;border-right:none;width:100%;font-family:inherit}.tp-client-item:hover{background:#f8faff}.tp-client-item.active{border-left-color:var(--tp-brand-light);background:linear-gradient(90deg,#3d7db01f,#3d7db00a);box-shadow:inset 0 1px #fffc}.tp-client-avatar{color:#fff;background:linear-gradient(145deg,#1e4d7b 0%,#3d7db0 100%);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:.95rem;font-weight:800;display:flex;box-shadow:0 4px 12px #1e4d7b47}.tp-client-info{flex:1;min-width:0}.tp-client-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:.85rem;font-weight:700;display:block;overflow:hidden}.tp-client-age{color:#64748b;font-size:.72rem;display:block}.tp-client-parent{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;display:block;overflow:hidden}.tp-client-meta{color:#94a3b8;align-items:center;gap:5px;margin-top:4px;font-size:.7rem;display:flex}.tp-ms-bar-wrap{background:#e8ecf4;border-radius:9999px;flex-shrink:0;width:36px;height:4px;overflow:hidden}.tp-ms-bar-fill{background:linear-gradient(90deg,#3d7db0,#1e4d7b);border-radius:9999px;height:100%}.tp-client-skeleton{pointer-events:none}.tp-sk{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:6px;animation:1.4s infinite tp-shimmer}.tp-sk-name{width:65%;height:11px}.tp-sk-sub{width:45%;height:9px;margin-top:6px}.tp-sk-block{border-radius:10px;height:72px;margin-bottom:10px}@keyframes tp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.tp-no-results{color:#94a3b8;text-align:center;padding:20px 16px;font-size:.82rem}.tp-detail{overscroll-behavior:contain;background:0 0;flex:1 1 0;min-width:0;min-height:0;padding:20px 24px 28px;overflow:hidden auto}.tp-detail-card{background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:var(--tp-radius-lg);box-shadow:var(--tp-shadow-md);padding:24px 26px 28px;animation:.35s cubic-bezier(.22,1,.36,1) both tp-card-in}@keyframes tp-card-in{0%{opacity:0;transform:translateY(10px)scale(.995)}to{opacity:1;transform:none}}.tp-detail-loading{padding:4px 0}.tp-detail-header{border-bottom:1px solid var(--tp-border);align-items:flex-start;gap:18px;margin-bottom:20px;padding-bottom:20px;display:flex}.tp-detail-avatar{color:#fff;background:linear-gradient(145deg,#1e4d7b 0%,#3d7db0 55%,#5eead4 140%);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.5rem;font-weight:800;display:flex;box-shadow:0 8px 24px #1e4d7b47}.tp-detail-name{color:var(--tp-ink);letter-spacing:-.03em;margin:0 0 4px;font-size:1.35rem;font-weight:800}.tp-detail-sub{color:#94a3b8;margin:0 0 8px;font-size:.82rem}.tp-tags{flex-wrap:wrap;gap:5px;display:flex}.tp-tag{color:#2d5f8c;background:#eef3fa;border:1px solid #c7ddef;border-radius:20px;padding:3px 10px;font-size:.7rem;font-weight:700}.tp-stats{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:22px;display:grid}.tp-stat{border:1px solid var(--tp-border);border-radius:var(--tp-radius);text-align:center;box-shadow:var(--tp-shadow-sm);background:linear-gradient(#fff 0%,#f8fbff 100%);padding:14px 10px;transition:transform .12s,box-shadow .12s}.tp-stat:hover{box-shadow:var(--tp-shadow-md);transform:translateY(-1px)}.tp-stat-val{color:var(--tp-ink);letter-spacing:-.03em;font-size:1.35rem;font-weight:900;line-height:1.1;display:block}.tp-stat-label{text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;margin-top:3px;font-size:.64rem;font-weight:700;display:block}.tp-tabs{border:1px solid var(--tp-border);background:#f1f5f9e6;border-radius:12px;gap:4px;margin-bottom:20px;padding:4px;display:flex;box-shadow:inset 0 1px 2px #0f172a0a}.tp-tab{color:var(--tp-muted);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;padding:9px 12px;font-family:inherit;font-size:.8rem;font-weight:700;transition:background .2s,color .2s,box-shadow .2s,transform .15s;position:relative}.tp-tab:hover:not(.active){color:var(--tp-brand);background:#ffffff73}.tp-tab.active{background:var(--tp-surface);color:var(--tp-brand);box-shadow:var(--tp-shadow-sm);transform:translateY(-1px)}.tp-section{animation:.24s cubic-bezier(.22,1,.36,1) both tp-panel-in}@keyframes tp-panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.tp-section,.tl-content,.tp-stat,.tp-premium-card,.tp-req-card,.tp-detail-card,.tp-empty,.tp-requests-body{transition:none!important;animation:none!important}}.tp-log-list{flex-direction:column;gap:6px;display:flex}.tp-log-row{background:#fff;border:1.5px solid #e8ecf4;border-radius:10px;grid-template-columns:68px 26px 56px 1fr;align-items:start;gap:8px;padding:10px 14px;display:grid}.tp-log-date{color:#64748b;white-space:nowrap;padding-top:1px;font-size:.72rem;font-weight:700}.tp-log-mood{font-size:1.05rem}.tp-log-flags{flex-wrap:wrap;gap:3px;font-size:.82rem;display:flex}.tp-log-note{color:#94a3b8;margin:0;font-size:.72rem;line-height:1.5}.tp-mood-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.tp-mood-great{background:#4ade80}.tp-mood-good{background:#3d7db0}.tp-mood-ok{background:#fbbf24}.tp-mood-hard{background:#fb923c}.tp-mood-rough{background:#f43f5e}.tp-mood-none{background:#e2e8f0}.tp-ms-list{flex-direction:column;gap:10px;display:flex}.tp-ms-item{background:#fff;border:1.5px solid #e8ecf4;border-radius:12px;padding:13px 16px}.tp-ms-item.tp-ms-achieved{background:#f0fdf4;border-color:#bbf7d0}.tp-ms-item.tp-ms-in_progress{background:#fffbeb;border-color:#fde68a}.tp-ms-top{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.tp-ms-title{color:#0f172a;font-size:.85rem;font-weight:700}.tp-ms-badge{text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;border-radius:20px;flex-shrink:0;padding:2px 8px;font-size:.65rem;font-weight:800}.tp-ms-badge-achieved{color:#15803d;background:#dcfce7}.tp-ms-badge-in_progress{color:#b45309;background:#fef3c7}.tp-ms-badge-pending{color:#64748b;background:#f1f5f9}.tp-ms-category{color:#94a3b8;margin-bottom:8px;font-size:.72rem;display:block}.tp-ms-prog-wrap{background:#e8ecf4;border-radius:9999px;height:4px;overflow:hidden}.tp-ms-prog-fill{background:linear-gradient(90deg,#3d7db0,#1e4d7b);border-radius:9999px;height:100%}.tp-act-list{flex-direction:column;gap:8px;display:flex}.tp-act-item{background:#fff;border:1.5px solid #e8ecf4;border-radius:12px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.tp-act-item.done{background:#f0fdf4;border-color:#bbf7d0}.tp-act-check{color:#94a3b8;border:2px solid #e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:1px;font-size:.72rem;font-weight:800;display:flex}.tp-act-item.done .tp-act-check{color:#16a34a;background:#dcfce7;border-color:#4ade80}.tp-act-title{color:#0f172a;font-size:.85rem;font-weight:700;display:block}.tp-act-desc{color:#94a3b8;margin:3px 0 0;font-size:.72rem;line-height:1.5}.tp-notes{color:#0f172a;background:linear-gradient(135deg,#fef3c766,#eef3fa66);border-left:3px solid #3d7db0;border-radius:10px;margin-top:18px;padding:12px 16px;font-size:.85rem;line-height:1.6}.tp-notes-label{color:#2d5f8c;text-transform:uppercase;letter-spacing:.07em;margin:0 0 4px;font-size:.65rem;font-weight:800}.tp-ops-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.tp-ops-card{background:#fff;border:1.5px solid #e8ecf4;border-radius:12px;padding:14px}.tp-ops-card h3{text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin:0 0 10px;font-size:.8rem}.tp-ops-card ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tp-ops-card li{color:#334155;justify-content:space-between;font-size:.8rem;display:flex}.tp-ops-card strong{color:#0f172a}.tp-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.tp-premium-card{background:var(--portal-elevated,var(--tp-surface));border:1px solid var(--portal-elevated-border,var(--tp-border));border-radius:var(--tp-radius-lg);box-shadow:var(--portal-elevated-shadow,var(--tp-shadow-sm));padding:20px 22px;position:relative;overflow:hidden}.tp-premium-card:before{content:"";background:linear-gradient(90deg, var(--tp-brand), var(--tp-brand-light));opacity:.85;height:3px;position:absolute;top:0;left:0;right:0}.tp-premium-card--hero{background:linear-gradient(#fffffffa 0%,#f8fbfff5 100%)}.tp-premium-kpi-label{text-transform:uppercase;letter-spacing:.1em;color:var(--tp-muted);margin:0 0 12px;font-size:.68rem;font-weight:800}.tp-premium-kpi-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.tp-premium-kpi span{color:#94a3b8;font-size:.72rem;font-weight:700;display:block}.tp-premium-kpi{box-shadow:var(--tp-shadow-sm);background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #3d7db01a;border-radius:12px;padding:12px 14px}.tp-premium-kpi strong{letter-spacing:-.03em;color:var(--tp-ink);margin-top:2px;font-size:1.5rem;font-weight:900;display:block}.tp-premium-divider{background:#eef2fb;height:1px;margin:12px 0}.tp-premium-subgrid{flex-wrap:wrap;gap:8px;display:flex}.tp-premium-chip{color:#334155;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:5px 10px;font-size:.75rem;font-weight:700}.tp-premium-chip.ok{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.tp-premium-chip.warn{color:#92400e;background:#fffbeb;border-color:#fde68a}.tp-appt{border-bottom:1px solid var(--tp-border);border-radius:10px;align-items:center;gap:12px;padding:12px 4px;transition:background .12s;display:flex}.tp-appt-btn{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:4px 0;font-family:inherit;display:flex}.tp-appt-btn:hover{background:#3d7db00f;border-radius:10px}.tp-appt:last-child{border-bottom:none}.tp-appt-time{color:#64748b;width:54px;font-family:SFMono-Regular,Consolas,monospace;font-size:.82rem;font-weight:700}.tp-appt-main{flex:1;min-width:0}.tp-appt-title{color:#0f172a;font-size:.9rem;font-weight:800}.tp-appt-sub{color:#94a3b8;margin-top:2px;font-size:.78rem}.tp-appt-badge{color:#1e4d7b;white-space:nowrap;background:#3d7db01f;border:1px solid #3d7db038;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:800}.tp-appt-badge--blue{color:#3730a3;background:#eef2ff;border-color:#c7d2fe}.tp-task-row{border-bottom:1px solid #f0f3f9;align-items:flex-start;gap:10px;padding:10px 0;display:flex}.tp-task-row:last-child{border-bottom:none}.tp-task-dot{background:#cbd5e1;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:5px}.tp-task-dot.warn{background:#f59e0b}.tp-task-dot.ok{background:#22c55e}.tp-task-main{flex:1;min-width:0}.tp-task-title{color:#0f172a;font-size:.88rem;font-weight:800}.tp-task-sub{color:#94a3b8;margin-top:2px;font-size:.78rem}.tp-task-pill{color:#991b1b;white-space:nowrap;background:#fee2e2;border:1px solid #fecaca;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:800}.tp-task-pill--mid{color:#92400e;background:#fffbeb;border-color:#fde68a}.tp-signal{border-bottom:1px solid #f0f3f9;padding:10px 0}.tp-signal:last-child{border-bottom:none}.tp-signal-title{color:#0f172a;font-size:.9rem;font-weight:800}.tp-signal-sub{color:#94a3b8;margin-top:2px;font-size:.78rem}.tp-week-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.tp-week-col{background:#fff;border:1px solid #eef2fb;border-radius:12px;padding:10px}.tp-week-head{color:#0f172a;margin-bottom:8px;font-size:.72rem;font-weight:900}.tp-week-slot{background:#f8fafc;border:1px dashed #dbe5f2;border-radius:10px;margin-bottom:8px;padding:9px 10px}.tp-week-slot--muted{background:#f1f5f9;border-color:#e2e8f0}.tp-week-slot-title{color:#0f172a;font-size:.82rem;font-weight:800}.tp-week-slot-sub{color:#94a3b8;margin-top:2px;font-size:.75rem}.tp-schedule-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.tp-schedule-field{flex-direction:column;gap:6px;min-width:0;display:flex}.tp-schedule-field span{text-transform:uppercase;letter-spacing:.06em;color:var(--tp-muted);font-size:.72rem;font-weight:800}.tp-schedule-field input,.tp-schedule-field select{background:#fff;border:1px solid #0f172a1a;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:.875rem}.tp-schedule-field--narrow{max-width:160px}.tp-schedule-submit{align-self:end;height:42px}.tp-schedule-form-actions{grid-column:1/-1;align-items:center;gap:8px;display:flex}.tp-schedule-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.tp-billing-section{margin-bottom:32px}.tp-billing-section--platform{border-top:1px solid var(--tp-border);padding-top:28px}.tp-billing-section-head{margin-bottom:16px}.tp-billing-section-title{color:var(--tp-ink);letter-spacing:-.02em;margin:0 0 6px;font-size:1.15rem;font-weight:800}.tp-billing-section-lead{color:var(--tp-muted);max-width:640px;margin:0;font-size:.875rem;line-height:1.6}.tp-billing-section-lead em{color:var(--tp-brand);font-style:normal;font-weight:700}.tp-invoice-form{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-invoice-list{flex-direction:column;gap:12px;display:flex}.tp-invoice-row{border:1px solid var(--tp-border);background:linear-gradient(#fff 0%,#fbfdff 100%);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 16px;display:flex}.tp-invoice-main{flex:1;min-width:0}.tp-invoice-top{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:4px;display:flex}.tp-invoice-top strong{color:var(--tp-ink);font-size:.92rem}.tp-invoice-status{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:3px 8px;font-size:.68rem;font-weight:800}.tp-invoice-status--draft{color:#64748b;background:#f1f5f9}.tp-invoice-status--sent{color:#1d4ed8;background:#eff6ff}.tp-invoice-status--paid{color:#166534;background:#ecfdf5}.tp-invoice-status--void{color:#991b1b;background:#fef2f2}.tp-invoice-amount{color:var(--tp-ink);letter-spacing:-.02em;font-size:1.25rem;font-weight:800}.tp-invoice-desc{color:#334155;margin:4px 0 0;font-size:.84rem;line-height:1.45}.tp-invoice-meta{color:var(--tp-muted);margin:6px 0 0;font-size:.75rem;line-height:1.5}.tp-invoice-actions{flex-direction:column;flex-shrink:0;gap:6px;display:flex}@media (width<=720px){.tp-invoice-row{flex-direction:column}.tp-invoice-actions{flex-flow:wrap}}.tp-muted-note{color:#94a3b8;margin:10px 0 0;font-size:.78rem}.tp-kanban{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.tp-kanban-col{background:#fff;border:1.5px solid #e8ecf4;border-radius:14px;padding:12px}.tp-kanban-head{text-transform:uppercase;letter-spacing:.07em;color:#64748b;margin-bottom:10px;font-size:.72rem;font-weight:900}.tp-kanban-card{color:#0f172a;background:linear-gradient(#fff 0%,#fbfdff 100%);border:1px solid #eef2fb;border-radius:12px;margin-bottom:8px;padding:10px;font-size:.86rem;font-weight:700;line-height:1.35}.tp-mini-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #dbe5f2;border-radius:8px;padding:4px 8px;font-family:inherit;font-size:.68rem;font-weight:700}.tp-mini-btn.danger{color:#991b1b;background:#fff1f2;border-color:#fecaca}.tp-doc-row{border-bottom:1px solid #f0f3f9;justify-content:space-between;gap:12px;padding:10px 0;display:flex}.tp-doc-row:last-child{border-bottom:none}.tp-doc-row strong{color:#0f172a;font-size:.9rem}.tp-doc-row span{color:#94a3b8;white-space:nowrap;font-size:.78rem}.tp-docq{flex-direction:column;gap:10px;display:flex}.tp-docq-item{background:#fff;border:1px solid #eef2fb;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.tp-docq-sub{color:#94a3b8;margin-top:2px;font-size:.78rem}.tp-docq-pill{white-space:nowrap;border:1px solid;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:900}.tp-docq-pill.warn{color:#92400e;background:#fffbeb;border-color:#fde68a}.tp-docq-pill.ok{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.tp-req-card{background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:var(--tp-radius-lg);box-shadow:var(--tp-shadow-sm);flex-direction:column;gap:12px;margin-bottom:14px;padding:20px 24px;transition:box-shadow .15s,transform .12s;display:flex}.tp-req-card:hover{box-shadow:var(--tp-shadow-md);transform:translateY(-1px)}.tp-req-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.tp-req-name{color:#0f172a;margin:0;font-size:.92rem;font-weight:700}.tp-req-email{color:#6b7a99;margin-left:8px;font-size:.78rem}.tp-req-child{color:#3d7db0;font-weight:600}.tp-req-inquiry-banner{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;margin:0 0 16px;padding:12px 14px;font-size:.82rem;line-height:1.5}.tp-req-sent{color:#9ca8c4;margin:2px 0 0;font-size:.72rem}.tp-req-status{border-radius:20px;flex-shrink:0;padding:3px 11px;font-size:.72rem;font-weight:700}.tp-req-status.accepted{color:#065f46;background:#d1fae5}.tp-req-status.declined{color:#991b1b;background:#fee2e2}.tp-req-status.pending{color:#92400e;background:#fef3c7}.tp-req-message{color:#4b5880;background:#f8f9fd;border-radius:8px;margin:0;padding:9px 13px;font-size:.85rem;font-style:italic}.tp-req-actions{gap:8px;display:flex}.tp-req-btn{cursor:pointer;border:none;border-radius:8px;padding:7px 18px;font-family:inherit;font-size:.82rem;font-weight:600;transition:opacity .12s}.tp-req-btn:disabled{opacity:.5;cursor:not-allowed}.tp-req-btn.accept{color:#fff;background:#10b981}.tp-req-btn.accept:hover:not(:disabled){opacity:.85}.tp-req-btn.decline{color:#4b5880;background:#f0f3f9}.tp-req-btn.decline:hover:not(:disabled){background:#e3e8f4}.tp-req-btn.message{color:#fff;background:linear-gradient(135deg,#1e4d7b,#3d7db0);align-items:center;gap:6px;display:inline-flex}.tp-req-btn.message:hover:not(:disabled){opacity:.88}.tp-profile-card{background:#fff;border:1.5px solid #e8ecf4;border-radius:14px;margin-bottom:16px;padding:22px 26px}.tp-profile-card h3{color:#0f172a;margin:0 0 4px;font-size:.95rem;font-weight:800}.tp-profile-card-desc{color:#6b7a99;margin:0 0 18px;font-size:.8rem}.tp-profile-body{max-width:none}.tp-profile-layout{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:20px;display:grid}.tp-profile-form{flex-direction:column;gap:0;min-width:0;display:flex}.tp-profile-aside{flex-direction:column;gap:16px;display:flex;position:sticky;top:16px}.tp-profile-side-card{background:#fff;border:1.5px solid #e8ecf4;border-radius:14px;padding:18px 20px}.tp-profile-side-label{letter-spacing:.06em;text-transform:uppercase;color:#6b7a99;margin:0 0 4px;font-size:.72rem;font-weight:700}.tp-profile-side-desc{color:#94a3b8;margin:0 0 14px;font-size:.8rem;line-height:1.45}.tp-profile-checklist{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.tp-profile-checklist li{color:#64748b;align-items:center;gap:8px;font-size:.82rem;display:flex}.tp-profile-checklist li.done{color:#0f172a;font-weight:600}.tp-profile-check-icon{text-align:center;color:#94a3b8;flex-shrink:0;width:18px;font-size:.75rem}.tp-profile-checklist li.done .tp-profile-check-icon{color:#10b981}.tp-profile-side-note{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;margin:12px 0 0;padding:8px 10px;font-size:.78rem;line-height:1.45}.tp-directory-preview-wrap{position:relative}.tp-directory-preview-wrap.is-draft .tp-directory-preview{border-style:dashed;border-color:#cbd5e1}.tp-directory-preview-wrap.is-live .tp-directory-preview{border-color:#10b981}.tp-directory-preview-status{letter-spacing:.03em;text-transform:uppercase;border-radius:999px;margin-bottom:10px;padding:4px 10px;font-size:.68rem;font-weight:700;display:inline-block}.tp-directory-preview-wrap.is-draft .tp-directory-preview-status{color:#64748b;background:#f1f5f9}.tp-directory-preview-wrap.is-live .tp-directory-preview-status{color:#065f46;background:#f0fdf4;border:1px solid #10b981}.tp-directory-preview{background:#fff;border:1.5px solid #e8ecf4;border-radius:14px;overflow:hidden}.tp-directory-preview-banner{background:linear-gradient(135deg,#6c7fc9 0%,#9b87d9 100%);height:44px}.tp-directory-preview-top{justify-content:space-between;align-items:flex-end;margin-top:-22px;padding:0 16px;display:flex}.tp-directory-preview-avatar{color:#3d7db0;background:#f0f3f9;border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.4rem;font-weight:700;display:flex;overflow:hidden}.tp-directory-preview-avatar img{object-fit:cover;width:100%;height:100%}.tp-directory-preview-cta{color:#fff;background:linear-gradient(135deg,#1e4d7b,#3d7db0);border-radius:8px;margin-bottom:4px;padding:6px 12px;font-size:.72rem;font-weight:700}.tp-directory-preview-body{padding:12px 16px 16px}.tp-directory-preview-name{color:#0f172a;margin:0;font-size:.95rem;font-weight:800}.tp-directory-preview-org{color:#64748b;margin:2px 0 0;font-size:.75rem}.tp-directory-preview-location{color:#64748b;margin:6px 0 0;font-size:.78rem}.tp-directory-preview-bio{color:#475569;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:8px 0 0;font-size:.78rem;line-height:1.45;display:-webkit-box;overflow:hidden}.tp-directory-preview-specs{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.tp-directory-preview-spec{color:#4b5880;background:#f0f3f9;border-radius:999px;padding:3px 8px;font-size:.68rem;font-weight:600}.tp-directory-preview-spec--more{background:#e8ecf4}.tp-directory-preview-open{color:#065f46;background:#f0fdf4;border:1px solid #10b981;border-radius:999px;margin-top:10px;padding:3px 9px;font-size:.68rem;font-weight:700;display:inline-flex}.tp-profile-save-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1e4d7b,#3d7db0);border:none;border-radius:10px;padding:10px 24px;font-family:inherit;font-size:14px;font-weight:600}.tp-profile-save-btn:disabled{opacity:.65;cursor:not-allowed}.tp-profile-msg.ok{color:#10b981;font-size:13px}.tp-profile-msg.err{color:#ef4444;font-size:13px}@media (width<=960px){.tp-profile-layout{grid-template-columns:1fr}.tp-profile-aside{order:-1;position:static}}.tp-empty{text-align:center;border-radius:var(--tp-radius-lg);background:radial-gradient(80% 60% at 50% 0,#3d7db014 0%,#0000 70%),linear-gradient(#ffffffeb 0%,#f8fafce0 100%);border:1.5px dashed #3d7db038;flex-direction:column;justify-content:center;align-items:center;gap:10px;margin:8px 0;padding:56px 28px;animation:.4s cubic-bezier(.22,1,.36,1) both tp-empty-in;display:flex;box-shadow:inset 0 1px #fffc}@keyframes tp-empty-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}.tp-detail-empty{min-height:280px;padding:72px 28px}.tp-empty-icon{background:linear-gradient(145deg,#3d7db024 0%,#b8e4f459 100%);border:1px solid #3d7db02e;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:6px;font-size:2rem;line-height:1;display:flex;box-shadow:0 8px 24px #3d7db01f,inset 0 1px #ffffffb3}.tp-empty h2{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:1.12rem;font-weight:800}.tp-empty p{color:#64748b;max-width:360px;margin:0;font-size:.875rem;line-height:1.65}.tp-empty-hint{max-width:320px;color:#94a3b8!important;font-size:.78rem!important}.tp-no-data{color:#64748b;text-align:center;border-radius:var(--tp-radius-md);background:linear-gradient(#f8fafce6 0%,#f1f5f9bf 100%);border:1px dashed #94a3b859;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:36px 24px;font-size:.875rem;line-height:1.55;display:flex}.tp-no-data:before{content:"○";width:44px;height:44px;color:var(--tp-brand);background:#3d7db01a;border:1px solid #3d7db026;border-radius:50%;justify-content:center;align-items:center;margin-bottom:2px;font-size:1.1rem;display:flex}@media (width<=900px){.tp-clients-stage{padding:0 14px 14px}.tp-grid{flex-direction:column;height:auto;overflow:visible}.tp-wrap--clients .tp-grid{overflow:visible}.tp-sidebar{border-bottom:1.5px solid #e8ecf4;border-right:none;width:100%;max-height:260px}.tp-wrap--clients .tp-sidebar{width:100%}.tp-detail{padding:20px 16px;overflow:visible}.tp-wrap--clients .tp-detail{overflow:visible}.tp-stats{grid-template-columns:repeat(3,1fr)}.tp-ops-grid,.tp-premium-grid{grid-template-columns:1fr}.tp-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-kanban{grid-template-columns:1fr}}@media (width<=640px){.tp-stats{grid-template-columns:repeat(2,1fr)}.tp-log-row{grid-template-columns:58px 22px 48px 1fr}}.tp-welcome-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.tp-welcome-modal{background:#fff;border-radius:16px;width:min(480px,100%);padding:28px 28px 24px;box-shadow:0 24px 64px #0f172a2e}.tp-welcome-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:#3d7db0;margin:0 0 8px;font-size:12px;font-weight:700}.tp-welcome-title{color:#0f172a;margin:0 0 12px;font-size:1.35rem;font-weight:800;line-height:1.25}.tp-welcome-body{color:#475569;margin:0 0 16px;font-size:14px;line-height:1.55}.tp-welcome-list{color:#334155;margin:0 0 22px;padding-left:20px;font-size:13px;line-height:1.6}.tp-welcome-actions{flex-direction:column;gap:10px;display:flex}.tp-welcome-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3d7db0,#2563eb);border:none;border-radius:10px;padding:12px 16px;font-size:14px;font-weight:700}.tp-welcome-secondary{color:#64748b;cursor:pointer;background:0 0;border:none;padding:8px;font-size:13px;font-weight:600}.tp-accept-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.tp-accept-modal{background:#fff;border-radius:16px;width:min(440px,100%);padding:26px 26px 22px;box-shadow:0 24px 64px #0f172a2e}.tp-accept-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#059669;margin:0 0 8px;font-size:11px;font-weight:700}.tp-accept-title{color:#0f172a;margin:0 0 10px;font-size:1.2rem;font-weight:800;line-height:1.3}.tp-accept-parent{color:#64748b;margin:0 0 12px;font-size:13px;line-height:1.5}.tp-accept-body{color:#475569;margin:0 0 20px;font-size:14px;line-height:1.55}.tp-accept-actions{flex-direction:column;gap:8px;display:flex}.tp-accept-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#059669,#10b981);border:none;border-radius:10px;padding:12px 16px;font-family:inherit;font-size:14px;font-weight:700;transition:opacity .15s}.tp-accept-primary:hover:not(:disabled){opacity:.9}.tp-accept-primary:disabled{opacity:.55;cursor:not-allowed}.tp-accept-secondary{color:#475569;cursor:pointer;background:#f1f5f9;border:none;border-radius:10px;padding:10px 16px;font-family:inherit;font-size:13px;font-weight:600}.tp-accept-secondary:hover:not(:disabled){background:#e2e8f0}.tp-accept-secondary:disabled{opacity:.55;cursor:not-allowed}.tp-profile-gate{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;margin:0 0 14px;padding:10px 12px;font-size:13px;line-height:1.45}.tp-detail-header-main{flex:1;min-width:0}.tp-detail-actions{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.tp-detail-action{border:1px solid var(--tp-border);background:var(--tp-surface);color:#334155;cursor:pointer;box-shadow:var(--tp-shadow-sm);border-radius:10px;padding:9px 14px;font-family:inherit;font-size:12px;font-weight:700;transition:background .12s,border-color .12s,box-shadow .12s,transform .1s}.tp-detail-action:hover{background:#f8faff;border-color:#3d7db038;transform:translateY(-1px)}.tp-detail-action--primary{color:#fff;background:linear-gradient(135deg,#1e4d7b 0%,#3d7db0 100%);border-color:#0000;box-shadow:0 4px 14px #1e4d7b47}.tp-detail-action--primary:hover{opacity:.92;background:linear-gradient(135deg,#1e4d7b,#3d7db0)}.tp-tabs--scroll{flex-wrap:nowrap;gap:6px;padding-bottom:4px;overflow-x:auto}.tp-tabs--scroll .tp-tab{white-space:nowrap;flex-shrink:0;padding:8px 12px;font-size:12px}.tp-chart-overview{flex-direction:column;gap:14px;display:flex}.tp-chart-block{border:1px solid var(--tp-border);border-radius:var(--tp-radius);box-shadow:var(--tp-shadow-sm);background:linear-gradient(#fff 0%,#f8fbff 100%);padding:16px 18px}.tp-chart-block-title{letter-spacing:.06em;text-transform:uppercase;color:#3d7db0;margin:0 0 10px;font-size:12px;font-weight:800}.tp-chart-kpi-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;display:grid}.tp-chart-kpi{background:#fff;border:1px solid #e8ecf4;border-radius:10px;padding:10px 12px}.tp-chart-kpi span{color:#64748b;margin-bottom:4px;font-size:11px;display:block}.tp-chart-kpi strong{color:#0f172a;font-size:18px}.tp-mood-chart{align-items:flex-end;gap:4px;height:72px;padding-top:4px;display:flex}.tp-mood-chart-bar{opacity:.85;background:linear-gradient(#3d7db0,#1e4d7b);border-radius:4px 4px 0 0;flex:1;min-width:6px;max-width:16px}.tp-chart-prose{color:#334155;margin:0;font-size:14px;line-height:1.6}.tp-chart-sub{color:#64748b;margin:4px 0 0;font-size:13px;line-height:1.5}.tp-chart-meta{color:#94a3b8;font-size:12px}.tp-chart-list{color:#334155;margin:0;padding-left:18px;font-size:13px;line-height:1.6}.tp-chart-list li+li{margin-top:8px}.tp-chart-panel{flex-direction:column;gap:16px;display:flex}.tp-chart-compose{background:#fff;border:1.5px solid #e8ecf4;border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.tp-chart-compose-row{flex-wrap:wrap;gap:12px;display:flex}.tp-chart-field{flex-direction:column;gap:6px;min-width:160px;display:flex}.tp-chart-field-wide{flex:1;min-width:100%}.tp-chart-field span{text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-size:11px;font-weight:700}.tp-chart-field input,.tp-chart-field select,.tp-chart-field textarea{color:#0f172a;background:#fff;border:1.5px solid #dde2ee;border-radius:10px;padding:10px 12px;font-family:inherit;font-size:14px}.tp-chart-field textarea{resize:vertical;min-height:88px}.tp-chart-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1e4d7b,#3d7db0);border:none;border-radius:10px;align-self:flex-start;padding:10px 18px;font-family:inherit;font-size:13px;font-weight:700}.tp-chart-primary:disabled{opacity:.5;cursor:not-allowed}.tp-chart-secondary{cursor:pointer;color:#334155;background:#fff;border:1px solid #dde2ee;border-radius:8px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:600}.tp-chart-link-danger{color:#dc2626;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:12px;font-weight:600}.tp-chart-note-list,.tp-chart-goal-list{flex-direction:column;gap:10px;display:flex}.tp-chart-note,.tp-chart-goal{background:#fff;border:1.5px solid #e8ecf4;border-radius:12px;padding:14px 16px}.tp-chart-note-head,.tp-chart-goal-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.tp-chart-note-type{text-transform:uppercase;letter-spacing:.05em;color:#3d7db0;background:#eef6fc;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:800}.tp-chart-goal-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.tp-chart-footnote{color:#94a3b8;margin:0;font-size:12px;line-height:1.5}.tp-chart-setup-msg{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;margin:0;padding:12px 14px;font-size:13px;line-height:1.5}.tp-chart-setup-msg code{background:#0000000f;border-radius:4px;padding:2px 6px;font-size:12px}.ad-wrap{max-width:1400px;padding-left:max(12px, env(safe-area-inset-left,0px));padding-right:max(12px, env(safe-area-inset-right,0px));padding-bottom:max(28px, env(safe-area-inset-bottom,0px));margin:0 auto}.ad-loading{justify-content:center;align-items:center;min-height:50vh;display:flex}.ad-page-header{margin-bottom:4px}.ad-title{color:var(--pathway-ink,#0f172a);margin:0 0 6px;font-family:Fredoka One,cursive;font-size:1.8rem}.ad-sub{color:#6b7499;max-width:52rem;margin:0 0 16px;font-size:.88rem;line-height:1.5}.ad-alerts{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.ad-alert{border-radius:12px;margin:0;padding:10px 14px;font-size:.86rem;font-weight:600;line-height:1.45}.ad-alert-err{color:#9c2626;background:#fff1f1;border:1px solid #f0b4b4}.ad-alert-ok{color:#166534;background:#ecfdf3;border:1px solid #86efac}.ad-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;gap:8px;margin-bottom:18px;padding-bottom:4px;display:flex;overflow-x:auto}.ad-tab{color:#5a6480;cursor:pointer;white-space:nowrap;background:#fff;border:2px solid #e8ecf4;border-radius:999px;flex:none;padding:10px 18px;font-family:Nunito,sans-serif;font-size:.84rem;font-weight:800}.ad-tab.on{border-color:var(--pathway-teal,#3d7db0);color:var(--pathway-teal-deep,#2d5f8c);background:#ccfbf1f2}.ad-settings-card{margin-bottom:14px}.ad-card-title{color:var(--pathway-ink,#0f172a);margin:0 0 8px;font-size:1.05rem}.ad-card-lead{margin:0 0 14px;font-size:.88rem;line-height:1.5}.ad-form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin-bottom:14px;display:grid}.ad-form-block{gap:6px;display:grid}.ad-form-block-wide{grid-column:1/-1}.ad-form-label{color:var(--pathway-ink,#0f172a);text-transform:capitalize;font-size:.82rem;font-weight:800}.ad-checkbox-row{align-items:center;gap:10px;margin-bottom:14px;font-size:.88rem;font-weight:700;display:flex}.ad-btn-primary{cursor:pointer;background:linear-gradient(135deg, var(--pathway-teal,#3d7db0), var(--pathway-teal-deep,#2d5f8c));color:#fff;border:0;border-radius:999px;padding:11px 20px;font-family:Nunito,sans-serif;font-size:.88rem;font-weight:800;box-shadow:0 4px 14px #3d7db059}.ad-btn-primary:hover:not(:disabled){filter:brightness(1.04)}.ad-btn-primary:disabled{opacity:.55;cursor:not-allowed}.ad-promo-msg{color:#4b5a7a;margin:12px 0 0;font-size:.86rem;line-height:1.45}.ad-user-cards{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.ad-empty-list{text-align:center;color:#6b7499;margin:0;padding:16px;font-size:.9rem}.ad-user-card{background:#fff;border:1px solid #e8ecf4;border-radius:16px;padding:14px 16px;box-shadow:0 4px 18px #1a23400f}.ad-user-card-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:6px;display:flex}.ad-user-card-name{color:var(--pathway-ink,#0f172a);font-size:1rem;font-weight:800}.ad-user-card-badge{text-transform:uppercase;letter-spacing:.04em;color:#5a6480;background:#f4f7ff;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:.72rem;font-weight:800}.ad-user-card-grid{grid-template-columns:1fr 1fr;gap:10px 12px;margin-bottom:12px;display:grid}.ad-field{gap:4px;display:grid}.ad-field>span:first-child{text-transform:uppercase;letter-spacing:.06em;color:#6b7499;font-size:.72rem;font-weight:800}.ad-field-span2{grid-column:1/-1}.ad-user-card-actions{flex-wrap:wrap;gap:8px;display:flex}.ad-user-card-actions .ad-btn{flex:auto;min-height:40px;padding:8px 14px;font-size:.8rem}.ad-stats{grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px;display:grid}.ad-stat{background:#fff;border:1px solid #e8ecf4;border-radius:14px;padding:14px;box-shadow:0 4px 18px #1a23400f}.ad-stat b{margin:8px 0 2px;font-family:Fredoka One,cursive;font-size:1.8rem;line-height:1;display:block}.ad-stat span{text-transform:uppercase;color:#6b7499;letter-spacing:.08em;font-size:.72rem;font-weight:800}.ad-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.ad-search{background:#fff;border:2px solid #e8ecf4;border-radius:999px;flex:1;min-width:220px;padding:10px 14px;font-size:.88rem}.ad-pill{color:#6b7499;cursor:pointer;background:#fff;border:2px solid #e8ecf4;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:700}.ad-pill.on{border-color:var(--pathway-teal,#3d7db0);color:var(--pathway-teal-deep,#2d5f8c);background:#ccfbf1f2}.ad-table-wrap{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #e8ecf4;border-radius:14px;max-width:100%;overflow:auto visible;box-shadow:0 8px 32px #1a234014}.ad-table{border-collapse:collapse;width:100%;min-width:980px;font-size:.83rem}.ad-table th{color:#6b7499;text-transform:uppercase;letter-spacing:.08em;text-align:left;background:#f7faff;padding:11px 12px;font-size:.7rem;font-weight:800}.ad-table td{vertical-align:top;border-top:1px solid #eef2fa;padding:12px}.ad-email{color:#6b7499;font-family:DM Mono,monospace;font-size:.72rem}.ad-badge{border-radius:999px;gap:5px;padding:3px 9px;font-size:.72rem;font-weight:800;display:inline-flex}.ad-badge.starter{color:#2b8fd6;background:#e3f2fd}.ad-badge.growth{color:#e69a00;background:#fff3cc}.ad-badge.premium{color:#7b5ea7;background:#f0ebf8}.ad-badge.none{color:#6b7499;background:#f4f7ff}.ad-actions{flex-wrap:wrap;gap:6px;display:flex}.ad-btn{cursor:pointer;background:#fff;border:1px solid #d9dfeb;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:700}.ad-btn.warn{background:#fff3cc;border-color:#ffcf70}.ad-btn.danger{color:#9c2626;background:#fff1f1;border-color:#f0b4b4}.ad-btn.danger:hover:not(:disabled){background:#fde8e8;border-color:#e08080}.ad-btn:disabled{opacity:.55;cursor:not-allowed}.ad-select,.ad-date{width:100%;min-width:120px;color:var(--pathway-ink,#0f172a);background:#fff;border:1px solid #d9dfeb;border-radius:8px;padding:7px 8px;font-family:Nunito,sans-serif;font-size:.77rem}.ad-cell-note{color:#6b7499;margin-top:4px;font-size:.69rem}.ad-modal-backdrop{z-index:120;background:#0f172a73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.ad-modal-card{background:#fff;border:1px solid #e8ecf4;border-radius:16px;width:min(520px,100%);padding:18px;box-shadow:0 20px 48px #0f172a47}.ad-modal-card h3{color:var(--pathway-ink,#0f172a);margin:0 0 8px;font-size:1.05rem}.ad-modal-card p{color:#4b5a7a;margin:0;font-size:.87rem;line-height:1.45}.ad-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:14px;display:flex}@media (width<=1000px){.ad-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.ad-title{font-size:1.35rem}.ad-sub{margin-bottom:12px;font-size:.82rem}.ad-stats{grid-template-columns:1fr;gap:8px}.ad-stat{padding:10px 12px}.ad-stat b{margin-top:6px;font-size:1.45rem}.ad-toolbar{gap:6px}.ad-search{min-width:100%}.ad-pill{padding:6px 10px;font-size:.72rem}.ad-btn{padding:4px 7px;font-size:.68rem}.ad-tab{padding:9px 14px;font-size:.8rem}.ad-user-card-grid{grid-template-columns:1fr}.ad-field-span2{grid-column:auto}.ad-modal-actions{flex-direction:column;align-items:stretch}.ad-modal-actions .ad-btn{justify-content:center;width:100%;min-height:44px}}.ad-org-list{gap:10px;margin-top:8px;display:grid}.ad-org-row{background:var(--c-ink-50,#f8fafc);border-radius:var(--radius-md,12px);border:1.5px solid var(--c-ink-100,#f1f5f9);align-items:center;gap:12px;padding:12px 14px;display:flex}.ad-org-dot{border-radius:50%;flex-shrink:0;width:14px;height:14px}.ad-org-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ad-org-info strong{font-size:var(--text-sm,.8125rem);color:var(--pathway-ink,#0f172a);font-weight:700}.ad-org-slug{font-size:var(--text-xs,.72rem);color:var(--c-ink-400,#94a3b8);align-items:center;gap:8px;font-family:monospace;display:flex}.ad-copy-btn{border:1.5px solid var(--c-teal-200,#a9c7e2);background:var(--c-teal-50,#eaf2fa);color:var(--c-teal-700,#2d5f8c);border-radius:var(--radius-full,9999px);font-size:var(--text-xs,.72rem);cursor:pointer;font-weight:700;font-family:var(--font-body);transition:background var(--t-base), transform var(--t-bounce);padding:2px 10px}.ad-copy-btn:hover{background:var(--c-teal-100,#d2e3f2);transform:translateY(-1px)}.ss-preflight-eyebrow{letter-spacing:.6px;text-transform:uppercase;color:#2d5f8c;margin:0 0 4px;font-size:.74rem;font-weight:800}.ss-preflight-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:18px;display:flex}.ss-preflight-head-actions{flex-wrap:wrap;gap:8px;display:flex}.ss-preflight-btn{cursor:pointer;border:0;border-radius:999px;align-items:center;padding:9px 16px;font-family:inherit;font-size:.88rem;font-weight:800;text-decoration:none;display:inline-flex}.ss-preflight-btn.primary{background:var(--pathway-teal,#3d7db0);color:#fff}.ss-preflight-btn.primary:hover:not(:disabled){background:#2d5f8c}.ss-preflight-btn.primary:disabled{opacity:.6;cursor:not-allowed}.ss-preflight-btn.secondary{color:#2d5f8c;background:#fff;border:2px solid #3d7db0}.ss-preflight-btn.secondary:hover{background:#f7faff}.ss-preflight-overall{border:1px solid #0f172a14;border-radius:16px;gap:6px;margin:0 0 18px;padding:18px 22px;display:grid}.ss-preflight-overall-label{font-family:var(--font-brand,"Fredoka One", cursive);letter-spacing:.04em;font-size:1.6rem;font-weight:800}.ss-preflight-overall-hint{opacity:.85;font-size:.95rem;font-weight:700}.ss-preflight-overall-counts{opacity:.75;font-size:.84rem;font-weight:600}.ss-preflight-overall-meta{opacity:.7;margin-top:4px;font-size:.78rem}.ss-preflight-card{background:#fff;border:1px solid #0f172a14;border-radius:14px;margin:0 0 14px;padding:18px 20px;box-shadow:0 4px 16px #0f172a0a}.ss-preflight-section-title{color:#1a2340;margin:0 0 4px;font-size:1.05rem;font-weight:800}.ss-preflight-section-desc{color:#5a6480;margin:0 0 12px;font-size:.86rem;line-height:1.5}.ss-preflight-rows{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.ss-preflight-row{border-left:3px solid #0000;border-radius:8px;grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;font-size:.86rem;display:grid}.ss-preflight-row--ok{background:#f7fbf7;border-left-color:#4ade80}.ss-preflight-row--warn{background:#fffaef;border-left-color:#fbbf24}.ss-preflight-row--error{background:#fef4f4;border-left-color:#ef4444}.ss-preflight-pill{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:3px 8px;font-size:.7rem;font-weight:800;display:inline-flex}.ss-preflight-pill--ok{color:#166534;background:#dcfce7}.ss-preflight-pill--warn{color:#854d0e;background:#fef9c3}.ss-preflight-pill--error{color:#991b1b;background:#fee2e2}.ss-preflight-row-key{color:#1a2340;word-break:break-all;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.84rem;font-weight:700}.ss-preflight-row-detail{text-align:right;color:#5a6480;word-break:break-word;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.78rem}@media (width<=540px){.ss-preflight-row{grid-template-rows:auto auto;grid-template-columns:60px 1fr}.ss-preflight-row-detail{text-align:left;grid-column:1/-1;padding-left:70px}}.ct-page{max-width:720px}.ct-page-head{margin-bottom:20px}.ct-page-head-actions{flex-shrink:0;gap:10px;display:flex}.ct-section{margin-bottom:24px}.ct-section-title{color:var(--pathway-ink,#0f172a);margin:0 0 12px;font-size:.95rem;font-weight:700}.ct-card-list{flex-direction:column;gap:12px;display:flex}.ct-empty{text-align:center;padding:40px 24px}.ct-empty-icon{margin-bottom:12px;font-size:2.25rem}.ct-empty h3{color:var(--pathway-ink,#0f172a);margin:0 0 8px;font-size:1rem}.ct-empty p{margin:0 0 20px}.ct-empty .ss-primary-btn{width:auto;text-decoration:none;display:inline-block}.ct-privacy{background:#f8f9fd;border:1px solid #e8ecf4;border-radius:12px;margin-top:28px;padding:16px 20px}.ct-privacy p{color:#6b7a99;margin:0;font-size:.8125rem;line-height:1.55}.ct-privacy strong{color:#4b5880}.ct-connection-card{padding:16px 20px}.ct-connection-row{align-items:flex-start;gap:14px;display:flex}.ct-connection-avatar{color:#fff;background:linear-gradient(135deg,#6c7fc9,#a78bfa);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.05rem;font-weight:700;display:flex}.ct-connection-body{flex:1;min-width:0}.ct-connection-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ct-connection-name{color:var(--pathway-ink,#0f172a);font-size:.9rem;font-weight:700}.ct-connection-meta{color:#4b5880;margin:4px 0 0;font-size:.75rem}.ct-connection-meta--muted{color:#6b7a99}.ct-connection-specs{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.ct-connection-spec{color:#4b5880;background:#eef0fb;border-radius:20px;padding:2px 8px;font-size:.68rem;font-weight:600}.ct-connection-bio{color:#4b5880;margin:6px 0 0;font-size:.75rem;line-height:1.5}.ct-connection-dates{color:#9ca8c4;margin:6px 0 0;font-size:.68rem}.ct-connection-remove{color:#64748b;cursor:pointer;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;margin-top:10px;padding:6px 12px;font-family:inherit;font-size:.75rem;font-weight:600}.ct-connection-remove:hover{background:#e8edf4}.ct-connection-docs{border-top:1px solid #e8ecf4;margin-top:16px;padding-top:16px}@media (width<=640px){.ct-page-head{flex-direction:column;align-items:stretch}.ct-page-head-actions{width:100%}.ct-page-head-actions .ss-primary-btn,.ct-page-head-actions .ss-inline-link{text-align:center;flex:1}}
