.service-workspace{max-width:1500px;margin:auto}.service-workspace *{box-sizing:border-box}.service-toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:20px 0}.service-toolbar .field{min-width:150px;margin:0}.service-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid #d5dfd9;padding-bottom:14px;margin:20px 0}.service-tabs button[aria-current=page]{background:#24574b;color:white}.service-workspace button,.service-workspace input,.service-workspace select,.service-workspace textarea{font:inherit}.service-workspace input:not([type=checkbox]),.service-workspace select,.service-workspace textarea{width:100%;border:1px solid #b9cbc3;border-radius:8px;background:#fff;padding:10px;min-width:0;color:#263e35}.service-workspace textarea{min-height:88px;resize:vertical}.service-workspace input[type=checkbox]{width:19px;height:19px;accent-color:#24574b}.service-workspace button:focus-visible,.service-workspace a:focus-visible,.service-workspace input:focus-visible,.service-workspace select:focus-visible,.service-workspace textarea:focus-visible{outline:3px solid #609c89;outline-offset:3px}.service-card{border:1px solid #d5dfd9;background:#fff;border-radius:14px;padding:22px;margin:16px 0}.service-card h2{font-size:19px;margin:0 0 15px}.service-card h3{font-size:15px;margin:18px 0 10px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-grid>.full{grid-column:1/-1}.service-checks{display:flex;flex-wrap:wrap;gap:14px;margin:12px 0}.service-checks label{display:flex;gap:7px;align-items:center}.service-scroll{max-width:100%;overflow:auto;border:1px solid #d5dfd9;border-radius:12px}.service-table{border-collapse:collapse;width:100%;font-size:13px;background:white}.service-table th,.service-table td{border-bottom:1px solid #e3eae6;padding:10px;text-align:left;white-space:nowrap}.service-table thead{background:#edf4ef}.service-matrix th:first-child,.service-matrix td:first-child{position:sticky;left:0;background:#f6f9f6;z-index:1;min-width:130px}.service-matrix td{padding:3px;text-align:center}.service-cell{min-width:38px;min-height:40px;border:1px solid transparent;background:transparent;border-radius:6px;cursor:pointer}.service-cell[data-status=arrived],.service-cell[data-status=attended]{background:#dcefe5;color:#184b36}.service-cell[data-status=scheduled]{background:#e9eff8;color:#354a73}.service-cell[data-status=absent]{background:#fae9e4;color:#863e32}.service-cell[data-status=transferred]{background:#eee4f6;color:#6e3e89}.service-cell[data-review=false]{border:1px dashed #aa7040}.service-cell:hover{outline:2px solid #759c8d}.service-muted{color:#67786e;font-size:13px;line-height:1.65}.service-status{padding:12px 15px;border-radius:8px;background:#e7f3ea;white-space:pre-wrap}.service-status:empty{display:none}.service-status[data-error=true]{background:#fce9e4;color:#873829}.service-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.service-summary>div{background:#edf4ef;border-radius:10px;padding:15px}.service-summary strong{display:block;font-size:24px;margin-top:6px}.service-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.service-editor{scroll-margin-top:20px}.service-workspace fieldset{border:0;padding:0;margin:0;min-width:0}.service-workspace fieldset:disabled{opacity:.75}.service-workspace canvas{touch-action:none;width:100%;max-width:800px;height:220px;background:white;border:1px solid #86a697;border-radius:8px}.service-workspace .signature-image{max-width:100%;height:auto;max-height:220px;border:1px solid #ddd}.service-preview{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;padding:15px;background:#f3f6f2;border-radius:8px}.service-tag-row{display:grid;grid-template-columns:minmax(120px,1fr) 105px 105px 130px 65px;gap:10px;align-items:center;margin:10px 0}.service-tag-row.simple{grid-template-columns:minmax(120px,1fr) 120px 65px}.service-tag-row label span{display:block;font-size:12px;color:#667970}.service-workspace a.button{text-decoration:none}.service-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.service-calendar-day{border:1px solid #d5dfd9;border-radius:8px;padding:9px;background:white;min-height:85px;cursor:pointer;text-align:left}.service-calendar-day strong{display:block}.service-calendar-day small{display:block;color:#547163;margin-top:8px}.service-calendar-day[aria-pressed=true]{border:2px solid #24574b;background:#e7f1e9}.service-day-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.service-day-list>button{background:#fff;border:1px solid #d5dfd9;border-radius:10px;padding:14px;text-align:left;cursor:pointer}.service-day-list strong{display:block;margin-bottom:6px}.service-payment{max-width:200px}.service-currency{font-variant-numeric:tabular-nums}.service-workspace [hidden]{display:none!important}@media(max-width:700px){.service-grid,.service-day-list{grid-template-columns:1fr}.service-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{padding:15px}.service-tag-row,.service-tag-row.simple{grid-template-columns:minmax(0,1fr) 80px}.service-calendar-grid{gap:3px}.service-calendar-day{padding:5px;font-size:11px;min-height:75px}.service-toolbar .field{flex:1;min-width:130px}.service-workspace h1{font-size:25px}}

.service-tag-row{grid-template-columns:minmax(120px,1fr) 80px 90px 95px 115px 60px 85px}.service-tag-row.simple{grid-template-columns:minmax(120px,1fr) 110px 65px 85px}.service-tag-row .button{padding:7px;min-width:32px}.service-workspace .service-summary strong{font-size:clamp(16px,2vw,24px)}@media(max-width:1150px){.service-tag-row,.service-tag-row.simple{grid-template-columns:minmax(0,1fr) 95px}.service-tag-row>[class=field]:first-child{grid-column:1/-1}}

.line-photo-choice{display:flex;align-items:center;gap:12px;min-height:80px;margin:10px 0;overflow-wrap:anywhere}.line-photo-choice img{width:88px;height:72px;object-fit:cover;border-radius:6px}.line-photo-choice input{width:20px;height:20px}

.service-month-navigation{display:flex;align-items:end;flex-wrap:wrap;gap:8px}.service-copayment h2{font-size:22px;margin:26px 0 16px}.service-copayment .service-status{margin-bottom:20px}.service-copayment .service-table{font-size:14px}.service-copayment td:first-child{font-weight:600}.service-copayment .service-table td{padding:14px 12px}@media(max-width:700px){.service-month-navigation{width:100%}.service-month-navigation .field{min-width:130px}.session-context{flex-wrap:wrap}.service-copayment h2{font-size:20px}}

/* LINE: a calm, readable delivery ledger, with composer and settings on demand. */
.line-workspace .page-heading{margin-bottom:22px}.line-workspace h1{display:flex;align-items:center;gap:13px}.heading-icon{width:30px;height:30px;flex:none}.line-workspace .service-toolbar{margin:0 0 20px;justify-content:flex-end}.line-workspace .service-toolbar .field{min-width:200px}.line-panel-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 24px}.line-panel-nav .button{font-weight:500;background:transparent}.line-panel-nav [aria-current=page]{background:#4e7d89;color:#fff;border-color:#4e7d89}.line-notice{display:flex;gap:14px;align-items:center;border:1px solid #acc6cc;border-radius:18px;background:#dce8e9;color:#436f7b;padding:22px 24px;margin-bottom:26px;line-height:1.8;font-size:16px}.line-notice>span{font-size:23px;flex:none}.line-notice p{margin:0}.line-history-table{overflow:hidden;border:1px solid #d8d2c6;border-radius:18px;background:#fffdf8;box-shadow:0 12px 28px rgb(48 53 42 / 6%)}.line-history-table table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:16px;line-height:1.8}.line-history-table th{padding:14px 20px;background:#dce8e9;border-bottom:3px solid #bdb8ad;color:#557078;font-weight:600;text-align:left;letter-spacing:.04em}.line-history-table td{padding:20px;border-bottom:1px solid #d9d3c6;vertical-align:top;overflow-wrap:anywhere;color:#282f31}.line-history-table tr:last-child td{border-bottom:0}.line-history-table th:nth-child(1){width:16%}.line-history-table th:nth-child(2){width:12%}.line-history-table th:nth-child(3){width:15%}.line-history-table th:nth-child(4){width:9%}.line-history-table th:nth-child(5){width:35%}.line-history-table th:nth-child(6){width:13%}.line-message-body{white-space:pre-wrap;line-height:1.9;margin:0 0 12px}.line-message-body:last-child{margin-bottom:0}.line-result{display:inline-block;padding:2px 10px;border-radius:6px;background:#e9e0cc;color:#735619;font-size:13px;font-weight:700;white-space:nowrap}.line-result[data-result=sent]{background:#1a865a;color:white}.line-result[data-result=failed]{background:#f4dcd4;color:#873e31}.line-result[data-result=pending]{background:#dce8e9;color:#375d6b}.line-secondary{color:#747879;font-size:14px}.line-error{color:#964a3b;font-size:14px}.line-history-table [data-service-action=line-journal]{min-height:44px;padding:0;border:0;background:transparent;text-align:left;color:#6c7376;text-decoration:underline;text-underline-offset:4px;font-size:14px;font-weight:400}.line-history-table [data-service-action=retry-line]{margin-top:12px;font-size:13px}.line-empty{padding:48px 24px;text-align:center;color:#758184}.line-empty strong{display:block;color:#3d535a;font-size:20px;margin-bottom:12px}.line-empty p{margin:0;font-size:15px}.line-history-table .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.line-workspace .service-card{border-radius:18px;padding:26px}.line-workspace .service-card h2{font-size:21px;margin-bottom:24px}
@media(max-width:1100px){.line-history-table th,.line-history-table td{padding:14px 12px;font-size:14px}.line-history-table th:nth-child(1){width:16%}.line-history-table th:nth-child(5){width:30%}.line-history-table th:nth-child(6){width:18%}}
@media(max-width:640px){.line-workspace .service-toolbar{justify-content:stretch}.line-workspace .service-toolbar .field{min-width:0;flex:1}.line-panel-nav{gap:6px;margin-bottom:20px}.line-panel-nav .button{padding-inline:12px;font-size:13px}.line-notice{padding:18px 16px;gap:10px;font-size:14px;align-items:flex-start;border-radius:14px}.line-history-table{border-radius:16px}.line-history-table table,.line-history-table tbody{display:block}.line-history-table thead{display:none}.line-history-table tr{display:block;padding:18px;border-bottom:1px solid #d9d3c6}.line-history-table tr:last-child{border-bottom:0}.line-history-table td{display:grid;grid-template-columns:95px minmax(0,1fr);gap:12px;border:0;padding:6px 0;font-size:15px}.line-history-table td::before{content:attr(data-label);color:#62777c;font-weight:600;font-size:13px}.line-history-table td:nth-child(5){display:block;padding-top:18px}.line-history-table td:nth-child(5)::before{display:block;margin-bottom:10px}.line-history-table .line-empty-row td{display:block}.line-history-table .line-empty-row td::before{display:none}.line-history-table .line-result{justify-self:start}.line-history-table td:nth-child(5) .button{max-width:100%;white-space:normal}.line-workspace .service-card{padding:18px}.line-empty{padding:30px 5px}.line-empty strong{font-size:18px}}
@media(min-width:701px){.line-workspace .service-workspace{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px}.line-workspace .page-heading{grid-column:1;margin-bottom:24px;align-self:end}.line-workspace .service-toolbar{grid-column:2;margin:0 0 24px}.line-workspace .service-workspace>.service-status,.line-workspace .service-content,.line-workspace .service-editor{grid-column:1/-1}}

.line-cell-value{min-width:0}

/* Adapted from schedules/calendar.html @ day-service 8590ea6: Monday-first joined table. */
.calendar-workspace .service-workspace{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 24px}.calendar-workspace .page-heading{align-self:center;margin:0 0 24px}.calendar-workspace h1{display:flex;align-items:center;gap:12px}.calendar-workspace .service-content,.calendar-workspace .service-status,.calendar-workspace .service-editor{grid-column:1/-1}.calendar-month-nav{display:flex;align-items:center;gap:10px;margin-bottom:24px}.calendar-month-nav>.button{min-width:44px;padding:8px 13px;font-weight:500}.calendar-month-nav>.button:not(:last-child){font-size:24px;line-height:1}.calendar-month-picker{position:relative;display:flex;align-items:center;justify-content:center;min-width:130px;min-height:44px;font-size:18px;font-weight:700;cursor:pointer}.calendar-month-picker input{position:absolute;inset:0;opacity:0;cursor:pointer}.calendar-month-picker:focus-within{outline:3px solid #609c89;outline-offset:2px;border-radius:6px}.calendar-create{margin:0 0 22px}.calendar-create>.button{display:inline-flex;align-items:center;gap:6px;font-weight:600;min-height:42px}.calendar-created{background:#6c757d;color:#fff;font-size:12px;padding:2px 7px;border-radius:6px;white-space:nowrap}.calendar-sheet{border:1px solid #d8d2c6;border-radius:18px;background:#fffdf8;box-shadow:0 8px 20px rgba(25,43,43,.055);overflow:hidden}.reference-calendar{width:100%;border-collapse:collapse;table-layout:fixed;background:#fffdf8}.reference-calendar th{padding:12px 4px;text-align:center;color:#486064;background:rgba(243,239,231,.9);border-bottom:2px solid #b7b0a3;font-size:14px;font-weight:600}.reference-calendar td{vertical-align:top;height:80px;border:1px solid #dee2e6;padding:0}.reference-calendar td:first-child{border-left:0}.reference-calendar td:last-child{border-right:0}.reference-calendar tr:last-child td{border-bottom:0}.calendar-empty{background:#f8f9fa}.calendar-day-button{display:flex;flex-direction:column;width:100%;min-height:80px;height:100%;border:0;border-radius:0;padding:7px 9px;background:transparent;text-align:left;cursor:pointer;color:#172d31}.calendar-day-button:hover{background:#dce8e9}.calendar-day-button:focus-visible{outline:3px solid #4e7d89!important;outline-offset:-3px!important}.calendar-day-number{display:block;font-size:18px;font-weight:700;line-height:1.5}.calendar-day-badges{display:flex;flex-direction:column;gap:4px;width:100%;margin-top:5px}.calendar-badge{display:inline-block;min-width:0;border-radius:6px;padding:2px 7px;background:#4e7d89;color:white;font-size:13px;font-weight:700;line-height:1.3;text-align:center;white-space:nowrap}.calendar-badge[data-kind=arrived]{background:#198754}.calendar-badge[data-kind=absent]{background:#6c757d}.calendar-badge[data-kind=transferred]{background:#854f0b}.reference-calendar [data-weekday="6"] .calendar-day-number,.reference-calendar th[data-weekday="6"]{color:#0d6efd}.reference-calendar [data-weekday="0"] .calendar-day-number,.reference-calendar th[data-weekday="0"]{color:#791f1f}.reference-calendar td[data-weekday="6"]{background:#f0f5ff}.reference-calendar td[data-weekday="0"]{background:#fff5f5}.reference-calendar td[data-today=true]{background:#dce8e9;box-shadow:inset 0 0 0 1px #4e7d89}.reference-calendar td[data-today=true] .calendar-day-number{color:#4e7d89}.calendar-legend{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;margin:12px 0 24px;color:#687375;font-size:13px}.calendar-legend>span{display:inline-flex;align-items:center;gap:7px}.calendar-tools{margin-top:16px;padding:14px 0;border-top:1px solid #d8d2c6;color:#486064;font-size:14px}.calendar-tools>summary{cursor:pointer;min-height:32px}.calendar-workspace .service-editor{scroll-margin-top:100px}
@media(max-width:768px){.calendar-workspace .service-workspace{display:block}.calendar-workspace .page-heading{margin-bottom:18px}.calendar-month-nav{justify-content:flex-end;margin-bottom:18px}.calendar-day-button{min-height:64px;padding:4px 3px}.reference-calendar td{height:64px}.calendar-day-number{font-size:15px}.calendar-day-badges{gap:3px}.calendar-badge{font-size:10px;padding:2px 3px}.reference-calendar th{padding:8px 2px;font-size:12px}.calendar-create>.button{font-size:13px;flex-wrap:wrap;text-align:left}.calendar-legend .calendar-badge{font-size:12px}.calendar-legend{font-size:12px;gap:8px 12px}.calendar-sheet{border-radius:14px}}
@media(max-width:480px){.calendar-month-nav{gap:7px;justify-content:space-between}.calendar-month-picker{min-width:116px;font-size:17px}.calendar-day-button{min-height:56px;padding:3px 2px}.reference-calendar td{height:56px}.calendar-badge{font-size:9px;padding:2px 1px}.calendar-day-number{font-size:14px}.calendar-legend .calendar-badge{padding:2px 5px}.calendar-create>.button{font-size:12px}.calendar-created{font-size:10px}}
@media screen and (min-width:861px){.sidebar{overflow-y:auto}.sidebar>.brand,.sidebar>.facility-identity,.sidebar>.current-child,.sidebar>.primary-nav{flex-shrink:0}}
