/* Scoped additions to the accepted Atinate interface. */
.account-dropdown{position:relative;min-width:180px;max-width:330px}.account-dropdown summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;font-weight:650}.account-dropdown summary::-webkit-details-marker{display:none}.account-dropdown summary>span:first-of-type{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-dropdown .avatar{border-radius:50%;width:36px;height:36px;object-fit:cover;flex:none}.account-dropdown-content{position:absolute;right:0;top:calc(100% + 12px);min-width:250px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #dedcf0;box-shadow:0 15px 45px #22264d22;border-radius:18px;padding:16px;z-index:60}.account-profile-label{font-size:14px;margin:0 0 8px;padding-bottom:12px;border-bottom:1px solid #e9e7f0}.account-dropdown-content>a,.account-dropdown-content .linklike{display:block;text-align:left;width:100%;padding:10px 8px;font:inherit;border:0;background:transparent;border-radius:9px}.account-dropdown-content>a:hover,.account-dropdown-content .linklike:hover{background:#f1effb}.account-dropdown-content form{margin:4px 0 0;border-top:1px solid #e9e7f0}.panel-navigation{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 25px;padding:12px;border:1px solid #dfdcee;border-radius:16px;background:#fff}.panel-navigation a{padding:9px 12px;border-radius:10px;font-size:14px;font-weight:650}.panel-navigation a[aria-current=page]{background:#4740c3;color:#fff}.clinic-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:18px 0 25px}.clinic-stats article{background:#eeebfb;border-radius:18px;padding:20px;display:flex;gap:9px;flex-direction:column}.clinic-stats strong{font-size:36px;line-height:1.1}.clinic-stats span,.clinic-stats a{font-size:14px}.clinic-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.clinic-two>*{min-width:0}.clinic-actions{display:flex;flex-wrap:wrap;gap:10px}.clinic-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:20px 0}.clinic-filters .field{min-width:150px;flex:1;max-width:330px}.clinic-filters input,.clinic-filters select,.clinic-two input,.clinic-two select{max-width:100%}.clinic-table-scroll{overflow-x:auto}.clinic-table{width:100%;border-collapse:collapse;min-width:600px}.clinic-table th,.clinic-table td{padding:14px 12px;border-bottom:1px solid #e5e2ef;text-align:left}.clinic-table th{font-size:14px;background:#f2effa}.price-form{display:flex;align-items:center;gap:7px}.price-form input{width:95px;max-width:100%;padding:9px;border:1px solid #d6d4e7;border-radius:8px}.price-form label{white-space:nowrap}.calendar-key{display:flex;gap:12px;flex-wrap:wrap;font-size:13px}.calendar-key span{padding:6px 9px;border-radius:8px}.calendar-key .published{background:#edf7ee}.calendar-key .confirmed{background:#e8e4ff}.calendar-key .external{background:#fff1d7}.calendar-key .absence{background:#f4e4ec}.calendar-scroll{height:500px;overflow:auto;border:1px solid #d9d6eb;border-radius:15px;margin:18px 0 24px;position:relative;scroll-margin-top:120px}.clinic-week{display:grid;grid-template-columns:58px repeat(7,minmax(130px,1fr));min-width:1050px}.day-heading{height:46px;margin:0;display:flex;align-items:center;justify-content:center;position:sticky;top:0;z-index:5;background:#f2effa;font-size:14px;border-bottom:1px solid #d9d6eb}.day-body,.hours{height:1440px;position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 59px,#e9e7f0 59px,#e9e7f0 60px)}.day-column{border-left:1px solid #e9e7f0}.hours span{position:absolute;font-size:11px;padding:1px 5px;background:#fff}.time-block{position:absolute;left:3px;right:3px;padding:4px 5px;border-radius:6px;overflow:hidden;font-size:11px;line-height:1.2;z-index:2;border-left:3px solid #6054b7;background:#ede9ff;box-sizing:border-box}.time-block a{display:flex;flex-direction:column;gap:2px}.time-block.published{background:#eaf5ed88;border-left:0;z-index:0;pointer-events:none;padding:0}.time-block.external{background:#fff0d0;border-color:#aa7720}.time-block.absence{background:#f1dfeb;border-color:#8c4773}.time-block.completed,.time-block.attended{background:#dbeee1;border-color:#297443}.time-block.no_show{background:#f8e0dd;border-color:#ab4a3e}.time-block.needs_regularisation{border-style:dashed}.appointment-card{display:flex;justify-content:space-between;gap:20px;scroll-margin-top:24px}.appointment-card h3{font-size:21px}.appointment-card p{margin:5px 0}.appointment-actions{display:flex;align-content:start;align-items:flex-start;flex-wrap:wrap;gap:8px;max-width:370px}.appointment-actions form{display:flex;gap:8px;flex-wrap:wrap}.appointment-actions .field{max-width:160px}.clinic-agenda-details .eyebrow{font-size:13px}.r8-surface:has(.panel-navigation){max-width:1280px}.portrait-preview img{max-width:min(100%,480px);height:auto;object-fit:cover;border-radius:14px}.clinic-two textarea{width:100%}.clinic-account-hint{font-size:14px;background:#eeebfb;border-radius:12px;padding:12px}.panel-navigation:focus-within{outline:none}
@media(max-width:850px){.clinic-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.header-inner:has(.account-dropdown) .mainnav{display:none}.clinic-two{grid-template-columns:1fr}.appointment-card{flex-direction:column}.account-dropdown{min-width:0;max-width:240px}.account-dropdown summary>span:first-of-type{max-width:145px}.panel-navigation{flex-wrap:nowrap;overflow:auto;padding:8px;gap:3px}.panel-navigation a{white-space:nowrap;flex:none}.clinic-filters{align-items:center}.calendar-scroll{height:440px}.clinic-filters .field{max-width:100%}}
@media(max-width:400px){.account-dropdown summary>span:first-of-type{max-width:110px}.clinic-stats article{padding:14px}.clinic-stats strong{font-size:30px}.clinic-stats{gap:9px}.account-dropdown-content{min-width:230px}}
@media print{.topbar,.dock,.whatsapp-contact,.panel-navigation,form,button,.compact-footer{display:none!important}.clinic-table{min-width:0}.r8-shell,.r8-surface{margin:0;padding:0;max-width:none;box-shadow:none}}
@media(max-width:400px){.header-inner:has(.account-dropdown) .header-actions{min-width:0;flex:1}.account-dropdown{max-width:100%}.account-dropdown summary{gap:6px}.account-dropdown summary>span:first-of-type{min-width:0;max-width:82px;flex:1}.account-dropdown .avatar{width:28px;height:28px}.account-dropdown-content{right:0}}

.r8-surface .clinic-week .day-heading{font-size:14px;line-height:1.2;font-weight:650}

/* R12 · previews belong to the field that owns the upload. */
.file-preview{display:flex;align-items:flex-start;gap:.75rem;flex-wrap:wrap;margin-top:.65rem;max-width:100%}
.file-preview:empty{display:none}
.file-preview-image{display:block;max-width:220px;max-height:240px;width:auto;height:auto;object-fit:contain;border:1px solid #dfe3ee;border-radius:12px;background:#fff;padding:.25rem}
.file-preview-meta,.file-preview-file{font-size:.86rem;color:#5e667a;overflow-wrap:anywhere}
.file-preview-error{font-size:.88rem;color:#b42318;font-weight:700}
.file-preview--receipt{grid-column:1/-1}
[data-direct-booking] .file-preview--receipt{margin-top:.75rem;padding:.75rem;border:1px solid #e2e5ef;border-radius:.8rem;background:#fafbff}

/* R13 · activity assignment: semantic choices and compact clinical data rows. */
.activity-response-kind{margin:1rem 0 1.25rem}
.activity-response-kind>.small{margin:.3rem 0 .65rem}
.activity-response-kind .choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
.activity-response-kind .choice{min-height:76px;text-align:left}
@media(max-width:650px){.activity-response-kind .choices{grid-template-columns:1fr}}

/* Management actions introduced by R17 have live visibility state. */
.account-security [hidden]{display:none!important}
