.mode-switch{margin:0 5px 14px;padding:3px;background:#f1f4f2;border-radius:10px;display:grid;grid-template-columns:1fr 1fr;gap:2px}.mode-button{border:0;background:transparent;border-radius:7px;padding:7px 5px;font-size:8px;color:var(--muted);cursor:pointer}.mode-button.active{background:white;color:var(--forest);font-weight:700;box-shadow:0 2px 8px rgba(23,60,54,.08)}.patient-nav{display:none;overflow:auto;flex:1}.patient-mode .main-nav,.patient-mode .sidebar-plan{display:none}.patient-mode .patient-nav{display:block}.patient-mode .search{visibility:hidden}.patient-mode .top-actions .compact{display:none}.patient-mode .profile-card .avatar{background:#f4dfbd;color:#755d2c}.patient-mode .prototype-bar{background:#273d55}.patient-mode .brand-mark{background:#273d55}
.patient-hero{background:linear-gradient(130deg,#263e58,#375d70);color:white;border-radius:22px;padding:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;overflow:hidden;position:relative}.patient-hero:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;border:45px solid rgba(255,255,255,.05);right:-55px;top:-65px}.patient-hero h2{font:600 27px 'Fraunces',serif;margin:6px 0}.patient-hero p{color:#d7e2e7;font-size:12px;max-width:560px;line-height:1.6}.patient-code{padding:9px 12px;border-radius:9px;background:rgba(255,255,255,.12);font-size:9px;letter-spacing:.06em;position:relative;z-index:2}.patient-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;margin-top:18px}.patient-card{padding:22px}.patient-card .card-title h3{font-size:14px}.patient-card .card-title a{font-size:11px}.patient-next{display:flex;align-items:center;gap:14px;padding:16px;border-radius:13px;background:#f3f7f8}.patient-date{flex:0 0 52px;width:52px;height:55px;border-radius:12px;background:#273f58;color:white;display:grid;place-items:center;text-align:center}.patient-date small{font-size:8px;text-transform:uppercase}.patient-date strong{font:600 22px 'Fraunces',serif}.patient-next>div:nth-child(2){flex:1;min-width:0}.patient-next h3{font-size:14px;margin:0 0 4px}.patient-next p{font-size:10px;line-height:1.45;color:var(--muted);margin:3px 0}.patient-next>.badge{flex:none;font-size:9px}.patient-action-row{display:flex;gap:8px;margin-top:12px}.patient-action-row button{font-size:11px}.patient-balance{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--line)}.patient-balance:last-child{border:0}.patient-balance strong{display:block;font-size:13px}.patient-balance small{display:block;margin-top:4px;font-size:10px;color:var(--muted)}.patient-amount{flex:none;text-align:right}.patient-amount b{display:block;font:600 18px 'Fraunces',serif}.patient-message{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.patient-message>.avatar{flex:0 0 38px;width:38px;height:38px;border-radius:50%}.patient-message>div:not(.avatar){flex:1;min-width:0}.patient-message>.badge{flex:none}.patient-message strong{display:block;font-size:12px}.patient-message p{font-size:10px;color:var(--muted);line-height:1.55;margin:4px 0}.patient-message small{font-size:9px!important;color:var(--muted)}.patient-security{display:flex;align-items:center;gap:10px;border-radius:11px;background:#eef5f1;padding:12px 14px;margin-top:14px}.patient-security span{flex:none;font-size:17px}.patient-security strong,.patient-security small{display:block}.patient-security strong{font-size:11px}.patient-security small{font-size:9px;line-height:1.45;color:var(--muted)}
.patient-linked-room{display:flex;align-items:center;gap:9px;padding:10px 12px;margin-top:10px;border:1px solid #dbe6e1;border-radius:11px;background:#f7faf8}.patient-linked-room>span{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:white;color:#4285f4;font-weight:800}.patient-linked-room strong,.patient-linked-room small{display:block}.patient-linked-room strong{font-size:10px}.patient-linked-room small{font-size:8px;color:var(--muted);margin-top:2px;overflow-wrap:anywhere}
@media(max-width:900px){.patient-layout{grid-template-columns:1fr}}
@media(max-width:760px){.patient-hero{align-items:flex-start;flex-direction:column}.patient-mode .search{display:none}}
.patient-price-setting{border:1px solid #dbe5e1;border-radius:14px;background:#f5f8f6;padding:14px}.patient-price-copy{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.patient-price-copy label{font-weight:750}.patient-price-copy small{color:var(--muted);font-size:8px}.patient-price-controls{display:grid;grid-template-columns:34px minmax(0,1fr) 100px;align-items:center}.patient-price-controls>span{align-self:stretch;display:grid;place-items:center;border:1px solid var(--line);border-right:0;border-radius:9px 0 0 9px;background:#e8f1ed;color:var(--teal);font-weight:800}.patient-price-controls input{border-radius:0!important}.patient-price-controls select{border-left:0!important;border-radius:0 9px 9px 0!important}@media(max-width:600px){.patient-price-copy{display:grid}.patient-price-controls{grid-template-columns:32px minmax(0,1fr) 82px}}
.patient-registration-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:28px;align-items:center;padding:24px;margin-bottom:16px;border-color:#cfe1dc;background:linear-gradient(135deg,#fff 0%,#f3f8f6 100%)}
.patient-registration-link h3{margin:6px 0;font-size:18px}.patient-registration-link p{margin:0;color:var(--muted);line-height:1.55}.patient-registration-link-actions{position:relative;min-width:0}.patient-registration-link-actions code{display:block;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:12px 50px 12px 14px;border:1px solid var(--border);border-radius:10px;background:#fff;color:#49625c}.registration-copy-icon{position:absolute;right:5px;top:50%;display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:8px;background:transparent;color:#49625c;cursor:pointer;transform:translateY(-50%);transition:background .16s ease,color .16s ease}.registration-copy-icon:hover,.registration-copy-icon:focus-visible{background:#edf3f0;color:var(--teal)}.registration-copy-icon:focus-visible{outline:2px solid rgba(44,115,103,.28);outline-offset:1px}.registration-copy-icon:disabled{cursor:default;opacity:.45}.registration-copy-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.registration-copy-icon.copied{background:#e9f3f0;color:var(--teal)}.registration-copy-icon:after{position:absolute;z-index:20;right:0;top:calc(100% + 7px);width:max-content;border-radius:7px;background:#173c36;padding:6px 8px;color:#fff;content:attr(data-tooltip);font-size:9px;font-weight:700;line-height:1;opacity:0;pointer-events:none;transform:translateY(-3px);transition:.16s}.registration-copy-icon:hover:after,.registration-copy-icon:focus-visible:after,.registration-copy-icon.copied:after{opacity:1;transform:none}
.admin-create-feedback.error{color:#b64337;margin:8px 0}.admin-create-success{text-align:center;padding:18px}.admin-create-success>span{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 14px;border-radius:50%;background:#e7f4ef;color:#16715f;font-size:24px}.activation-link{display:flex;align-items:center;gap:10px;margin:22px 0}.activation-link code{flex:1;min-width:0;padding:13px;border:1px solid var(--border);border-radius:10px;background:#f6f8f7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}
.patient-profile-card{max-width:980px;padding:26px}.patient-profile-card>.person{display:flex;align-items:center;gap:14px;padding-bottom:20px;border-bottom:1px solid var(--border)}.patient-profile-card>.person .avatar{width:52px;height:52px}.patient-profile-card h2{margin:0;font-size:22px}.patient-profile-card>.person p{margin:4px 0 0;color:var(--muted)}.patient-profile-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;margin:22px 0}.patient-profile-card dl>div{padding:14px 0;border-bottom:1px solid #edf0ed}.patient-profile-card dt{font-size:12px;color:var(--muted)}.patient-profile-card dd{margin:5px 0 0;font-weight:650}.patient-payment-history{margin-top:16px;padding:20px}
@media(max-width:800px){.patient-registration-link{grid-template-columns:1fr}.patient-registration-link-actions .registration-copy-icon{width:36px}.activation-link{flex-direction:column;align-items:stretch}.patient-profile-card dl{grid-template-columns:1fr}}
