/* Keep native date/time controls readable when a desktop form column is narrow. */
#shift-form .time-fields{display:flex;flex-wrap:wrap;gap:12px;min-width:0}
#shift-form .time-fields input{flex:1 1 170px;min-width:0;box-sizing:border-box}

/* Aussie Care: compact navigation and readable sentence-case headings. */
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("../fonts/inter-variable.ttf") format("truetype")}
:root{--font:"Inter","Segoe UI",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}
h1,h2,h3,h4,h5,h6{font-family:var(--font)}
.aussie-brand{gap:10px;flex-shrink:0;font-size:19px;letter-spacing:0;font-weight:650}
.aussie-logo{width:78px;height:66px;flex-shrink:0;mix-blend-mode:multiply}
.aussie-brand small{display:block;font-size:11px;letter-spacing:0;font-weight:400;color:var(--muted);margin-top:5px}
.primary-nav{margin-left:0;gap:22px}.nav-link{white-space:nowrap}.account-name{display:none}
.main-shell{padding-top:18px}.compact-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.compact-heading h1{font-size:19px;font-weight:600;letter-spacing:0}.compact-heading .button{min-height:42px}
.eyebrow,.field-label,.side-heading h2,.calendar-title h2,.detail-note h3{font-family:var(--font);letter-spacing:0;text-transform:none}.side-heading h2{font-size:13px}.field label,.field-label{font-size:13px}.field-hint{color:#64758b}.schedule-footer{display:none}
.directory-toolbar{display:flex;align-items:center;gap:16px;padding:16px;border-bottom:1px solid var(--line);flex-wrap:wrap}.directory-toolbar .search-field{flex:1;min-width:180px}.directory-toolbar input[type=search]{width:100%;min-height:44px}.directory-toolbar select{border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;min-height:44px}.profile-directory{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.profile-row{display:flex;gap:14px;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line)}.profile-row:last-child{border:0}.profile-row .profile-label{flex:1;min-width:0}.profile-row strong{display:block;font-size:14px;overflow-wrap:anywhere}.profile-row small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.profile-row .button{min-height:40px}.directory-empty{padding:40px 20px;text-align:center;color:var(--muted)}
.profile-content{max-height:calc(100dvh - 64px);display:flex;flex-direction:column;min-height:0}.profile-content .dialog-body{min-height:0}.profile-content .dialog-header{align-items:center}.profile-content form{min-height:0}.profile-content .profile-title{font-size:19px}.profile-section{grid-column:1/-1;border:0;padding:0;margin:0}.profile-section h3,.form-section-title{font-size:14px;font-weight:600;margin:8px 0 0;padding:10px 0;border-bottom:1px solid var(--line);grid-column:1/-1}.support-options{display:grid;gap:4px}.support-options .checkbox-option{display:flex;gap:10px;font-size:13px;font-weight:400}.profile-history{margin-top:24px;font-size:12px}.profile-history summary{cursor:pointer;min-height:40px}.profile-history p{padding:10px 0;border-bottom:1px solid var(--line);line-height:1.7}.profile-value{white-space:pre-wrap}.profile-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.profile-attachment{margin-top:20px;border:1px solid var(--line);padding:16px;border-radius:9px}.profile-attachment p{margin:8px 0;font-size:13px;overflow-wrap:anywhere}.profile-attachment input{max-width:100%}.profile-attachment a{color:var(--blue);text-decoration:underline;display:inline-block;padding:12px 8px}.identifier-actions{display:flex;gap:12px;margin:7px 0}.identifier-actions button{font-size:12px;color:var(--blue);min-height:40px}.profile-notice{padding:12px;background:#edf3ff;border-radius:8px;font-size:12px;line-height:1.6;margin-bottom:15px}.lookup-results{display:grid;max-height:200px;overflow:auto;border:1px solid var(--line);border-radius:8px;margin-top:6px;background:#fff}.lookup-results button{padding:12px;text-align:left;min-height:44px;border-bottom:1px solid var(--line);font-size:13px}.lookup-results button:hover,.lookup-results button:focus{background:#edf3ff}.lookup-results small{display:block;color:var(--muted);margin-top:3px}.lookup-actions{display:flex;gap:16px;flex-wrap:wrap}.lookup-actions .text-button{min-height:40px;font-size:12px}.support-line{display:block;font-size:11px;color:#62728b;margin-top:4px}.support-warning{color:#936316;font-size:11px;display:block}.mobile-save{display:none}.profile-search-input{width:100%}
@media(max-width:1050px){.primary-nav{gap:14px}.nav-link{font-size:12px}.aussie-brand{font-size:16px}.aussie-logo{width:65px;height:59px}.header-inner{gap:12px}}
@media(max-width:820px) and (min-width:581px){.aussie-brand>span{display:none}.primary-nav{gap:12px}.header-inner{padding:0 16px}}
@media(max-width:580px){
 .site-header{height:65px}.header-inner{padding:0 16px}.aussie-logo{width:65px;height:57px}.aussie-brand{font-size:18px}.aussie-brand small{font-size:10px;margin-top:3px}.main-shell{padding:14px 14px 92px}.compact-heading{margin-bottom:12px}.compact-heading h1{font-size:16px}.compact-heading .button{min-height:40px;font-size:12px;padding:8px 11px}.day-heading h2{font-size:12px}.visit-name{font-size:13px}.visit-time{font-size:11px}.industry-badge{font-size:10px}.visit-worker{font-size:10px}.support-line{font-size:10px}.mobile-nav{padding-left:7px;padding-right:7px;gap:4px}.mobile-nav>a{min-width:0;flex:1;font-size:10px}.mobile-nav>button{flex:0 0 42px}.directory-toolbar{padding:12px;gap:9px}.directory-toolbar .search-field{min-width:100%;padding:0}.profile-row{padding:13px 12px;gap:8px;flex-wrap:wrap}.profile-row .avatar{display:none}.profile-row .profile-label{flex-basis:calc(100% - 130px)}.profile-row .button{padding:7px 10px;font-size:12px}
 .editor-dialog{position:fixed;inset:0 auto auto 0;margin:0;width:100%;height:var(--editor-height,100dvh);max-height:var(--editor-height,100dvh);max-width:none;border-radius:0;transform:translateY(var(--editor-offset,0px))}
 #dialog-content,.profile-content{height:100%;max-height:100%;min-height:0}.editor-form{flex:1;min-height:0}.dialog-body{flex:1;min-height:0;overflow-y:auto;padding:16px;background:#f4f6f9;scroll-padding:20px;overscroll-behavior:contain}.dialog-header{align-items:center;min-height:60px;padding:calc(9px + env(safe-area-inset-top)) 14px 9px;gap:8px;background:white}.dialog-header h2{font-size:17px;letter-spacing:0}.dialog-header p{font-size:11px}.dialog-header>.icon-button{margin:0;order:-1;flex-shrink:0}.dialog-header>div{flex:1}.dialog-header .mobile-save{display:inline-flex;flex-shrink:0;min-height:42px;padding:8px 12px;font-size:12px}.dialog-footer{padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.editor-form.has-top-save>.dialog-footer{display:none}.form-grid{gap:12px;background:white;border:1px solid #e3e8ef;padding:14px;border-radius:9px}.field label,.field-label{font-size:13px}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{min-height:46px;font-size:16px}.field-hint{font-size:12px}.dialog-body>.field{padding:14px;background:white;border-radius:9px;margin:12px 0}.scope-panel{background:white}.dialog-header .mobile-save:disabled{opacity:.6}.form-section-title{padding:10px 0;margin:0}.profile-content .detail-grid{padding:14px;background:#fff;border-radius:9px}.profile-attachment{background:white}.profile-content .profile-actions .button{min-height:44px}.profile-history{background:white;padding:14px;border-radius:9px}.profile-history p{overflow-wrap:anywhere}
}

/* Larger type, tighter visit spacing, and contact cards. */
body{font-size:15px;line-height:1.5}
.aussie-logo{width:52px;height:46px}.aussie-brand{font-size:20px;gap:9px;font-weight:600}.aussie-brand small{font-size:12px}
.site-header{height:72px}.sidebar{top:92px}.day-group{scroll-margin-top:88px}
.nav-link{font-size:14px;font-weight:600}.compact-heading h1{font-size:22px}.button{font-size:14px}
.week-title-button{font-size:17px}.week-toolbar>.button{font-size:13px}
.search-field input,.directory-toolbar select{font-size:14px}.filter-chip{font-size:13px}
.list-caption,.list-caption .text-button{font-size:13px}.mobile-week-note .text-button{font-size:12px}
.calendar-title h2,.side-heading h2{font-size:15px}.weekly-note-text{font-size:14px}
.day-heading{min-height:40px;padding:8px 16px}.day-heading h2{font-size:15px;font-weight:600}.day-heading-right{font-size:12px}
.day-visits{padding:10px 12px;gap:8px}.schedule-list{gap:16px}
.visit-card{min-height:0}.visit-main{min-height:78px;padding:10px 13px;gap:12px}.visit-card .avatar{width:36px;height:36px;font-size:13px}
.visit-name{font-size:16px;line-height:1.35;font-weight:600}.visit-time{font-size:14px;line-height:1.4;margin-top:3px}.visit-worker{font-size:13px;line-height:1.4;margin-top:2px}.visit-time>.icon,.visit-worker>.icon{width:13px;height:13px}.support-line{font-size:12px;margin-top:2px}
.visit-aside{padding:8px 12px 8px 0;gap:3px;justify-content:center}.visit-aside:empty{display:none}.visit-indicators:empty{display:none}.visit-aside:has(>.visit-indicators:only-child:empty){display:none}
.changed-badge{font-size:11px}.cancelled-badge{font-size:11px}.visit-indicators>span>.icon{width:14px;height:14px}
.lookup-results button{font-size:15px}.field label,.field-label{font-size:14px}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{font-size:15px}.field-hint{font-size:12px}.detail-grid,.detail-note p{font-size:14px}.activity-toggle{font-size:14px}.event-values{font-size:13px}
.profile-directory{background:transparent;border:0;overflow:visible}.directory-toolbar{background:white;border:1px solid var(--line);border-radius:10px;margin-bottom:16px;padding:12px 15px}
#profile-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}.directory-empty{grid-column:1/-1}
.profile-row.contact-card{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 2px 5px #233b5b03}
.profile-row.contact-card:last-child{border:1px solid var(--line)}.contact-card-main{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:8px;padding:18px 18px 12px;text-align:left;width:100%}.contact-card-main:hover{background:#fafcff}.contact-card-main:focus-visible{outline:2px solid var(--blue);outline-offset:-3px;border-radius:12px}
.contact-card-main .avatar{display:grid;width:36px;height:36px;font-size:13px;margin-bottom:2px}.contact-card-main strong{font-size:17px;font-weight:600;line-height:1.35}.contact-address{color:#68778c;font-size:14px;line-height:1.5;overflow-wrap:anywhere;min-height:42px}.contact-phone{font-size:14px;color:#405772;overflow-wrap:anywhere;margin-top:auto;padding-top:4px}
.contact-card-actions{display:flex;align-items:center;gap:10px;margin:0 18px;padding:5px 0;border-top:1px solid #edf0f5}.contact-action{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:13px;color:var(--blue)}.contact-action .icon{width:18px;height:18px}.contact-action:hover{color:#163f9b}.contact-action.unavailable{color:#8c98aa;opacity:.6}.contact-open{margin-left:auto;display:grid;place-items:center;min-width:36px;min-height:44px;color:#72839a}.contact-open:hover{color:var(--blue)}.contact-open .icon{width:19px;height:19px}
@media(max-width:1050px){#profile-list{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-link{font-size:13px}.primary-nav{gap:14px}.header-inner{gap:12px}.aussie-brand{font-size:18px}}
@media(max-width:580px){
 .list-caption>div,.mobile-sync{display:none}
 .list-caption{justify-content:flex-end}
 .site-header{height:58px}.header-inner{padding:0 14px}.aussie-logo{width:43px;height:39px}.aussie-brand{font-size:18px;gap:7px}.aussie-brand small{font-size:10px;margin-top:0}.day-group{scroll-margin-top:72px}
 .main-shell{padding:12px 12px calc(100px + env(safe-area-inset-bottom))}.schedule-heading{display:none}.compact-heading h1{font-size:20px}.compact-heading .button{font-size:13px}
 .week-toolbar{margin-bottom:8px}.week-title-button{font-size:14px;letter-spacing:0}.week-selection{gap:5px}.week-toolbar>.button{font-size:11px;padding:6px}.week-arrows .icon-button{width:26px}
 .filter-toolbar{padding:8px 10px;gap:5px}.search-field input{font-size:14px}.filter-chip{font-size:12px;min-height:36px}.list-caption,.list-caption .text-button{font-size:12px}.mobile-sync{font-size:10px}
 .day-heading{padding:7px 10px;min-height:39px}.day-heading h2{font-size:13px}.day-heading-right{font-size:10px;gap:6px}.day-visits{padding:8px;gap:7px}.schedule-list{gap:12px}
 .visit-main{padding:9px 10px;gap:9px;min-height:76px}.visit-card .avatar{width:32px;height:32px;font-size:12px}.visit-name{font-size:15px}.visit-time{font-size:12px}.visit-worker{font-size:12px}.support-line{font-size:11px}.visit-aside{padding:7px 8px 7px 0;max-width:76px}.visit-indicators{gap:4px;max-width:70px}.changed-badge{font-size:10px;min-height:32px}.cancelled-badge{font-size:10px}.visit-indicators>span>.icon{width:12px;height:12px}
 .mobile-nav{height:calc(74px + env(safe-area-inset-bottom));padding:4px 8px calc(4px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr 1fr 64px 1fr 1fr;gap:2px;overflow:visible;background:#fff;box-shadow:0 -3px 16px #263e5e05}.mobile-nav>a{min-width:0;min-height:58px;font-size:10px;line-height:1.2;gap:5px;text-align:center;position:relative;color:#738297}.mobile-nav>a>.icon{width:22px;height:22px}.mobile-nav>a.active:before{content:"";position:absolute;top:0;width:25px;height:2px;border-radius:2px;background:var(--blue)}.mobile-nav>a>span{max-width:70px}.mobile-nav>button{width:58px;height:58px;min-width:58px;min-height:58px;justify-self:center;border-radius:50%;margin-top:-19px;border:4px solid #fff;box-shadow:0 4px 13px #245bd733;display:grid;place-items:center}.mobile-nav>button>.icon{width:28px;height:28px;stroke-width:2}
 #profile-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.directory-toolbar{padding:10px;margin-bottom:12px;gap:6px}.directory-toolbar input[type=search]{font-size:16px}.directory-toolbar select{font-size:13px;min-height:40px;max-width:155px}.directory-toolbar .checkbox-option{font-size:12px}
 .contact-card-main{padding:13px 12px 10px;gap:7px}.contact-card-main .avatar{display:grid;width:32px;height:32px;font-size:12px}.contact-card-main strong{font-size:15px}.contact-address{font-size:13px;min-height:58px}.contact-phone{font-size:13px}.contact-card-actions{margin:0 10px;gap:9px;padding:3px 0}.contact-action{font-size:12px;gap:4px}.contact-action .icon{width:18px;height:18px}.contact-open{min-width:24px}.contact-action>span{display:none}.contact-card-actions .contact-action{min-width:34px;justify-content:center}
 .field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{font-size:16px}.lookup-results button{font-size:16px}.activity-toggle{font-size:13px}.event-values{font-size:12px}
}

/* Give visits and their details more breathing room. */
.schedule-list{gap:24px}
.day-visits{padding:16px;gap:16px}
.visit-main{padding:16px;gap:14px}
.visit-time{margin-top:7px}
.visit-worker,.support-line{margin-top:5px}
.visit-aside{padding:14px 16px 14px 0;gap:8px}
.detail-hero{margin-bottom:28px}
.detail-grid{row-gap:20px;column-gap:20px;line-height:1.8}
.detail-note{margin-top:28px;padding:20px}
.detail-note h3{margin-bottom:12px}
.detail-actions{margin-top:26px;gap:12px}
.danger-actions{margin-top:24px;padding-top:18px;gap:20px}
.history-section{margin-top:28px;padding-top:22px}
@media(max-width:580px){
 .schedule-list{gap:20px}
 .day-visits{padding:12px;gap:14px}
 .visit-main{padding:14px 10px;gap:10px}
 .visit-time{margin-top:6px}
 .visit-worker,.support-line{margin-top:4px}
 .visit-aside{padding:12px 8px 12px 0;gap:6px}
 .detail-grid{row-gap:18px;column-gap:16px}
 .detail-note{padding:18px;margin-top:24px}
}
.birth-age-row{display:flex;align-items:stretch;gap:14px}.birth-age-row>input{flex:1;min-width:0}.birth-age{flex:0 0 100px;display:flex;flex-direction:column;justify-content:center;padding:7px 12px;border-radius:7px;background:#edf3ff}.birth-age>span{font-size:11px;color:#64758b}.birth-age output{font-size:14px;font-weight:600;color:#245bd7;white-space:nowrap}

.profile-email-preview{border:1px solid var(--line);border-radius:10px;padding:20px;margin-top:20px;background:#fff;overflow-wrap:anywhere}
.profile-email-preview h3{font-size:16px;color:var(--blue);margin:0 0 16px}
.profile-email-preview p{font-size:14px;line-height:1.7;margin:16px 0}
.profile-email-preview .detail-grid{margin:20px 0;font-size:14px}
.email-attachment{padding:16px;background:#f3f7ff;border-radius:8px;margin-top:16px;overflow-wrap:anywhere}
@media(max-width:580px){.profile-email-preview{padding:14px}.profile-email-preview .detail-grid{grid-template-columns:1fr;gap:5px}.profile-email-preview dd{margin-bottom:12px}}

.profile-email-preview{border-color:#dfe7f1;border-radius:12px;padding:0 24px 20px}
.profile-email-preview::before{content:"Aussie Care Health Services";display:block;margin:0 -24px 24px;padding:22px 24px;background:#173c6c;border-top:5px solid #3975ea;border-radius:11px 11px 0 0;color:#fff;font-size:18px;font-weight:600;line-height:1.5}
.profile-email-preview h3{font-size:22px;color:#173c6c}
@media(max-width:580px){.profile-email-preview{padding:0 16px 16px}.profile-email-preview::before{margin:0 -16px 20px;padding:18px 16px;font-size:17px}}

/* Email results remain compact, including above full-screen mobile forms. */
.email-result-dialog{box-sizing:border-box;width:min(420px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:28px;border:1px solid #dfe7f1;border-radius:16px;background:#fff;color:#213553;box-shadow:0 24px 80px #102b5040;overflow:auto;font-family:inherit}
.email-result-dialog::backdrop{background:rgba(15,30,55,.48)}
.email-result-dialog .email-result-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:18px;border-radius:50%;background:#eaf2ff;color:#2563eb}
.email-result-dialog[data-status=failed] .email-result-icon{background:#fff0ef;color:#bd3434}
.email-result-dialog[data-status=uncertain] .email-result-icon{background:#fff5df;color:#916113}
.email-result-dialog h2{margin:0 0 12px;font-size:21px;font-weight:600;line-height:1.35}
.email-result-dialog p{margin:0 0 24px;font-size:15px;line-height:1.7;color:#52627a;overflow-wrap:anywhere}
.email-result-dialog .button{width:100%;min-height:44px}

/* Shared training library and email panel. */
.heading-actions,.training-inline-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.compact-heading{flex-wrap:wrap;gap:12px}.heading-actions .button{white-space:normal}
.training-dialog{width:min(720px,calc(100% - 32px))}
.training-content .dialog-header h2{font-size:21px}.training-content .dialog-header p{font-size:13px;margin-top:6px}
.training-content .dialog-body>.field,.training-content #training-email-fields>.field{margin-bottom:18px}
.training-content .field{min-width:0}.training-content input[type=file]{width:100%;max-width:100%;font-size:13px;padding:10px 0;overflow:hidden}
.training-section,.training-management{margin-top:24px}.training-section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.training-section h3{font-size:16px}
.training-document{padding:14px 0;border-bottom:1px solid var(--line)}.training-document>label{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.training-document input{margin-top:4px;flex:0 0 auto}.training-document label>span{min-width:0}.training-document strong{display:block;font-size:15px;line-height:1.5;overflow-wrap:anywhere}.training-document small{display:block;margin-top:4px;font-size:13px;color:var(--muted);overflow-wrap:anywhere}.training-document-links{display:flex;gap:18px;margin:5px 0 0 27px}.training-document-links a{font-size:13px;color:var(--blue);padding:8px 0;min-height:36px}
.training-send-button{margin-top:12px}.training-destination{padding:12px 14px;background:#f1f5fc;border-radius:8px;font-size:14px;overflow-wrap:anywhere}.training-delivery{margin-top:16px;padding:16px;background:#edf4ff;border:1px solid #d9e6ff;border-radius:8px;font-size:14px;line-height:1.7;overflow-wrap:anywhere}
#training-manager-toggle{font-size:13px;font-weight:500}#training-manager-indicator{width:16px;font-size:18px}#training-manager{margin-top:12px}
.training-edit-row{min-width:0;margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:9px}.training-edit-row legend{padding:0 6px;font-size:14px;font-weight:600;max-width:100%;overflow-wrap:anywhere}.training-edit-row .field{margin-bottom:12px}.training-edit-row .field-hint{overflow-wrap:anywhere}
.training-content button:disabled{opacity:.55;cursor:default}.training-content .profile-notice .text-button{margin-right:16px}#training-summary{margin:14px 0;line-height:1.6}
@media(max-width:580px){.heading-actions{width:100%;gap:8px}.heading-actions .button{flex:1;min-height:44px}.training-dialog{width:100%}.training-content{height:100%;max-height:100%}.training-content .dialog-header{padding:15px 14px;gap:8px}.training-content .dialog-header h2{font-size:18px}.training-content .dialog-header p{display:none}.training-content .dialog-body{padding:18px 16px 28px}.training-content .mobile-save{font-size:12px;padding:8px 10px;white-space:nowrap}.training-content .dialog-header>.icon-button{flex:0 0 40px}.training-send-button{width:100%}.training-edit-row{padding:12px}.training-inline-actions .button{max-width:100%}.training-document-links a{min-height:44px}}

/* One compact mobile row for weekly notes and schedule editing. */
@media(max-width:580px){
 .schedule-column>.filter-toolbar{margin-bottom:4px}
 .schedule-list-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 4px;min-height:44px}
 .schedule-list-tools .mobile-week-note{order:0;margin:0;min-width:0}
 .schedule-list-tools .list-caption{order:1;margin:0;min-height:0;min-width:0}
 .schedule-list-tools .text-button{margin:0;min-height:44px;font-size:12px;white-space:nowrap}
 .schedule-list-tools .text-button .icon{width:16px;height:16px;flex-shrink:0}
}
