
:root{--navy:#031a2b;--ink:#173140;--muted:#6b7e85;--teal:#39c5c7;--darkteal:#087e82;--line:#dfe8e9;--paper:#f4f7f7;--red:#d9534f;--amber:#efb552}*{box-sizing:border-box}body{margin:0;background:var(--paper);font:14px/1.5 Elite,Arial,sans-serif;color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.35;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #39c5c790;outline-offset:3px}input,select,textarea{border:1px solid #d4dfe2;background:#fff;color:var(--ink);border-radius:7px;padding:10px 11px;width:100%;transition:border-color .15s}input:focus,textarea:focus,select:focus{border-color:var(--darkteal)}textarea{resize:vertical;line-height:1.55;min-height:88px}label{font-size:12px;font-weight:700;display:block}label input,label select,label textarea{margin-top:6px;font-weight:400}h1,h2,h3,p{margin-top:0}h2{font-size:25px;letter-spacing:-.8px;margin-bottom:0}small{color:var(--muted)}.app-header{height:88px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:3px solid var(--teal)}.app-brand{display:flex;align-items:center;gap:15px}.app-brand img{width:50px;height:56px;object-fit:contain}.app-brand strong{font-family:Brand,Georgia,serif;font-size:26px;font-weight:400;letter-spacing:3px}.app-brand strong span{font:10px Elite,sans-serif;letter-spacing:2px;vertical-align:middle;margin-left:14px;color:#a2dade}.app-brand small{display:block;color:#9ebac4;font-size:11px;letter-spacing:.3px;margin-top:2px}.header-right{display:flex;align-items:center;gap:23px}.local-badge{font-size:11px;color:#b5d2d9}.local-badge i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--teal);margin-right:6px}.header-button{border:1px solid #ffffff30;border-radius:7px;background:#ffffff08;color:#fff;padding:9px 13px;font-size:12px}.header-button span{background:#39c5c730;color:#aaf6f3;border-radius:4px;padding:2px 6px;margin-left:9px}.app-body{display:flex;min-height:calc(100vh - 88px)}.library{width:305px;flex-shrink:0;border-right:1px solid var(--line);background:#fff;padding:26px 20px;display:flex;flex-direction:column}.eyebrow{font-size:9px;letter-spacing:1.7px;color:var(--darkteal);font-weight:700}.library h1{font-size:24px;line-height:1.25;letter-spacing:-.7px;margin:11px 0 9px;max-width:220px}.library-heading p{font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:21px}.search{position:relative}.search span{position:absolute;left:12px;top:10px;font-size:23px;line-height:24px;color:#758c94}.search input{margin:0;padding-left:37px;background:#f6f9f9;font-size:12px}.filters{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0 20px}.filter{border:1px solid var(--line);border-radius:5px;padding:5px 9px;font-size:11px;background:#fff;color:var(--muted)}.filter.active{background:#e2f6f4;color:var(--darkteal);border-color:#a2ddda;font-weight:700}.library-meta{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-bottom:10px;align-items:center}.text-button{background:none;border:0;color:var(--darkteal);padding:3px 0;font-size:11px;text-align:left}.text-button:hover{text-decoration:underline}.exercise-library{display:flex;flex-direction:column;gap:8px}.exercise-card{display:grid;grid-template-columns:58px 1fr 30px;align-items:center;gap:10px;padding:11px 9px;background:#fff;border:1px solid var(--line);border-radius:9px;transition:.15s}.exercise-card:hover{border-color:#8fcfce;box-shadow:0 3px 10px #07334306}.exercise-card.added{background:#f2faf8;border-color:#bde0dc}.exercise-card svg{width:58px;height:52px;display:block}.exercise-card strong{font-size:11.5px;line-height:1.4;display:block}.exercise-card small{font-size:10px;display:block;margin-top:4px}.add-button{border:1px solid #c1ddda;border-radius:50%;background:#fff;color:var(--darkteal);width:28px;height:28px;font-size:21px;line-height:22px;padding:0}.add-button.added{background:var(--darkteal);color:#fff;border-color:var(--darkteal);font-size:15px}.library-bottom{margin-top:auto;padding-top:28px;display:flex;gap:10px;flex-wrap:wrap}.library-bottom p{font-size:10px;line-height:1.7;color:#82949a;width:100%;margin:0}.library-bottom .text-button{font-size:10px}main{flex:1;padding:27px 27px 30px;min-width:0}.workspace-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.workspace-top h2{font-size:23px;margin-top:6px}.workspace-actions{display:flex;gap:8px}.button{border-radius:7px;padding:10px 14px;border:1px solid transparent;font-size:12px;font-weight:700;white-space:nowrap}.primary{background:var(--darkteal);color:#fff}.primary:hover{background:#05686b}.secondary{background:#fff;border-color:#d5e1e3;color:var(--ink)}.secondary:hover{border-color:#86c3c4}.workspace-columns{display:grid;grid-template-columns:minmax(310px,.82fr) minmax(350px,1.18fr);gap:22px;align-items:start}.editor-panel{min-width:0}.programme-details{border:1px solid var(--line);background:white;border-radius:10px;padding:18px}.programme-details>label{font-size:11px}.programme-details>label input{font-size:16px;font-weight:700;padding:10px 11px}.details-row{display:flex;gap:12px;margin-top:14px}.details-row>label:first-child{flex:1}.layout-select{width:113px;flex-shrink:0}.optional{font-size:10px;font-weight:400;color:#8b9a9e}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:23px 0 7px}.section-heading h3{font-size:13px;margin:0}.section-heading h3 span{font-size:10px;background:#dcebea;border-radius:4px;margin-left:6px;padding:2px 6px;color:var(--darkteal)}#draftStatus{font-size:10px;color:#819298}.editor-hint{font-size:11px;color:var(--muted);line-height:1.65;margin-bottom:15px}.selected-card{border:1px solid var(--line);border-radius:9px;background:#fff;margin-bottom:10px;overflow:hidden}.selected-head{display:flex;align-items:center;gap:9px;padding:12px 13px}.selected-name-button{background:none;border:0;text-align:left;flex:1;font-size:12px;font-weight:700;padding:2px 0;color:var(--ink)}.number-circle{background:#e8f5f3;color:var(--darkteal);width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:11px;flex-shrink:0}.selected-tools{display:flex;gap:3px}.icon-button{border:1px solid transparent;background:transparent;border-radius:5px;font-size:18px;line-height:24px;min-width:25px;padding:0 3px;color:#70878f}.icon-button:hover{background:#f0f6f5;color:var(--darkteal)}.icon-button.remove:hover{background:#fff0ef;color:#b5403a}.selected-content{border-top:1px solid #edf2f3;padding:14px}.selected-content[hidden]{display:none}.selected-content label{font-size:10px;color:#546f78}.selected-content input,.selected-content textarea,.selected-content select{font-size:12px}.selected-content label+label{margin-top:12px}.dose-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.dose-fields label+label{margin:0}.dose-fields input{padding:8px 7px}.extra-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:11px}.extra-fields label+label{margin:0}.focus-cue{margin:12px 0 0;background:#f3f8f7;padding:9px 10px;border-radius:5px;display:flex;gap:9px;align-items:start;font-size:10px;color:#526d73}.focus-cue input{width:13px;flex-shrink:0;margin:2px 0 0}.focus-cue label{font-size:10px;font-weight:400;cursor:pointer}.focus-cue small{display:block;font-size:10px;margin-top:2px}.compact-dose{font-size:10px;color:var(--muted);margin:0 13px 12px 46px}.notes-details{border-top:1px solid var(--line);padding-top:17px;margin-top:19px}.notes-details summary{font-size:12px;cursor:pointer}.notes-details summary span{font-size:10px;color:var(--muted);margin-left:5px}.notes-details textarea{margin-top:12px;font-size:12px}.notes-details small{font-size:10px}.editor-bottom{display:flex;gap:6px;align-items:center;font-size:10px;color:var(--muted);margin:19px 0}.dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}.red{background:var(--red)}.amber{background:var(--amber);margin-left:12px}.preview-panel{background:#e7edee;border:1px solid #dce5e7;border-radius:10px;padding:15px 15px 13px;min-width:0}.preview-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.preview-heading>div{display:flex;align-items:center;gap:7px}.preview-dot{width:6px;height:6px;border-radius:50%;background:var(--darkteal)}.preview-heading strong{font-size:11px}.preview-heading small{font-size:9px;margin-left:5px}.preview-heading .text-button{font-size:10px}.preview-pages{display:flex;flex-direction:column;gap:17px}.paper-frame{position:relative;width:100%;overflow:hidden;box-shadow:0 5px 16px #102b3520;background:#fff}.paper{width:794px;height:1123px;position:absolute;top:0;left:0;transform-origin:top left;background:#fff;color:var(--ink);font-family:Elite,Arial,sans-serif}.paper-header{height:148px;background:var(--navy);color:#fff;border-bottom:6px solid var(--teal);position:relative;padding:24px 45px}.paper-header img{position:absolute;width:78px;height:90px;object-fit:contain;left:43px;top:20px}.paper-brand{position:absolute;left:148px;top:28px;font:38px Brand,Georgia,serif;letter-spacing:5px}.paper-brand small{display:block;font:10px Elite,sans-serif;letter-spacing:2px;color:var(--teal);margin-top:7px}.paper-title{position:absolute;left:438px;top:39px;width:310px;font-size:23px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.paper-address{position:absolute;left:148px;bottom:23px;font-size:10px}.paper-location{position:absolute;left:148px;bottom:8px;font-size:9px}.paper-phone{position:absolute;right:45px;bottom:23px;font-size:12px;color:var(--teal);font-weight:700}.paper-legend{height:33px;padding:11px 47px 0;font-size:9px;display:flex;gap:13px;color:#7b8b90}.paper-client{margin-left:auto;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.paper-content{padding:0 36px;height:878px}.paper-exercise{display:flex;gap:15px;position:relative}.paper-copy{width:234px;flex-shrink:0;background:#e7f5f4;border-left:4px solid var(--teal);margin:8px 0 10px;padding:15px 11px;line-height:1.4;font-size:14.5px;overflow-wrap:anywhere}.paper-copy h4{font-size:17px;color:var(--darkteal);margin:0 0 12px;font-weight:700;line-height:1.25}.paper-copy p{margin:0 0 12px}.paper-focus{font-size:12px;color:var(--darkteal)}.paper-image{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #dfebeb;margin-bottom:3px;position:relative;padding:12px 0 24px}.paper-image svg{width:100%;height:100%;display:block}.image-labels{position:absolute;bottom:11px;left:0;right:0;display:flex;justify-content:space-around;color:#71838a;font-size:11px}.paper-dose{display:flex;align-items:baseline;gap:5px;font-size:12px;color:var(--darkteal);margin:11px 0}.paper-dose span{flex-shrink:0}.paper-dose b{flex:1;min-width:20px;border-bottom:1px solid #398689;min-height:17px;font-size:12px;text-align:center;font-weight:400}.paper-dose.long{display:block}.paper-dose.long b{display:block;margin-top:6px}.paper-footer{height:58px;background:var(--navy);position:absolute;bottom:0;left:0;right:0;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 47px;font-size:10px}.paper-footer span:nth-child(2){color:var(--teal)}.paper-notes{padding:25px 48px;font-size:15px;white-space:pre-wrap;line-height:1.65}.paper-notes h4{font-size:22px;color:var(--darkteal)}.preview-footnote{font-size:9px;color:#7c8d94;line-height:1.6;text-align:center;margin:13px 15px 0}.empty-state{padding:35px 18px;text-align:center;color:var(--muted);font-size:12px;border:1px dashed #bdcecf;border-radius:8px}.empty-state strong{display:block;color:var(--ink);font-size:14px;margin-bottom:7px}.preview-empty{min-height:430px;display:grid;place-items:center}.preview-empty .empty-state{border:0;max-width:250px}dialog{border:0;border-radius:13px;padding:28px;max-width:520px;width:calc(100vw - 40px);box-shadow:0 25px 90px #031a2b40;color:var(--ink)}dialog::backdrop{background:#031a2b85;backdrop-filter:blur(3px)}dialog h2{font-size:22px}dialog>p{font-size:12px;color:var(--muted);margin:13px 0 21px}.wide-dialog{max-width:720px}.dialog-heading{display:flex;justify-content:space-between;align-items:start;gap:15px}.dialog-heading h2{margin-top:6px}.dialog-tabs{display:flex;gap:20px;margin:22px 0 14px;border-bottom:1px solid var(--line)}.dialog-tabs button{background:none;border:0;padding:9px 0;border-bottom:2px solid transparent;color:var(--muted);font-size:12px}.dialog-tabs button.active{border-color:var(--darkteal);color:var(--darkteal);font-weight:700}.programme-option{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:16px 2px;border-bottom:1px solid var(--line)}.programme-option h3{font-size:14px;margin:0 0 4px}.programme-option p{font-size:11px;color:var(--muted);margin:0}.programme-option>div:last-child{display:flex;gap:8px}.programme-option small{display:block;font-size:10px}.programme-list{max-height:440px;overflow:auto}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(120px);background:var(--navy);color:#fff;padding:13px 22px;border-radius:8px;box-shadow:0 6px 22px #031a2b25;font-size:12px;z-index:10;transition:transform .2s;max-width:90vw}#toast.visible{transform:translateX(-50%) translateY(0)}.loading{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f4f8f8;z-index:20;color:var(--muted)}.loading-mark{width:30px;height:30px;border:3px solid #c3e7e5;border-top-color:var(--darkteal);border-radius:50%;animation:spin .8s linear infinite}.loading p{font-size:13px;margin-top:19px}.loading[hidden]{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1650px){main{padding:30px 36px}.library{width:325px;padding:30px 24px}.workspace-columns{grid-template-columns:minmax(360px,.8fr) minmax(510px,1.2fr);gap:30px}.app-header{padding:0 36px}}
@media(max-width:1230px){.library{width:265px;padding:23px 15px}.workspace-top{align-items:flex-start;flex-direction:column}.workspace-columns{grid-template-columns:minmax(270px,1fr) minmax(300px,1.05fr);gap:15px}main{padding:23px 18px}.app-brand strong span{display:none}.header-right{gap:12px}.local-badge{display:none}.dose-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-heading{align-items:flex-start;gap:7px;flex-direction:column}.programme-details{padding:14px}.details-row{flex-direction:column}.layout-select{width:100%}}
@media(max-width:960px){.workspace-columns{grid-template-columns:1fr}.preview-panel{max-width:650px}.details-row{flex-direction:row}.layout-select{width:115px}.preview-heading{flex-direction:row}.library{width:250px}.app-header{padding:0 20px}.app-brand small{font-size:10px}.workspace-top h2{font-size:21px}.workspace-actions{flex-wrap:wrap}.button{padding:9px 11px}.dose-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.app-body{display:block}.library{width:100%;border-right:0;border-bottom:1px solid var(--line);padding:20px}.library h1{max-width:none;font-size:21px}.library-heading p{margin-bottom:13px}.exercise-library{display:grid;grid-template-columns:1fr 1fr;max-height:310px;overflow:auto}.exercise-card{grid-template-columns:1fr 28px;gap:5px}.exercise-card svg{display:none}.library-bottom{display:none}.app-brand strong{font-size:23px}.app-brand img{width:39px}.app-brand small{display:none}.header-button{font-size:10px}.app-header{height:72px;padding:0 16px}.library-heading .eyebrow{font-size:8px}.filters{margin:12px 0}.workspace-top{gap:15px}.workspace-actions{width:100%;justify-content:space-between}.workspace-actions button{flex:1}.dialog-actions{flex-direction:column}.dialog-heading h2{font-size:20px}main{padding:20px 15px}.programme-option{align-items:start}.programme-option>div:last-child{flex-direction:column}}
@media(min-width:961px){.app-header{position:sticky;top:0;z-index:5}.library{position:sticky;top:88px;height:calc(100vh - 88px)}.exercise-library{overflow:auto;flex:1;min-height:0;padding-right:3px}.library-bottom{padding-top:15px}}
/* Consistent prescription fields and a readable contact strip. */
.dose-fields input,.extra-fields input,.extra-fields select{font-size:16px;font-weight:700;color:var(--darkteal);padding:8px 9px;min-height:39px;background:#fff;border-color:#d4dfe2;border-radius:7px}
.paper-dose{color:var(--darkteal);align-items:baseline;margin:12px 0;gap:7px;font-size:12px}
.paper-dose span{width:98px;flex-shrink:0}
.paper-dose b{font-size:19px;font-weight:700;color:var(--darkteal);text-align:left;padding-left:3px;line-height:1.2;min-height:24px;border-bottom-color:var(--darkteal)}
.paper-dose.long span{width:auto}.paper-dose.long b{padding-left:3px}
.paper-header{height:152px}.paper-header img{left:43px;top:13px;width:71px;height:79px}.paper-brand{left:133px;top:22px;font-size:37px}.paper-title{top:31px;font-size:22px}
.paper-contact{position:absolute;left:0;right:0;bottom:0;height:43px;background:#e7f5f4;color:var(--ink)}
.paper-address{left:48px;top:6px;bottom:auto;font-size:11.3px;color:var(--ink)}
.paper-location{left:48px;top:23px;bottom:auto;font-size:11.3px;color:var(--ink)}
.paper-phone{right:45px;top:6px;bottom:auto;font-size:13.3px;color:var(--darkteal)}
.paper-content{height:874px}.workspace-actions{flex-wrap:wrap}
@page{size:A4 portrait;margin:0}
@media print{
  *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  html,body{margin:0!important;padding:0!important;background:#fff!important;width:210mm!important}
  .app-header,.library,.workspace-top,.editor-panel,.preview-heading,.preview-footnote,dialog,#toast,#loading{display:none!important}
  .app-body,main,.workspace-columns,.preview-panel,.preview-pages{display:block!important;position:static!important;width:210mm!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;overflow:visible!important;background:#fff!important}
  .paper-frame{display:block!important;position:relative!important;width:210mm!important;height:297mm!important;margin:0!important;padding:0!important;box-shadow:none!important;border:0!important;overflow:hidden!important;break-after:page;page-break-after:always;break-inside:avoid}
  .paper-frame:last-child{break-after:auto;page-break-after:auto}
  .paper{position:relative!important;transform:none!important;width:210mm!important;height:297mm!important;margin:0!important;overflow:hidden!important}
}

.paper-contact{background:var(--navy);color:#fff}.paper-contact .paper-address,.paper-contact .paper-location,.paper-contact .paper-phone{color:#fff}.paper-footer .footer-contact{color:#fff;text-align:center;line-height:1.6}.footer-contact strong{font-size:11px}

.help-steps{padding-left:21px;font-size:13px;line-height:1.7}.help-steps li{margin:12px 0}

.library-heading .clinical-library-note{font-size:10px;line-height:1.5;color:var(--darkteal);background:#e7f5f4;padding:8px 10px;border-radius:6px;margin-top:-9px;margin-bottom:16px}

.body-area-label{width:100%;font-size:11px;color:var(--muted)}.body-area-label select{font-size:12px;padding:9px 10px;color:var(--ink);font-weight:600;background:#fff}.filters{margin:12px 0 14px}


[hidden]{display:none!important}.demo-notice{background:#fff2c9;color:#493810;padding:12px 24px;border-bottom:1px solid #d6b960;font-size:12px;display:flex;gap:18px;align-items:center}.demo-notice strong{white-space:nowrap}.preset-exercises{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.preset-exercises>div{width:100px}.preset-exercises svg{width:100px;height:80px;background:white}.preset-exercises small{display:block;font-size:11px;line-height:1.3}.programme-option{align-items:flex-start}.programme-option>div:first-child{min-width:0;flex:1}.programme-option>div:last-child{flex-shrink:0}.app-header{position:static}.library{top:0;height:calc(100vh - 88px)}input,textarea,select{font-size:16px}button{min-height:40px}.paper-footer>span:first-child{font-size:8px}.paper-legend:before{content:'DRAFT DEMO — NOT FOR CLINICAL USE';color:#8e2d18;font-weight:bold;font-size:10px}
@media(max-width:650px){.demo-notice{display:block;padding:12px 16px}.demo-notice span{display:block;margin-top:4px}.app-header{padding:0 12px}.header-right{gap:6px}.header-button{padding:8px}.app-brand{gap:6px}.app-brand strong{font-size:21px}.exercise-library{grid-template-columns:1fr;max-height:360px}.exercise-card{grid-template-columns:64px minmax(0,1fr) 42px;min-height:82px}.exercise-card svg{display:block;width:64px;height:66px}.add-button{min-width:40px;min-height:40px}.library{height:auto}.workspace-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.workspace-actions button{font-size:12px}.details-row{flex-direction:column}.layout-select{width:100%}.dose-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.wide-dialog{width:calc(100vw - 20px);max-width:none;padding:18px}.programme-option{display:block}.programme-option>div:last-child{margin-top:12px}.preset-exercises>div{width:calc(33.33% - 10px)}.preset-exercises svg{width:100%;height:75px}.dialog-heading h2{font-size:19px}.selected-head{gap:5px}.selected-tools{gap:2px}.preview-panel{min-width:0}.paper-frame{width:100%}.app-brand strong span{display:none}}
@media print{.demo-notice{display:none!important}}
