@import"https://fonts.googleapis.com/css2?family=Quicksand:wght@500;600;700&family=Nunito:wght@400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Inter:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&family=Fraunces:wght@500;600;700&display=swap";.auth-page{--coral: #FF7A5C;--coral-deep: #ED5A38;--ink: #1E2330;--ink-soft: #6E7585;--line: #F1E8E3;--bg-soft: #FFFAF7;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 18px;background:linear-gradient(170deg,#fff3ec,#fffdfb 60%);font-family:Nunito,sans-serif;color:var(--ink);position:relative;overflow:hidden;-webkit-font-smoothing:antialiased}.auth-wave{position:absolute;left:0;right:0;bottom:0;height:120px;z-index:0}.auth-wave svg{width:100%;height:100%;display:block}.auth-card{position:relative;z-index:1;width:100%;max-width:380px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px 34px 26px;box-shadow:0 28px 64px -38px #1e23308c;display:flex;flex-direction:column}.auth-brand{display:flex;justify-content:center;margin-bottom:18px}.auth-brand-lockup{position:relative;display:inline-block;line-height:0}.auth-brand-tag{position:absolute;bottom:3px;left:56%;transform:translate(-50%);white-space:nowrap;font-family:Quicksand,sans-serif;font-weight:600;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral-deep)}.auth-title{font-family:Quicksand,sans-serif;font-weight:700;font-size:26px;text-align:center;margin:0 0 5px}.auth-subtitle{color:var(--ink-soft);font-size:14.5px;text-align:center;margin:0 0 26px}.auth-label{display:block;font-family:Quicksand,sans-serif;font-weight:600;font-size:12.5px;color:#5a4f4a;margin-bottom:6px}.auth-input{width:100%;padding:13px 15px;margin-bottom:12px;border:1.5px solid var(--line);border-radius:13px;font-family:Nunito,sans-serif;font-size:15px;background:var(--bg-soft);color:var(--ink);transition:border-color .15s,box-shadow .15s,background .15s}.auth-input::placeholder{color:#b8aaa3}.auth-input:focus{outline:none;border-color:var(--coral);background:#fff;box-shadow:0 0 0 4px #ff7a5c26}.auth-row{display:flex;justify-content:flex-end;margin:-10px 0 -2px}.auth-forgot{background:none;border:none;cursor:pointer;padding:4px 0;min-height:44px;font-family:Quicksand,sans-serif;font-weight:700;font-size:13px;color:var(--coral-deep)}.auth-forgot:hover{text-decoration:underline}.auth-forgot:disabled{opacity:.6;cursor:default}.auth-button{width:100%;padding:15px;min-height:48px;border:none;border-radius:13px;background:var(--coral);color:#fff;font-family:Quicksand,sans-serif;font-weight:700;font-size:15.5px;cursor:pointer;box-shadow:0 14px 26px -12px #ed5a3899;transition:background .15s,transform .12s}.auth-button:hover:not(:disabled){background:var(--coral-deep);transform:translateY(-1px)}.auth-button:disabled{opacity:.7;cursor:default}.auth-error,.auth-info{margin-top:14px;padding:11px 14px;border-radius:11px;font-size:13.5px;line-height:1.45}.auth-error{background:#fdecec;color:#c0392b;border:1px solid #F6D2CE}.auth-info{background:#ecf8f2;color:#1b7a57;border:1px solid #CDEBDD}.auth-foot{text-align:center;margin-top:24px;font-size:14px;color:var(--ink-soft)}.auth-foot--muted{margin-top:8px;padding-top:12px;border-top:1px solid var(--line);font-size:13px}.auth-link{color:var(--coral-deep);font-weight:700;text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-spinner{width:34px;height:34px;margin:22px auto 4px;border:3px solid var(--coral-soft, #FFEDE7);border-top-color:var(--coral);border-radius:50%;animation:auth-spin .8s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.auth-spinner{animation-duration:2.4s}}.auth-row-split{justify-content:space-between;align-items:center}.auth-show-pw{background:none;border:none;cursor:pointer;padding:4px 0;min-height:44px;font-family:Quicksand,sans-serif;font-weight:700;font-size:13px;color:var(--ink-soft, #6E7585)}.auth-show-pw:hover,.auth-show-pw[aria-checked=true]{color:var(--ink);text-decoration:underline}.center-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.center-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;margin:0;padding:0;background:#0f172a80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:pointer;animation:center-modal-fade .15s ease}.center-modal-card{position:relative;z-index:1;width:min(480px,100%);max-height:min(82vh,700px);display:flex;flex-direction:column;background:#fff;border-radius:20px;box-shadow:0 30px 80px -20px #1a2a3a8c;overflow:hidden;animation:center-modal-pop .18s cubic-bezier(.2,.8,.2,1)}.center-modal-header{display:flex;align-items:flex-start;gap:12px;padding:20px 22px 14px;border-bottom:1px solid #EEF1F5}.center-modal-icon{flex-shrink:0;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;background:#fdeeea}.center-modal-titles{flex:1;min-width:0}.center-modal-title{margin:0;font-size:18px;font-weight:600;color:#23364a;line-height:1.2}.center-modal-subtitle{margin:3px 0 0;font-size:13px;color:#6a7e8e;line-height:1.4}.center-modal-close{flex-shrink:0;width:44px;height:44px;min-width:44px;min-height:44px;border:none;background:#f5f8fa;border-radius:10px;cursor:pointer;color:#6a7e8e;display:flex;align-items:center;justify-content:center;transition:background .12s ease}.center-modal-close:hover{background:#e9eef3}.center-modal-body{flex:1;overflow-y:auto;padding:18px 22px 22px}.cm-coral-btn{background:#e8705a;color:#fff;border:none;cursor:pointer;box-shadow:0 8px 18px -10px #e8705a8c;transition:background .15s ease}.cm-coral-btn:hover:not(:disabled){background:#d4604c}@keyframes center-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes center-modal-pop{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.center-modal-backdrop,.center-modal-card{animation:none}}.lazy-boundary-fallback{padding:20px;margin:12px;max-width:340px;border:1px solid var(--clinic-border, #E4E8EE);border-radius:12px;background:var(--clinic-card, #FFFFFF);color:var(--clinic-text, #1A2A3A);font-family:var(--clinic-font, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);font-size:14px;text-align:center}.lazy-boundary-fallback--overlay{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;box-shadow:0 12px 32px #1a2a3a2e}.lazy-boundary-fallback--inline{position:static;max-width:none;margin:12px 0}.lazy-boundary-actions{display:flex;gap:8px;justify-content:center;margin-top:12px}.lazy-boundary-actions button{min-height:44px;min-width:44px;padding:0 18px;border-radius:12px;border:1px solid var(--clinic-border, #E4E8EE);background:var(--clinic-card, #FFFFFF);color:var(--clinic-text, #1A2A3A);font:inherit;cursor:pointer}.lazy-boundary-actions button:first-child{background:var(--clinic-accent, #E8705A);border-color:var(--clinic-accent, #E8705A);color:#fff}.swc-wrap{display:flex;flex-direction:column;gap:8px;width:100%}.swc-stamp{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:10px;font-size:11.5px;line-height:1.35;font-weight:500}.swc-stamp svg{flex-shrink:0;margin-top:1px}.swc-stamp--info{background:#6a8bba1a;color:#1f4e84}.swc-stamp--info svg{color:var(--blue-text, #6A8BBA)}.swc-stamp--warn{background:#d492151a;color:#b8770b}.swc-stamp--warn svg{color:#b8770b}.swc-stamp--past{background:transparent;color:var(--text-secondary, #6A7E8E);padding:6px 2px;font-style:italic;font-size:11px}.swc-stamp--past svg{color:var(--text-tertiary, #9CB0BE)}.ql-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172261;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1001;padding:20px}.ql-modal{background:var(--bg-card, #fff);border:.5px solid var(--border, #E4E8EE);border-radius:20px;padding:20px 22px 18px;width:100%;max-width:460px;box-shadow:0 10px 40px #141e2d33;font-family:inherit;overflow:hidden}.ql-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:14px}.ql-eyebrow{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--text-secondary, #6A7E8E)}.ql-head-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}.ql-head-title{font-size:20px;font-weight:600;letter-spacing:-.3px;color:var(--text-primary, #1A2A3A);margin-top:2px}.ql-close{min-width:44px;min-height:44px;border:none;background:transparent;font-size:24px;line-height:1;color:var(--text-secondary, #6A7E8E);cursor:pointer;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;padding:0}.ql-close:hover{background:#0000000a}.ql-when-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.ql-when-field{display:flex;flex-direction:column;gap:4px;flex:1;min-width:140px}.ql-when-label{font-size:13px;font-weight:600;color:var(--text-primary, #1A2A3A)}.ql-when-input{min-height:44px;border:.5px solid var(--border, #E4E8EE);border-radius:10px;padding:8px 12px;font-family:inherit;font-size:14px;color:var(--text-primary, #1A2A3A);background:var(--bg-primary, #F5F8FA)}.ql-when-input:focus{outline:none;border-color:var(--blue-text, #6A8BBA);background:var(--bg-card, #FFFFFF)}.ql-when-input:disabled{opacity:.6;cursor:not-allowed}.ql-photo-row{margin-bottom:12px}.ql-photo-picker-btn{width:100%;min-height:44px;border:1px dashed var(--border, #E4E8EE);border-radius:10px;background:var(--bg-primary, #F5F8FA);color:var(--text-primary, #1A2A3A);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;padding:10px 14px}.ql-photo-picker-btn:hover:not(:disabled){background:var(--bg-hover, #F0F4F9);border-color:var(--blue-text, #6A8BBA)}.ql-photo-picker-btn:disabled{opacity:.55;cursor:not-allowed}.ql-photo-preview{display:flex;flex-direction:column;gap:8px}.ql-photo-img{width:100%;max-height:220px;object-fit:cover;border-radius:10px;border:.5px solid var(--border, #E4E8EE)}.ql-photo-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--text-secondary, #6A7E8E)}.ql-photo-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ql-photo-remove{min-height:44px;padding:0 14px;border:.5px solid var(--border, #E4E8EE);border-radius:10px;background:transparent;color:var(--danger, #E57373);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.ql-photo-remove:hover:not(:disabled){background:#e5737314}.ql-textarea{width:100%;border:.5px solid var(--border, #E4E8EE);border-radius:10px;padding:12px 14px;font-size:14px;font-family:inherit;color:var(--text-primary, #1A2A3A);background:var(--bg-primary, #F5F8FA);resize:vertical;min-height:110px;line-height:1.4}.ql-textarea:focus{outline:none;border-color:var(--blue-text, #6A8BBA);background:var(--bg-card, #FFFFFF)}.ql-textarea::placeholder{color:var(--text-tertiary, #9AAABA)}.ql-modal .ql-footer{display:flex;align-items:center;margin:14px -22px -18px;padding:12px 22px 18px;border-top:1px solid var(--border, #E4E8EE);background:#fafcfd;gap:10px}.ql-charcount{font-size:10px;color:var(--text-tertiary, #9AAABA);font-variant-numeric:tabular-nums}.ql-time-label{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.ql-time-label-text{font-size:11px;font-weight:500;color:var(--text-secondary, #6A7E8E)}.ql-time-input{width:100%;border:.5px solid var(--border, #E4E8EE);border-radius:10px;padding:10px 12px;font-size:14px;background:var(--bg-card, #FFFFFF);color:var(--text, #1A2A3A);font-family:inherit;min-height:44px;box-sizing:border-box}.ql-time-input:focus{outline:none;border-color:var(--blue-text, #6A8BBA)}.ql-time-input:disabled{opacity:.5}.ql-actions{display:flex;gap:8px}.ql-modal .ql-cancel,.ql-modal .ql-save,.ql-modal .ql-delete{padding:10px 18px;border-radius:22px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;border:none;min-height:44px}.ql-modal .ql-cancel{background:transparent;color:var(--text-2, #6A7E8E)}.ql-modal .ql-cancel:hover:not(:disabled){background:var(--surface, #F5F8FA);color:var(--text-1, #1A2A3A)}.ql-modal .ql-save{background:var(--accent, #E8705A);color:#fff}.ql-modal .ql-save:hover:not(:disabled){background:var(--accent-dk, #D0583F)}.ql-modal .ql-save:disabled{opacity:.5;cursor:not-allowed}.ql-modal .ql-cancel:disabled{opacity:.5;cursor:not-allowed}.ql-modal .ql-delete{background:transparent;color:var(--danger, #E57373);margin-right:auto}.ql-modal .ql-delete:hover:not(:disabled){background:#e5737314}.ql-modal .ql-delete:disabled{opacity:.5;cursor:not-allowed}.ql-modal .ql-delete-row{margin-top:8px}.ql-modal .ql-btn-delete-wide{width:100%;min-height:44px;padding:10px 18px;border-radius:22px;background:#fdecec;color:#c04040;border:none;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s,color .12s}.ql-modal .ql-btn-delete-wide:hover:not(:disabled){background:#fbdada;color:#a03333}.ql-modal .ql-btn-delete-wide:disabled{opacity:.5;cursor:not-allowed}.ql-modal .ql-confirm-row{margin-top:8px;padding:12px 14px;background:#d4921514;border:1px solid rgba(212,146,21,.2);border-radius:10px;display:flex;gap:8px;align-items:center}.ql-modal .ql-confirm-text{flex:1;font-size:12.5px;font-weight:500;color:#b8770b;line-height:1.35}.ql-modal .ql-delete-confirm{min-height:44px;padding:10px 18px;border-radius:22px;border:none;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;background:var(--danger, #E57373);color:#fff}.ql-modal .ql-delete-confirm:hover:not(:disabled){filter:brightness(.95)}.ql-modal .ql-delete-confirm:disabled{opacity:.5;cursor:not-allowed}.ql-modal .share-clinic-toggle{background:var(--bg-primary, #F5F8FA);border:1px solid var(--clinic-border, #E4E8EE)}.ql-modal .share-clinic-toggle:hover:not(:disabled){background:#edf1f5}.ql-msg{margin-top:10px;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:500}.ql-msg-error{background:#e573731a;color:#c04040}.ql-msg-ok{background:#3ab8901a;color:#2a7e5e}.ql-detail-when{font-size:11px;font-weight:500;color:var(--text-secondary, #6A7E8E);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}.ql-detail-text{font-size:14px;line-height:1.5;color:var(--text-primary, #1A2A3A);padding:14px 16px;background:var(--bg-primary, #F5F8FA);border:.5px solid var(--border, #E4E8EE);border-radius:10px;white-space:pre-wrap;overflow-wrap:break-word}.ql-edited-tag{color:var(--text-tertiary, #9AAABA);font-weight:400;text-transform:none;letter-spacing:0}.ql-history{margin-top:12px;padding-top:10px;border-top:.5px solid var(--border, #E4E8EE)}.ql-history-toggle{background:transparent;border:none;font-size:11px;font-weight:600;color:var(--text-secondary, #6A7E8E);cursor:pointer;padding:4px 0;text-align:left;font-family:inherit;min-height:44px;display:inline-flex;align-items:center}.ql-history-toggle:hover{color:var(--text-primary, #1A2A3A)}.ql-history-list{margin-top:6px;display:flex;flex-direction:column;gap:6px}.ql-history-item{padding:8px 10px;background:#00000005;border:.5px solid var(--border, #E4E8EE);border-radius:8px}.ql-history-when{font-size:10px;font-weight:500;color:var(--text-tertiary, #9AAABA);text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}.ql-history-text{font-size:12px;line-height:1.4;color:var(--text-secondary, #6A7E8E);white-space:pre-wrap;overflow-wrap:break-word;text-decoration:line-through;text-decoration-color:#6a7e8e4d}.ql-first-ever-field{display:flex;align-items:center;gap:8px;flex:1;min-width:140px;min-height:44px;padding:0 4px;font-size:14px;color:var(--text-primary, #1A2A3A);cursor:pointer}.ql-first-ever-field input[type=checkbox]{width:18px;height:18px;cursor:pointer;flex-shrink:0}.ql-first-ever-field input[type=checkbox]:disabled{cursor:not-allowed}.ql-first-ever-text{line-height:1.3}.ql-recovery-field{max-width:140px;flex:0 0 auto}.ql-custom-trigger-field{margin-bottom:12px}.slm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172261;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.slm-dialog{position:relative;width:100%;max-width:440px;background:var(--card);border-radius:20px;box-shadow:0 20px 60px #00000038;display:flex;flex-direction:column;max-height:92vh;overflow:hidden;font-family:var(--clinic-font, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif)}.slm-head{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 22px 10px}.slm-eyebrow{font-size:11px;font-weight:700;letter-spacing:.6px;color:var(--text-2);text-transform:uppercase}.slm-title{font-size:20px;font-weight:600;letter-spacing:-.3px;margin-top:2px;color:var(--text-1)}.slm-close{background:transparent;border:none;font-size:24px;color:var(--text-2);cursor:pointer;min-width:44px;min-height:44px;border-radius:8px}.slm-close:hover:not(:disabled){background:#0000000a;color:var(--text-1)}.slm-close:disabled{opacity:.5;cursor:not-allowed}.slm-body{overflow-y:auto;padding:10px 22px 18px;display:flex;flex-direction:column;gap:14px}.slm-label{font-size:12px;font-weight:600;color:var(--text-1);display:block;margin-bottom:6px}.slm-field{display:flex;flex-direction:column}.slm-input,.slm-textarea{width:100%;padding:10px 12px;border-radius:10px;border:1.5px solid var(--border);background:var(--input-bg);font:inherit;font-size:14px;color:var(--text-1);min-height:44px;box-sizing:border-box}.slm-input:focus,.slm-textarea:focus{outline:none;border-color:var(--accent);background:#fff}.slm-textarea{min-height:72px;resize:vertical}.slm-time-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.slm-recent{font-size:12px;color:var(--text-2);padding:10px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.slm-error{padding:10px 12px;background:#fff5f5;border:1px solid #F3C6C6;border-radius:10px;color:#b71c1c;font-size:12px}.slm-footer{padding:12px 22px 18px;border-top:1px solid var(--border, #E4E8EE);background:#fafcfd;display:flex;gap:10px;align-items:center}.slm-dialog .slm-btn{padding:10px 18px;border-radius:22px;border:none;font-family:inherit;font-size:14px;font-weight:600;min-height:44px;cursor:pointer}.slm-dialog .slm-btn-ghost{background:transparent;color:var(--text-2, #6A7E8E)}.slm-dialog .slm-btn-ghost:hover:not(:disabled){background:var(--surface, #F5F8FA);color:var(--text-1, #1A2A3A)}.slm-dialog .slm-btn-primary{background:var(--accent, #E8705A);color:#fff}.slm-dialog .slm-btn-primary:hover:not(:disabled){background:var(--accent-dk, #D0583F)}.slm-dialog .slm-btn:disabled{opacity:.5;cursor:not-allowed}.slm-dialog .share-clinic-toggle{background:var(--bg-primary, #F5F8FA);border:1px solid var(--clinic-border, #E4E8EE)}.slm-dialog .share-clinic-toggle:hover:not(:disabled){background:#edf1f5}.slm-dialog .slm-delete-row{padding:0 22px 18px}.slm-dialog .slm-btn-delete-wide{width:100%;min-height:44px;padding:10px 18px;border-radius:22px;background:#fdecec;color:#c04040;border:none;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s,color .12s}.slm-dialog .slm-btn-delete-wide:hover:not(:disabled){background:#fbdada;color:#a03333}.slm-dialog .slm-btn-delete-wide:disabled{opacity:.5;cursor:not-allowed}.slm-dialog .slm-confirm-row{padding:14px 22px 18px;background:#d4921514;border-top:1px solid rgba(212,146,21,.2);display:flex;gap:8px;align-items:center}.slm-dialog .slm-confirm-text{flex:1;font-size:12.5px;font-weight:500;color:#b8770b;line-height:1.35}.plm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172261;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.plm-dialog{background:var(--card);width:100%;max-width:500px;border-radius:20px;box-shadow:0 20px 60px #00000038;display:flex;flex-direction:column;max-height:92vh;overflow:hidden;font-family:var(--clinic-font, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif)}.plm-head{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 22px 10px}.plm-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--text-2, #6A7E8E)}.plm-title{font-size:20px;font-weight:600;letter-spacing:-.3px;margin-top:2px;color:var(--text-1, #1A2A3A)}.plm-eyebrow-dot{font-size:15px;line-height:1}.plm-close{background:transparent;border:none;font-size:24px;line-height:1;color:var(--text-2, #6A7E8E);cursor:pointer;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px}.plm-close:hover:not(:disabled){background:#0000000a;color:#1a2a3a}.plm-close:disabled{opacity:.5;cursor:not-allowed}.plm-training-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 20px;margin:4px 20px 0;background:var(--bg-primary, #F5F8FA);border:1px solid var(--clinic-border, #E4E8EE);border-radius:12px;cursor:pointer;min-height:56px}.plm-training-text{display:flex;flex-direction:column;gap:2px}.plm-training-title{font-size:13px;font-weight:600;color:#1a2a3a}.plm-training-sub{font-size:11px;color:#6a7e8e;font-weight:500}.plm-toggle{position:relative;display:inline-block;width:44px;height:24px;border-radius:12px;background:#e4e8ee;transition:background .15s;flex-shrink:0}.plm-toggle input{opacity:0;position:absolute;top:0;right:0;bottom:0;left:0;margin:0;cursor:pointer}.plm-toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000002e;transition:transform .15s}.plm-toggle.on{background:var(--toggle-on, #3B5166)}.plm-toggle.on .plm-toggle-thumb{transform:translate(20px)}.plm-body{overflow-y:auto;padding:10px 22px 18px;display:flex;flex-direction:column;gap:14px}.plm-section{display:flex;flex-direction:column;gap:8px}.plm-label{font-size:13px;font-weight:600;color:#1a2a3a}.plm-outcome-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.plm-outcome{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;min-height:64px;border-radius:12px;background:#f5f8fa;border:1.5px solid transparent;cursor:pointer;font:inherit;color:#1a2a3a;transition:background .12s,border-color .12s,transform .12s}.plm-outcome:hover:not(:disabled){background:#edf1f5;transform:translateY(-1px)}.plm-outcome.selected{background:var(--accent-lt, #FEF5F3);border-color:var(--accent, #E8705A);color:var(--accent, #E8705A)}.plm-outcome:disabled{opacity:.55;cursor:not-allowed}.plm-outcome-emoji{font-size:22px;line-height:1}.plm-outcome-label{font-size:12px;font-weight:600}.plm-time-input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid #E4E8EE;background:#fff;font:inherit;font-size:14px;color:#1a2a3a;min-height:44px}.plm-time-input:focus{outline:none;border-color:var(--blue-text, #6A8BBA);box-shadow:0 0 0 3px #6a8bba2e}.plm-time-input:disabled{background:#f5f8fa;color:#6a7e8e;cursor:not-allowed}.plm-error{font-size:12.5px;color:#b84740;background:#fdecec;padding:8px 12px;border-radius:8px;border:1px solid #F5B5B2}.plm-footer{display:flex;gap:10px;align-items:center;padding:12px 22px 18px;border-top:1px solid var(--border, #E4E8EE);background:#fafcfd}.plm-dialog .plm-btn{padding:10px 18px;border-radius:22px;border:none;font-family:inherit;font-size:14px;font-weight:600;min-height:44px;cursor:pointer;transition:background .12s,color .12s,filter .12s}.plm-dialog .plm-btn:disabled{opacity:.55;cursor:not-allowed}.plm-dialog .plm-btn-ghost{background:transparent;color:var(--text-2, #6A7E8E)}.plm-dialog .plm-btn-ghost:hover:not(:disabled){background:var(--surface, #F5F8FA);color:var(--text-1, #1A2A3A)}.plm-dialog .plm-btn-primary{background:var(--accent, #E8705A);color:#fff}.plm-dialog .plm-btn-primary:hover:not(:disabled){background:var(--accent-dk, #D0583F)}.plm-dialog .share-clinic-toggle{background:var(--bg-primary, #F5F8FA);border:1px solid var(--clinic-border, #E4E8EE)}.plm-dialog .share-clinic-toggle:hover:not(:disabled){background:#edf1f5}.plm-dialog .plm-delete-row{padding:0 20px 16px}.plm-dialog .plm-btn-delete-wide{width:100%;min-height:44px;padding:10px 18px;border-radius:22px;background:#fdecec;color:#c04040;border:none;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s,color .12s}.plm-dialog .plm-btn-delete-wide:hover:not(:disabled){background:#fbdada;color:#a03333}.plm-dialog .plm-btn-delete-wide:disabled{opacity:.5;cursor:not-allowed}.plm-dialog .plm-confirm-row{padding:12px 20px 16px;background:#d4921514;border-top:1px solid rgba(212,146,21,.2);display:flex;gap:8px;align-items:center}.plm-dialog .plm-confirm-text{flex:1;font-size:12.5px;font-weight:500;color:#b8770b;line-height:1.35}.plm-dialog .plm-btn-delete-confirm{min-height:44px;padding:10px 18px;border-radius:22px;border:none;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;background:var(--danger, #E57373);color:#fff}.plm-dialog .plm-btn-delete-confirm:hover:not(:disabled){filter:brightness(.95)}.plm-dialog .plm-btn-delete-confirm:disabled{opacity:.5;cursor:not-allowed}.nep-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172261;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.nep-dialog{position:relative;background:var(--card, #FFFFFF);border:.5px solid var(--border, #E4E8EE);border-radius:20px;box-shadow:0 24px 60px #141e2d38;width:100%;max-width:640px;max-height:calc(100vh - 32px);overflow-y:auto;padding:24px;font-family:var(--clinic-font, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);color:var(--text-1, #1A2A3A);scrollbar-width:none;-ms-overflow-style:none}.nep-dialog::-webkit-scrollbar{display:none}.nep-dialog--routine:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#ffe3a8,#ffd06b);border-radius:20px 20px 0 0}.nep-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.nep-eyebrow{font-size:11px;font-weight:600;color:var(--text-2, #6A7E8E);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.nep-title{font-size:20px;font-weight:600;letter-spacing:-.3px;line-height:1.2;color:var(--text-1, #1A2A3A)}.nep-close{width:44px;height:44px;border-radius:12px;border:none;background:transparent;color:var(--text-2, #6A7E8E);font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center}.nep-close:hover{background:var(--primary-ltr, #F0F7F9);color:var(--text-1, #1A2A3A)}.nep-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:12px}.nep-tile{min-height:108px;border:.5px solid var(--border, #E4E8EE);border-radius:14px;padding:14px 12px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:4px;font-family:inherit;color:var(--text-1, #1A2A3A);cursor:pointer;transition:transform .12s,box-shadow .12s;text-align:left}.nep-tile:hover:not(.disabled){transform:translateY(-2px);box-shadow:0 8px 18px #141e2d1f}.nep-tile.disabled{opacity:.55;cursor:not-allowed}.nep-tile-icon{font-size:26px;line-height:1}.nep-tile-label{font-size:15px;font-weight:600}.nep-tile-hint{font-size:11px;color:var(--text-2, #6A7E8E);font-weight:500;line-height:1.2}.nep-form{display:flex;flex-direction:column;gap:14px}.nep-field{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.nep-label{font-size:13px;font-weight:600;color:var(--text-1, #1A2A3A)}.nep-optional{text-transform:none;letter-spacing:0;font-weight:400;color:var(--text-2, #6A7E8E);font-size:11px}.nep-input{min-height:44px;border:.5px solid var(--border, #E4E8EE);border-radius:12px;padding:10px 14px;font-family:inherit;font-size:15px;color:var(--text-1, #1A2A3A);background:var(--input-bg, #F8FAFC)}.nep-input:focus{outline:2px solid var(--accent, #E8705A);outline-offset:1px;border-color:transparent;background:var(--card, #FFFFFF)}.nep-routine-empty{display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--surface, #F5F8FA);border:.5px solid var(--border, #E4E8EE);border-radius:12px;text-align:center}.nep-routine-empty-text{font-size:13px;color:var(--text-2, #6A7E8E);line-height:1.4}.nep-routine-empty-btn{align-self:center;min-height:44px;padding:0 18px;border:0;border-radius:22px;background:var(--accent, #E8705A);color:#fff;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.nep-routine-empty-btn:hover{filter:brightness(1.08)}.nep-row{display:flex;gap:12px;flex-wrap:wrap}.nep-check{min-height:44px;display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-1, #1A2A3A);cursor:pointer}.nep-check input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent, #E8705A);cursor:pointer}.nep-recurrence{display:flex;flex-direction:column;gap:10px;border-top:.5px dashed var(--border, #E4E8EE);padding-top:14px}.nep-freq-row{display:flex;gap:8px;flex-wrap:wrap}.nep-freq-btn{min-height:44px;padding:0 14px;border-radius:10px;border:.5px solid var(--border, #E4E8EE);background:var(--input-bg, #F8FAFC);color:var(--text-1, #1A2A3A);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.nep-freq-btn:hover:not(:disabled){background:var(--primary-ltr, #F0F7F9)}.nep-freq-btn.active{background:var(--accent, #E8705A);color:#fff;border-color:var(--accent, #E8705A)}.nep-freq-btn:disabled{opacity:.5;cursor:not-allowed}.nep-byday-row{display:flex;gap:6px;flex-wrap:wrap}.nep-byday{width:44px;height:44px;border-radius:50%;border:.5px solid var(--border, #E4E8EE);background:var(--input-bg, #F8FAFC);color:var(--text-1, #1A2A3A);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.nep-byday:hover{background:var(--primary-ltr, #F0F7F9)}.nep-byday.active{background:var(--accent, #E8705A);color:#fff;border-color:var(--accent, #E8705A)}.nep-edit-scope{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:.5px dashed var(--border, #E4E8EE)}.nep-scope-row{display:flex;gap:8px}.nep-scope-btn{flex:1;min-height:44px;padding:0 14px;border-radius:10px;border:.5px solid var(--border, #E4E8EE);background:var(--input-bg, #F8FAFC);color:var(--text-1, #1A2A3A);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer}.nep-scope-btn:hover{background:var(--primary-ltr, #F0F7F9)}.nep-scope-btn.active{background:var(--accent, #E8705A);color:#fff;border-color:var(--accent, #E8705A)}.nep-btn.danger{background:transparent;color:var(--danger, #E57373);border-color:var(--danger, #E57373)}.nep-btn.danger:hover:not(:disabled){background:var(--accent-lt, #FEF5F3)}.nep-medicine-block{display:flex;flex-direction:column;gap:10px;padding:14px;margin-top:4px;background:var(--purple-bg, #F2EEFF);border:1px solid rgba(122,92,204,.2);border-left:3px solid #7A5CCC;border-radius:12px}.nep-water-block{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--blue-bg, #E4EEFB);border:1px solid rgba(59,130,246,.25);border-left:3px solid #3B82F6;border-radius:12px}.nep-water-preset-row{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.nep-water-preset{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;min-height:52px;border-radius:10px;background:var(--card, #FFFFFF);border:1.5px solid transparent;font:inherit;color:var(--text-1, #1A2A3A);cursor:pointer;transition:background .12s,border-color .12s,transform .12s}.nep-water-preset:hover{background:#f5faff;transform:translateY(-1px)}.nep-water-preset.selected{background:#dbeafe;border-color:#3b82f6;color:#1e40af}.nep-water-preset-val{font-size:15px;font-weight:700;line-height:1}.nep-water-preset-unit{font-size:10.5px;font-weight:600;color:var(--text-2, #6A7E8E);letter-spacing:.3px}.nep-water-preset.selected .nep-water-preset-unit{color:#1e40af}.nep-water-custom{display:flex;align-items:center;gap:8px}.nep-water-custom-label{font-size:12px;color:#1e40af;font-weight:600;min-width:54px}.nep-water-custom-unit{font-size:13px;font-weight:600;color:#1e40af;padding:0 4px}.nep-prev-section{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:var(--purple-bg, #F2EEFF);border:1px solid rgba(122,92,204,.2);border-radius:10px}.nep-prev-head{font-size:12px;font-weight:700;color:#5b3fa6;letter-spacing:.2px}.nep-prev-empty{display:flex;align-items:center;gap:8px;font-size:11.5px;color:#5b3fa6;font-weight:500;background:var(--card, #FFFFFF);border:1px dashed rgba(122,92,204,.3);padding:8px 10px;border-radius:8px}.nep-prev-list{display:flex;flex-direction:column;gap:6px}.nep-prev-row{display:flex;align-items:center;gap:10px;padding:10px 12px;min-height:52px;border-radius:10px;background:var(--card, #FFFFFF);border:1px solid rgba(122,92,204,.25);font:inherit;color:var(--text-1, #1A2A3A);text-align:left;cursor:pointer;transition:background .12s,border-color .12s}.nep-prev-row:hover{background:#faf7ff;border-color:#7a5ccc}.nep-prev-row-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.nep-prev-row-name{font-size:13.5px;font-weight:600;color:var(--text-1, #1A2A3A)}.nep-prev-row-sub{font-size:11.5px;color:var(--text-2, #6A7E8E);font-weight:500}.nep-prev-row-cta{font-size:12px;color:#7a5ccc;font-weight:600;flex-shrink:0}.nep-medicine-block>.nep-label{color:#5b3fa6;font-weight:700}.nep-locked-hint{font-size:12px;color:var(--text-2, #6A7E8E);padding:8px 12px;border-radius:8px;background:var(--input-bg, #F8FAFC);border-left:2px solid var(--accent, #E8705A);line-height:1.4}.nep-edited-stamp{font-size:12px;color:var(--text-2, #6A7E8E);padding:0 2px}.nep-history{border-top:.5px solid var(--border, #E4E8EE);padding-top:12px}.nep-history-toggle{min-height:44px;width:100%;display:flex;align-items:center;gap:8px;background:transparent;border:none;font-family:inherit;font-size:13px;font-weight:600;color:var(--text-2, #6A7E8E);cursor:pointer;padding:0 2px;text-align:left}.nep-history-toggle:hover{color:var(--text-1, #1A2A3A)}.nep-history-list{display:flex;flex-direction:column;gap:10px;margin-top:8px;padding-left:14px;border-left:2px solid var(--border, #E4E8EE)}.nep-history-item{display:flex;flex-direction:column;gap:2px;padding:8px 0}.nep-history-when{font-size:11px;color:var(--text-2, #6A7E8E);font-weight:500}.nep-history-title{font-size:14px;font-weight:600;color:var(--text-1, #1A2A3A)}.nep-history-details{font-size:13px;color:var(--text-2, #6A7E8E)}.nep-history-meta{font-size:11px;color:var(--text-2, #6A7E8E)}.nep-error{min-height:44px;display:flex;align-items:center;padding:10px 14px;border-radius:12px;background:var(--accent-lt, #FEF5F3);color:var(--danger, #E57373);font-size:14px;font-weight:500}.nep-actions{margin:14px -24px -24px;padding:12px 22px 18px;border-top:1px solid var(--border, #E4E8EE);background:#fafcfd;display:flex;gap:10px;align-items:center}.nep-dialog .nep-btn{padding:10px 18px;border-radius:22px;border:none;font-family:inherit;font-size:14px;font-weight:600;min-height:44px;cursor:pointer;transition:background .12s,color .12s}.nep-dialog .nep-btn:disabled{opacity:.55;cursor:not-allowed}.nep-dialog .nep-btn.primary{background:var(--accent, #E8705A);color:#fff}.nep-dialog .nep-btn.primary:hover:not(:disabled){background:var(--accent-dk, #D4604C)}.nep-dialog .nep-btn.ghost{background:transparent;color:var(--text-2, #6A7E8E)}.nep-dialog .nep-btn.ghost:hover:not(:disabled){background:var(--surface, #F5F8FA);color:var(--text-1, #1A2A3A)}.nep-dialog .nep-btn.danger-filled{background:var(--danger, #E57373);color:#fff}.nep-dialog .nep-btn.danger-filled:hover:not(:disabled){filter:brightness(.95)}.nep-dialog .share-clinic-toggle{background:var(--bg-primary, #F5F8FA);border:1px solid var(--clinic-border, #E4E8EE)}.nep-dialog .share-clinic-toggle:hover:not(:disabled){background:#edf1f5}.nep-dialog .nep-delete-row{margin-left:-24px;margin-right:-24px;margin-bottom:-24px;padding:0 22px 18px;background:#fafcfd}.nep-dialog .nep-delete-row+.nep-delete-row{padding-top:0}.nep-dialog .nep-btn-delete-wide{width:100%;min-height:44px;padding:10px 18px;border-radius:22px;background:#fdecec;color:#c04040;border:none;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s,color .12s}.nep-dialog .nep-btn-delete-wide:hover:not(:disabled){background:#fbdada;color:#a03333}.nep-dialog .nep-btn-delete-wide:disabled{opacity:.5;cursor:not-allowed}.nep-dialog .nep-btn-skip-wide{width:100%;min-height:44px;padding:10px 18px;border-radius:22px;background:var(--surface, #F5F8FA);color:var(--text-2, #6A7E8E);border:1px solid var(--border, #E4E8EE);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s}.nep-dialog .nep-btn-skip-wide:hover:not(:disabled){background:#edf1f5;color:var(--text-1, #1A2A3A)}.nep-dialog .nep-btn-skip-wide:disabled{opacity:.5;cursor:not-allowed}.nep-dialog .nep-confirm-row{margin-left:-24px;margin-right:-24px;margin-bottom:-24px;padding:14px 22px 18px;background:#d4921514;border-top:1px solid rgba(212,146,21,.2);display:flex;gap:8px;align-items:center}.nep-dialog .nep-confirm-text{flex:1;font-size:12.5px;font-weight:500;color:#b8770b;line-height:1.35}.nep-success{display:flex;flex-direction:column;align-items:center;gap:14px;padding:14px 0 0}.nep-success-icon{width:56px;height:56px;border-radius:50%;background:#e1f5ee;color:#2d8a65;font-size:28px;font-weight:700;display:flex;align-items:center;justify-content:center}.nep-success-text{font-size:15px;color:var(--text-1, #1A2A3A);text-align:center;max-width:380px}.ram-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172261;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.ram-dialog{background:#fff;width:100%;max-width:420px;border-radius:20px;box-shadow:0 20px 60px #00000038;display:flex;flex-direction:column;padding:22px 22px 18px;gap:16px;overflow:hidden;font-family:var(--clinic-font, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif)}.ram-head{display:flex;align-items:center;gap:12px}.ram-badge{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:20px}.ram-badge.timer{background:#e3f2f1;color:#5ba5a0}.ram-badge.rewards{background:#fff4e0;color:#f0a948}.ram-badge.emerg{background:#fdeded;color:#e57373}.ram-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ram-title h2{margin:0;font-size:20px;font-weight:600;letter-spacing:-.3px;color:var(--text-1)}.ram-title .ram-subtitle{font-size:12px;color:var(--text-2)}.ram-close{width:36px;height:36px;border-radius:10px;background:transparent;border:none;color:var(--text-2);font-size:20px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.ram-close:hover:not(:disabled){background:#0000000a;color:var(--text-1)}.ram-close:disabled{opacity:.5;cursor:not-allowed}.ram-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:4px 2px;background:transparent;border:none;width:100%;text-align:left;cursor:pointer;font-family:inherit}.ram-toggle-row:disabled{cursor:not-allowed;opacity:.6}.ram-toggle-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ram-toggle-title{font-size:14px;font-weight:600;color:var(--text-1)}.ram-toggle-sub{font-size:11px;color:var(--text-2);font-weight:400}.ram-toggle{position:relative;display:inline-block;width:44px;height:24px;border-radius:12px;background:var(--border);transition:background .15s;flex-shrink:0}.ram-toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000002e;transition:transform .15s}.ram-toggle.on{background:var(--toggle-on, #3B5166)}.ram-toggle.on .ram-toggle-thumb{transform:translate(20px)}.ram-hero{background:var(--surface, #F5F8FA);border-radius:16px;padding:20px 16px;text-align:center}.ram-hero-big{font-size:48px;font-weight:700;letter-spacing:-1.5px;line-height:1;color:var(--text-1);font-variant-numeric:tabular-nums}.ram-hero-small{margin-top:6px;font-size:11px;font-weight:500;letter-spacing:.4px;text-transform:uppercase;color:var(--text-2)}.ram-ring-wrap{position:relative;width:120px;height:120px;margin:0 auto}.ram-ring-wrap svg{width:100%;height:100%;transform:rotate(-90deg)}.ram-ring-bg{stroke:var(--border)}.ram-ring-fill{stroke:#f0a948;stroke-linecap:round;transition:stroke-dashoffset .4s}.ram-ring-fill.complete{stroke:var(--green, #3AB890)}.ram-ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.ram-ring-num{font-size:32px;font-weight:700;line-height:1;color:var(--text-1)}.ram-ring-goal{font-size:12px;color:var(--text-2);margin-top:2px}.ram-pill-row{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.ram-pill{padding:8px 14px;border-radius:20px;background:var(--surface, #F5F8FA);border:1.5px solid transparent;cursor:pointer;font:inherit;color:var(--text-1);font-size:13px;font-weight:500;min-height:38px;min-width:44px;transition:background .12s,border-color .12s,color .12s}.ram-pill:hover:not(:disabled){background:#edf1f5}.ram-pill.selected{background:var(--accent, #E8705A);border-color:var(--accent, #E8705A);color:#fff}.ram-pill:disabled{opacity:.55;cursor:not-allowed}.ram-primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;border-radius:24px;border:none;cursor:pointer;background:var(--accent, #E8705A);color:#fff;font-family:inherit;font-size:15px;font-weight:600;transition:background .15s,opacity .15s}.ram-primary:hover:not(:disabled){background:var(--accent-dk, #D0583F)}.ram-primary.success{background:var(--green, #3AB890)}.ram-primary.danger{background:var(--danger, #E57373)}.ram-primary.danger:hover:not(:disabled){background:var(--danger, #E57373)}.ram-primary:disabled{opacity:.5;cursor:not-allowed}.ram-primary-emoji{font-size:18px}.ram-ghost{width:100%;min-height:40px;border-radius:20px;background:transparent;border:1px solid var(--border, #E4E8EE);color:var(--text-2);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;text-align:center;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:background .12s,color .12s}.ram-ghost:hover{background:var(--surface, #F5F8FA);color:var(--text-1)}.ram-contact{padding:14px 16px;border-radius:14px;background:#fdeded;border-left:3px solid var(--danger, #E57373);display:flex;flex-direction:column;gap:2px}.ram-contact-name{font-size:15px;font-weight:600;color:var(--text-1)}.ram-contact-phone{font-size:13px;color:var(--text-2);font-variant-numeric:tabular-nums}.ram-sub{font-size:12px;color:var(--text-2);line-height:1.4}.ram-empty{padding:20px 14px;border-radius:12px;background:var(--surface, #F5F8FA);text-align:center;font-size:13px;color:var(--text-2)}.v2-shell{display:grid;grid-template-columns:240px 1fr 64px;grid-template-rows:58px 1fr;grid-template-areas:"topbar topbar topbar" "sidebar main rail";min-height:100vh;font-family:var(--clinic-font);color:var(--text-primary, #1a1a1a);background:var(--clinic-bg);font-size:13px;line-height:1.45;-webkit-font-smoothing:antialiased;transition:background .4s ease;--status-green: #1D9E75;--status-green-dark: #0F6E56;--status-green-light: #E1F5EE;--status-coral: #D85A30;--status-coral-dark: #993C1D;--status-coral-light: #FAECE7;--status-amber: #D49215;--status-amber-dark: #854F0B;--status-amber-light: #FBEFD4;--status-blue: #2B7CC4;--status-blue-dark: #185FA5;--status-blue-light: #E6F1FB;--status-pink: #C8457B;--status-rust: #A32D2D;--avatar-purple-bg: #EEEDFE;--avatar-purple-fg: #534AB7;--avatar-green-bg: #E1F5EE;--avatar-green-fg: #0F6E56;--avatar-blue-bg: #E6F1FB;--avatar-blue-fg: #185FA5;--avatar-rust-bg: #FAECE7;--avatar-rust-fg: #993C1D;--avatar-pink-bg: #FCE4EC;--avatar-pink-fg: #AD1457;--avatar-amber-bg: #FAEEDA;--avatar-amber-fg: #854F0B;--text-primary: var(--text-1, #1A2A3A);--text-secondary: var(--text-2, #6A7E8E);--text-tertiary: var(--text-m, #9CB0BE)}.v2-topbar{grid-area:topbar;position:sticky;top:0;z-index:100;background:var(--clinic-surface);border-bottom:none;display:flex;align-items:center;padding:0 16px;gap:14px}.v2-topbar:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--clinic-topbar-from, var(--clinic-primary)),var(--clinic-topbar-to, var(--clinic-accent)))}.topbar-hamburger{display:none;background:none;border:none;cursor:pointer;padding:6px;color:var(--text-secondary, #6b6b6b);min-height:44px;min-width:44px;align-items:center;justify-content:center}.topbar-brand{display:flex;align-items:center;gap:12px;min-width:240px}.brand-mark{width:30px;height:30px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.brand-mark img{width:100%;height:100%;display:block}.brand-text{display:flex;flex-direction:column;line-height:1.1;min-width:0}.brand-name{font-family:var(--clinic-font-display);font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-logo{height:26px;width:auto;max-width:116px;object-fit:contain;display:block;flex-shrink:0}.topbar-search{position:relative;flex:1;max-width:480px;display:flex;align-items:center;background:var(--clinic-bg);border:.5px solid var(--clinic-border);border-radius:var(--clinic-radius-sm);padding:0 10px;gap:8px;min-height:44px;transition:border-color .15s}.topbar-search:focus-within{border-color:var(--clinic-focus-ring, var(--clinic-primary))}.topbar-search svg{color:var(--text-tertiary, #9b9b9b);flex-shrink:0}.topbar-search input{flex:1;border:none;outline:none;background:transparent;font-family:inherit;font-size:13px;color:var(--text-primary, #1a1a1a);min-height:44px}.topbar-search input::placeholder{color:var(--text-tertiary, #9b9b9b)}.topbar-search-results{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--clinic-surface, #FFFFFF);border:.5px solid var(--clinic-border, #E4E8EE);border-radius:var(--clinic-radius-sm, 10px);box-shadow:0 8px 24px #0f17201f;padding:6px;z-index:200;max-height:calc(100vh - 80px);overflow-y:auto}.topbar-search-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 10px;border:none;background:transparent;font:inherit;text-align:left;cursor:pointer;border-radius:8px;min-height:44px;color:var(--text-primary, #1a1a1a)}.topbar-search-row.focused,.topbar-search-row:hover{background:var(--clinic-bg, #F5F8FA)}.topbar-search-row-title{font-size:13px;font-weight:500}.topbar-search-row-cat{font-size:11px;color:var(--text-tertiary, #9CB0BE);text-transform:uppercase;letter-spacing:.4px;font-weight:600}.topbar-search-section-head{font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--text-tertiary, #9CB0BE);padding:8px 10px 4px}.topbar-search-section-head+.topbar-search-row{margin-top:0}.topbar-search-row--entity{align-items:flex-start;gap:10px;padding:10px}.topbar-search-row--entity .topbar-search-row-icon{flex-shrink:0;font-size:16px;line-height:1;margin-top:2px}.topbar-search-row--entity .topbar-search-row-body{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.topbar-search-row--entity .topbar-search-row-title{font-size:13px;font-weight:500;white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;text-align:left}.topbar-search-row--entity .topbar-search-row-cat{font-weight:500;letter-spacing:.2px;text-transform:none;font-size:10.5px;color:var(--text-secondary, #6A7E8E)}.topbar-search-empty{padding:12px 10px;font-size:13px;color:var(--text-secondary, #6A7E8E)}.kbd{font-size:10px;color:var(--text-tertiary, #9b9b9b);background:var(--clinic-surface);border:.5px solid var(--clinic-border);border-radius:4px;padding:1px 5px}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:6px}.online-pill{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--status-green-light, #E1F5EE);color:var(--status-green-dark, #0F6E56);font-size:11px;font-weight:500;margin-right:4px;border:none;cursor:pointer;font-family:inherit;min-height:44px}.online-pill:hover{filter:brightness(.97)}.online-pill:focus-visible{outline:2px solid currentcolor;outline-offset:2px}.online-pill .dot{width:7px;height:7px;border-radius:50%;background:var(--status-green, #1D9E75)}[data-state=offline] .online-pill{background:var(--status-amber-light, #FBEFD4);color:var(--status-amber-dark, #854F0B)}[data-state=offline] .online-pill .dot{background:var(--status-amber, #D49215)}.icon-btn{width:32px;height:32px;border-radius:var(--clinic-radius-sm);background:transparent;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary, #6b6b6b);position:relative;transition:background .12s,color .12s;min-height:44px;min-width:44px}.icon-btn:hover{background:var(--clinic-bg);color:var(--text-primary, #1a1a1a)}.bell-dot{position:absolute;top:6px;right:7px;width:7px;height:7px;border-radius:50%;background:var(--clinic-notify-dot, var(--clinic-primary));border:1.5px solid var(--clinic-surface)}.avatar{width:32px;height:32px;border-radius:50%;background:var(--avatar-purple-bg, #EEEDFE);color:var(--avatar-purple-fg, #534AB7);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;margin-left:4px;cursor:pointer;min-height:44px;min-width:44px;border:none}.topbar-account-menu{position:relative}.topbar-account-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:var(--clinic-surface);border:.5px solid rgba(0,0,0,.12);border-radius:var(--clinic-radius-sm);box-shadow:0 8px 24px #0000001f;z-index:200;overflow:hidden}.topbar-account-dropdown-head{padding:12px 14px;border-bottom:.5px solid rgba(0,0,0,.08)}.topbar-account-dropdown-name{font-size:13px;font-weight:600;color:var(--text-primary, #1a1a1a)}.topbar-account-dropdown-email{font-size:11px;color:var(--text-tertiary, #9b9b9b);margin-top:2px;word-break:break-all}.topbar-account-dropdown-item{display:block;width:100%;text-align:left;padding:10px 14px;font-size:13px;font-family:inherit;color:var(--text-primary, #1a1a1a);background:none;border:0;cursor:pointer;min-height:44px}.topbar-account-dropdown-item:hover{background:#0000000a}.topbar-account-dropdown-item--danger{color:var(--status-rust);border-top:.5px solid rgba(0,0,0,.08)}.child-selector{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--clinic-radius-sm);background:var(--clinic-bg);border:.5px solid var(--clinic-border);font-family:inherit;font-size:12px;font-weight:500;color:var(--text-primary);cursor:pointer;min-height:44px}.child-selector:hover{border-color:var(--clinic-primary)}.v2-sidebar{grid-area:sidebar;background:var(--clinic-surface);border-right:.5px solid var(--clinic-border);padding:14px 10px 28px;overflow-y:auto;position:sticky;top:58px;height:calc(100vh - 58px);scrollbar-width:none}.v2-sidebar::-webkit-scrollbar{display:none}.v2-sidebar:before{content:"";position:absolute;top:0;left:0;right:0;height:130px;background:linear-gradient(180deg,var(--clinic-sidebar-wash, var(--clinic-primary-light)) 0%,transparent 100%);opacity:.55;pointer-events:none;z-index:0}.v2-sidebar>.sidebar-group{position:relative;z-index:1}.sidebar-group{margin-bottom:16px}.sidebar-label{font-size:10px;font-weight:600;color:var(--text-tertiary, #9b9b9b);letter-spacing:.07em;text-transform:uppercase;padding:4px 10px;margin-bottom:2px}.sidebar-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--clinic-radius-sm);color:var(--text-secondary, #6b6b6b);cursor:pointer;font-size:13px;position:relative;transition:background .12s,color .12s;-webkit-user-select:none;user-select:none;text-decoration:none;min-height:44px}.sidebar-item:hover{background:var(--clinic-bg);color:var(--text-primary, #1a1a1a)}.sidebar-item svg{flex-shrink:0}.sidebar-item.active{background:var(--clinic-sidebar-active-bg, var(--clinic-primary-light));color:var(--clinic-sidebar-active-fg, var(--clinic-primary));font-weight:500}.sidebar-item .count{margin-left:auto;font-size:10px;font-weight:500;padding:1px 7px;border-radius:999px;background:var(--status-coral-light, #FAECE7);color:var(--status-coral-dark, #993C1D)}.v2-main{grid-area:main;padding:22px 30px 60px;min-width:0}.offline-banner{display:none;background:var(--status-amber-light, #FBEFD4);border:.5px solid var(--status-amber, #D49215);color:var(--status-amber-dark, #854F0B);padding:10px 14px;border-radius:var(--clinic-radius-sm);font-size:12px;margin-bottom:16px;align-items:center;gap:8px}[data-state=offline] .offline-banner{display:flex}.v2-rail{grid-area:rail;background:var(--clinic-bg);border-left:.5px solid var(--clinic-border);padding:10px 0 12px;display:flex;flex-direction:column;align-items:center;position:sticky;top:58px;height:calc(100vh - 58px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;gap:8px}.v2-rail::-webkit-scrollbar{display:none}.rail-section{flex-shrink:0;width:100%;display:flex;flex-direction:column;align-items:center;gap:7px;padding:0 0 4px}.rail-slot{width:44px;height:44px;border-radius:11px;display:flex;border:none;background:transparent;font:inherit;padding:0;color:inherit;align-items:center;justify-content:center;position:relative;cursor:pointer;flex-shrink:0;transition:transform .12s,background .12s}.rail-slot:hover{transform:translateY(-1px)}.rail-slot.rail-rewards{background:var(--status-amber-light);color:var(--status-amber-dark)}.rail-slot.rail-timer{background:var(--status-blue-light);color:var(--status-blue-dark)}.rail-slot.rail-sos{background:var(--status-coral-light);color:var(--status-coral-dark)}.rail-slot.rail-buddy{background:var(--avatar-purple-bg);color:var(--avatar-purple-fg)}.rail-slot.rail-help{background:var(--status-green-light);color:var(--status-green-dark)}.rail-slot .rail-emoji{font-size:18px;line-height:1}.rail-slot.rail-quicklog-win{background:var(--status-green-light, #E1F5EE)}.rail-slot.rail-quicklog-behavior{background:var(--status-coral-light, #FAECE7)}.rail-slot.rail-quicklog-note{background:var(--status-amber-light, #FFF7E2)}.rail-slot.rail-quicklog-photo{background:var(--avatar-pink-bg, #FCE9F3)}.rail-slot.rail-event-meal{background:var(--green-bg, #E1F5EE)}.rail-slot.rail-event-routine{background:var(--avatar-pink-bg, #FCE9F3)}.rail-slot.rail-event-medicine{background:var(--avatar-purple-bg, #EEEDFE)}.rail-slot.rail-event-sleep{background:var(--status-blue-light, #E4EEFB)}.rail-slot.rail-event-general{background:var(--status-green-light, #E1F5EE)}.rail-slot.rail-event-potty{background:#fde2ec}.rail-slot.rail-event-medical{background:#dc2626}.share-clinic-toggle{width:100%;min-height:56px;display:flex;flex-direction:row-reverse;align-items:center;gap:12px;margin-top:8px;padding:10px 14px;background:#f5f8fa;border:1px solid var(--clinic-border, #E4E8EE);border-radius:12px;font-family:inherit;cursor:pointer;text-align:left;color:inherit;transition:background .12s ease,border-color .12s ease}.share-clinic-toggle:hover:not(:disabled){background:#edf1f5}.share-clinic-toggle.in-footer{flex:1;width:auto;margin-top:0;min-width:0}.share-clinic-toggle:disabled{cursor:not-allowed;opacity:.6}.share-clinic-track{position:relative;width:44px;height:24px;border-radius:12px;background:var(--clinic-border, #E4E8EE);flex-shrink:0;transition:background .15s ease}.share-clinic-track.on{background:var(--toggle-on, #3B5166)}.share-clinic-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s ease}.share-clinic-track.on .share-clinic-thumb{transform:translate(20px)}.share-clinic-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.share-clinic-title{font-size:12px;font-weight:600;color:var(--text-primary, #1A2A3A);line-height:1.2}.share-clinic-sub{font-size:10px;color:var(--text-secondary, #6A7E8E);line-height:1.2}.rail-divider{width:24px;height:1px;background:var(--clinic-border, #E4E8EE);margin:2px 0 4px;align-self:center}@media(max-width:1279px)and (min-width:768px){.v2-shell{grid-template-columns:64px 1fr 64px}.v2-sidebar{padding:14px 8px 28px}.sidebar-label{display:none}.sidebar-group{margin-bottom:10px}.sidebar-item{justify-content:center;padding:10px 8px}.sidebar-item .label{display:none}.sidebar-item .count{position:absolute;top:2px;right:2px;margin:0;padding:0 5px;font-size:9px}.topbar-brand{min-width:64px}.brand-name{display:none}}@media(max-width:767px){.v2-shell{grid-template-columns:1fr;grid-template-areas:"topbar" "main"}.v2-sidebar{position:fixed;top:58px;left:0;width:280px;max-width:86vw;height:calc(100vh - 58px);transform:translate(-100%);transition:transform .22s cubic-bezier(.32,.72,0,1);z-index:95;padding:14px 12px calc(28px + env(safe-area-inset-bottom))}[data-drawer=open] .v2-sidebar{transform:translate(0);box-shadow:0 12px 40px #0000003d}.v2-drawer-overlay{display:none;position:fixed;top:58px;right:0;bottom:0;left:0;background:#0f17206b;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);border:0;padding:0;margin:0;z-index:90;opacity:0;transition:opacity .22s ease;cursor:pointer}[data-drawer=open] .v2-drawer-overlay{display:block;opacity:1}.topbar-hamburger{display:flex}.v2-topbar{padding:0 8px;gap:8px}.topbar-brand{min-width:0;flex:1;gap:8px}.brand-mark{width:28px;height:28px;border-radius:7px}.brand-name{font-size:15px}.topbar-search{display:none}.topbar-right{gap:2px}.online-pill .pill-text{display:inline}.online-pill{padding:4px 12px;min-width:44px;gap:5px;font-size:11px}.topbar-right>.icon-btn[aria-label="Help and status"]{display:none}.child-selector{font-size:12px;padding:4px 6px}.v2-main{padding:16px 16px calc(80px + env(safe-area-inset-bottom));overflow-x:hidden}.v2-rail{display:flex;position:fixed;top:58px;right:0;width:80px;height:calc(100vh - 122px - env(safe-area-inset-bottom));transform:translate(100%);transition:transform .22s cubic-bezier(.32,.72,0,1);z-index:95;border-left:.5px solid var(--clinic-border);background:var(--clinic-surface);padding:14px 0 calc(20px + env(safe-area-inset-bottom))}[data-rail=open] .v2-rail{transform:translate(0);box-shadow:-12px 0 40px #0000002e}.v2-rail-handle{position:fixed;top:50%;right:0;transform:translateY(-50%);width:44px;height:56px;border-radius:12px 0 0 12px;border:.5px solid var(--clinic-border);border-right:none;background:var(--clinic-surface);color:var(--text-secondary, #6A7E8E);box-shadow:-3px 2px 12px #0f17201a;display:flex;align-items:center;justify-content:flex-end;cursor:pointer;z-index:92;padding:0 6px 0 0;transition:transform .22s cubic-bezier(.32,.72,0,1),background .14s}.v2-rail-handle:before{content:"";position:absolute;left:5px;top:18px;bottom:18px;width:3px;border-radius:2px;background:var(--clinic-primary, #2B7CC4);opacity:.7}.v2-rail-handle:active{background:var(--clinic-bg)}[data-rail=open] .v2-rail-handle{transform:translateY(-50%) translate(-80px)}[data-rail=open] .v2-rail-handle svg{transform:rotate(180deg)}.v2-rail-handle svg{transition:transform .22s ease}.v2-rail-overlay{display:none;position:fixed;top:58px;right:0;bottom:0;left:0;background:#0f17206b;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);border:0;padding:0;margin:0;z-index:90;opacity:0;transition:opacity .22s ease;cursor:pointer}[data-rail=open] .v2-rail-overlay{display:block;opacity:1}.v2-bottom-tabs{display:flex;position:fixed;bottom:0;left:0;right:0;height:calc(64px + env(safe-area-inset-bottom));padding:0 0 env(safe-area-inset-bottom);background:var(--clinic-surface, #fff);border-top:.5px solid var(--clinic-border, #E4E8EE);box-shadow:0 -4px 16px #0f17200f;z-index:80}.v2-bt-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px 6px;color:var(--text-tertiary, #9CB0BE);text-decoration:none;font-size:10px;font-weight:500;letter-spacing:.01em;min-height:44px;transition:color .14s ease;-webkit-tap-highlight-color:transparent}.v2-bt-item svg{transition:transform .14s ease}.v2-bt-item:active svg{transform:scale(.92)}.v2-bt-item.active{color:var(--clinic-primary, #2B7CC4)}.v2-bt-item.active svg{transform:translateY(-1px)}}@media(min-width:768px){.v2-bottom-tabs,.v2-drawer-overlay,.v2-rail-handle,.v2-rail-overlay{display:none}}:root{--topbar: #3D7C8A;--primary: #3D7C8A;--primary-dk: #2D6270;--primary-lt: #E4F1F4;--primary-ltr: #F0F7F9;--accent: #E8705A;--accent-dk: #D4604C;--accent-lt: #FEF5F3;--accent-bg: rgba(232, 112, 90, .06);--accent-bg-strong: rgba(232, 112, 90, .1);--text-1: #1A2A3A;--text-2: #6A7E8E;--text-m: #9CB0BE;--border: #E4E8EE;--border-lt: #F0F2F6;--surface: #F5F8FA;--card: #FFFFFF;--input-bg: #F8FAFC;--green: #3AB890;--danger: #E57373;--warning: #F59E0B;--warning-dk: #E65100}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,sans-serif;background:var(--surface);color:var(--text-1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit}button{font-family:Inter,sans-serif;cursor:pointer;border:none;background:none}input,select,textarea{font-family:Inter,sans-serif}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-m)}
