/* Shared detail controls and document reviews. */

.ev-btn,.pbtn{transition:background .12s,border-color .12s}
.toast{pointer-events:none}
#root .side .seg button.on{background:#e7edf3;color:var(--ink);border-color:#9bafc0;box-shadow:inset 0 -2px #476c88}
#root .side .snav button.on{background:#e7edf3;color:var(--ink)}
#root .side .scroll{padding:0;gap:0;overscroll-behavior:contain}
#root .side:not(.wb-has-item) .scroll{padding:15px}
#root .side.wb-has-item{background:#fff}
#root .side.wb-has-item .tab{display:none}
#root .side.open~.mask{display:none}
#root .side .wb-inspector{border:0;border-radius:0;padding:0;background:#fff}
.ev-inspector-head{padding:14px 16px;align-items:flex-start}
.ev-inspector-head>div{min-width:0}
.ev-inspector-head b{font-size:15px;overflow-wrap:anywhere}
#wbItemSummary{display:block;font-size:var(--text-xs);color:#526c80;line-height:1.5;margin-top:6px;overflow-wrap:anywhere}
.wb-section{border-bottom:1px solid #dfe7ee}
#root .wb-section>h3,.wb-section>summary{font-size:var(--text-ui);font-weight:650;letter-spacing:0;color:#334f63;padding:15px 16px;cursor:pointer;margin:0}
#root .wb-section>h3{padding-bottom:0;cursor:default}
.wb-section>summary:hover{background:#f4f7fa}
.wb-section-body{display:grid;gap:16px;padding:14px 16px 20px}
.wb-field{display:flex;flex-direction:column;gap:7px;min-width:0}
#root .side .wb-field input:not([type=range]):not([type=color]),#root .side .wb-field select,#root .side .wb-field textarea{width:100%;background:#fff;border:1px solid var(--control-border);border-radius:7px;padding:9px 10px;min-height:40px;color:var(--ink)}
#root .side .wb-field label{font-weight:600;color:var(--field-ink);font-size:var(--text-xs)}
#root .side .wb-field .seg{flex-wrap:wrap}
#root .side .wb-field .seg button{min-height:36px;padding:6px 9px}
#root .side .wb-field .sub{font-size:var(--text-ui)!important;line-height:1.55!important;color:#586e80!important}
.wb-help>summary{font-size:var(--text-xs);color:#315d83;cursor:pointer;padding:5px 0}
.wb-help .sub{margin-top:5px}
.wb-item-actions{display:grid;gap:12px;padding:17px 16px;background:#f7f9fb}
.wb-item-actions .pbtns{margin-top:0!important}
.wb-item-actions .pbtn{min-height:40px}
.wb-item-actions>.ev-btn{width:100%}
/* The picker sizes to its content (short categories leave no empty column) and scrolls when a category is long. */
#root .rail{display:flex;flex-direction:column;top:10px;bottom:auto;max-height:calc(100% - 20px)}
#root .rail.closed{display:none}
#wbLibraryHeader{padding:13px 14px 0;flex:none;border-bottom:1px solid var(--line)}
.wb-library-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.wb-library-heading b{font-size:var(--text-sm)}
.wb-library-heading .ev-icon-btn{width:32px;height:32px;font-size:21px;border:0;background:#edf2f6}
.wb-search{display:grid;gap:6px;font-size:var(--text-xs);color:#476174;font-weight:550}
.wb-search input{width:100%;min-width:0;min-height:40px;border:1px solid var(--control-border);background:#fff;border-radius:7px;padding:9px 10px;font-size:var(--text-ui);color:var(--ink)}
.wb-library-tabs{display:flex;gap:7px;margin-top:10px}
.wb-library-tabs button{flex:1;min-height:39px;border-bottom:2px solid transparent;font-size:var(--text-xs);color:#586e80}
.wb-library-tabs button[aria-selected=true]{border-color:var(--accent);color:#204d94;font-weight:650}
#root .palscroll{overflow:auto;flex:1 1 auto;padding:0 14px 18px;min-height:0}
#root .palhead{padding:12px 0 0;position:static}
#root .palhead b{font-size:var(--text-xs);color:#536e83}
#root .palhead .palx{display:none}
#root .wb-searching .palscroll{display:none}
#root .wb-tool-cell{position:relative;min-width:0}
#root .wb-tool-cell .tool{width:100%;height:100%;min-height:86px;padding:12px 24px 10px 5px;background:#fff;border-color:#d9e3eb;line-height:1.4}
#root .wb-tool-cell .tool:hover{background:#f0f5fb;border-color:#aac0d5}
.wb-favourite{position:absolute;right:0;top:0;width:31px;height:31px;display:grid;place-items:center;font-size:21px;color:#6a8091;border-radius:5px}
.wb-favourite:hover,.wb-favourite[aria-pressed=true]{color:#8a651b;background:#fff5dd}
#wbEquipmentResults{overflow:auto;flex:1;min-height:0;padding:12px}
.wb-result-count{font-size:var(--text-xs);color:#586e80;margin-bottom:10px}
.wb-result{position:relative;border-bottom:1px solid #e4ebf1}
.wb-result>button:first-child{display:flex;gap:12px;text-align:left;padding:14px 28px 14px 3px;width:100%;align-items:center}
.wb-result>button:first-child:hover{background:#f5f8fc}
.wb-result .ti{flex:none;width:28px!important;height:34px!important;display:grid;place-items:center}
.wb-result b{display:block;font-size:var(--text-ui);color:#244256;line-height:1.45}
.wb-result small{font-size:var(--text-2xs);line-height:1.6;color:#587084;display:block;margin-top:3px}
.wb-result .wb-favourite{top:8px}
.wb-library-empty{font-size:var(--text-ui);color:#586e80;line-height:1.7;padding:18px 6px}
.wb-model-preview{display:grid;gap:14px;padding:4px 4px 16px}
.wb-model-preview>.ti{height:70px;display:block;margin:8px auto}
.wb-model-preview>.ti img{height:70px!important;width:auto!important}
.wb-model-preview h3{font-size:17px}
.wb-model-preview p{font-size:var(--text-ui);line-height:1.65;color:#536e83}
#wbDrawingTools{display:flex;gap:8px;align-items:center;flex:none}
.wb-label-mode{display:flex;align-items:center;gap:7px;font-size:var(--text-2xs);color:#526c80}
#evPlanStrip #wbLabelMode{font-size:var(--text-xs);border:1px solid var(--field-border);padding:7px;background:white;border-radius:6px;max-width:135px;height:36px}
#wbKeyToggle{font-size:var(--text-xs);min-height:36px;padding:7px 10px}
#wbKeyToggle[aria-expanded=true]{background:#e7edf3;border-color:#93a9bc}
#root .workarea{position:relative}
#wbPlanKey{flex:none;max-height:156px;background:#fff;border-top:1px solid #cfdae4;display:flex;align-items:flex-start;gap:20px;padding:12px 18px;overflow:auto}
#wbPlanKey[hidden]{display:none}
.wb-key-heading{display:flex;align-items:flex-start;gap:12px;flex:none;font-size:var(--text-xs)}
.wb-key-heading>div{display:flex;flex-direction:column;gap:2px;max-width:190px}
.wb-key-heading small{font-size:var(--text-xs);line-height:1.4;color:var(--dim)}
.wb-key-heading .ev-icon-btn{width:29px;height:29px;font-size:var(--text-xl)}
.wb-key-rows{display:grid;grid-template-columns:repeat(2,minmax(160px,1fr));gap:2px 16px;flex:1;font-size:var(--text-xs);line-height:1.5}
/* Each key row is a button that selects the item on the plan. */
.wb-key-row{display:flex;gap:12px;align-items:baseline;min-width:0;min-height:34px;padding:5px 8px;border:1px solid transparent;border-radius:8px;background:transparent;font:inherit;font-size:var(--text-xs);line-height:1.5;color:inherit;text-align:left;cursor:pointer}
.wb-key-row:hover{background:#f0f5fa}
.wb-key-row[aria-current=true]{background:#eaf1fd;border-color:#9dbbef}
.wb-key-rows b{flex:none;color:#213e55}
.wb-key-rows span{color:#5a7081;overflow-wrap:anywhere}
#legendPill{display:none!important}
.ev-card-head{min-height:55px;padding:15px 20px}
.ev-plan-picks button{min-height:44px;font-size:var(--text-xs)}
/* Profile sections and a rendered sample document. */
.ep-layout{grid-template-columns:minmax(0,1fr) 360px}
.ep-editor-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.ep-tabs{display:flex;gap:10px;border-bottom:1px solid var(--line)}
.ep-tabs button{font-size:var(--text-ui);min-height:44px;padding:10px 12px;border-bottom:2px solid transparent;color:var(--dim)}
.ep-tabs button[aria-selected=true]{border-bottom:3px solid #2563eb;color:var(--ev-navy);font-weight:650}
.ep-save{font-size:var(--text-xs);text-align:left;max-width:none}
.ep-form-heading{font-size:var(--text-sm);padding:25px 0 17px;margin-top:23px;border-top:1px solid #e4ebf0}
.ep-document-preview{background:#eaf0f5;border:1px solid #d9e3eb;border-radius:10px;padding:13px;margin-bottom:22px}
#epSampleImage{min-height:210px;display:grid;place-items:center;font-size:var(--text-xs);color:#526c80;overflow:hidden}
#epSampleImage canvas{width:100%;height:auto;display:block;box-shadow:0 2px 8px #18304314}
.ep-document-preview p{font-size:var(--text-xs);color:#526c80;margin:12px 0;line-height:1.6}
.ep-document-preview>.ev-btn{width:100%;background:#fff;font-size:var(--text-xs)}
.ep-preview-label{font-size:var(--text-2xs);letter-spacing:.7px}
.ep-logo-upload p,.ep-logo-upload .ev-btn{font-size:var(--text-ui)}
/* One page viewer for marked-up plans, engineer/client packs, programme and snags. */
.ev-review-dialog,.ed-report-dialog,#rxBackdrop .rx{width:min(1500px,96vw)!important;height:92dvh!important;max-height:96dvh;border-radius:12px;overflow:hidden}
.ed-report-dialog #edBody{padding:0;display:flex;min-height:0;overflow:hidden}
.ev-document-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;min-height:0;flex:1;overflow:hidden;background:#eff3f7;width:100%}
.ev-document-layout>div:first-child{min-width:0;min-height:0}
.ev-document-viewer{display:grid;grid-template-columns:116px minmax(0,1fr);height:100%;min-height:0;background:#e8eef3}
.ev-document-pages{overflow:auto;border-right:1px solid #d3dfe8;padding:14px 11px;background:#f6f8fa;min-height:0}
.ev-document-pages>b{font-size:var(--text-xs);display:block;margin-bottom:13px;color:#506c80}
.ev-document-thumbnails{display:grid;gap:12px}
.ev-document-thumbnails button{border:1px solid #cedae4;border-radius:5px;padding:5px;background:#fff;min-height:66px;width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;font-size:var(--text-2xs);color:#597184}
.ev-document-thumbnails button[aria-current=page]{border:2px solid var(--accent);padding:4px;color:#1e54b8;background:#f1f6ff}
.ev-document-thumbnails canvas{width:100%;height:auto;display:block}
.ev-document-stage{display:flex;flex-direction:column;min-width:0;min-height:0}
.ev-document-nav{display:flex;align-items:center;gap:9px;flex:none;padding:10px 14px;border-bottom:1px solid #d2dee8;background:#fff;font-size:var(--text-xs)}
.ev-document-nav .ev-btn{font-size:var(--text-xs);min-height:36px;padding:7px 10px}
.ev-document-nav [data-pdf-counter]{color:#4f687c;text-align:center;min-width:75px}
.ev-document-nav label{display:flex;align-items:center;gap:8px;margin-left:auto;color:#536e83;font-size:var(--text-xs)}
.ev-document-nav select{height:36px;min-width:88px;border:1px solid var(--field-border);padding:7px;border-radius:6px;background:white;color:#314e65;font-family:inherit}
.ev-document-canvas{padding:24px;overflow:auto;flex:1;min-height:0;min-width:0;display:block;font-size:var(--text-ui);color:#526c80}
.ev-document-canvas canvas{display:block;width:var(--pdf-zoom,100%);max-width:none!important;height:auto;margin:0 auto;box-shadow:0 3px 16px #1a354522;background:#fff}
.ev-document-canvas .ev-document-retry{display:flex;width:max-content;margin-top:14px}
.ev-document-options{min-width:0;padding:20px;border-left:1px solid #d3dfe8;background:#fff;overflow:auto;font-size:var(--text-ui);color:#4b667b}
.ev-document-options h3{font-size:var(--text-ui);color:#263f53;margin:0 0 14px;font-weight:650}
.ev-document-options h3:not(:first-child){padding-top:20px;margin-top:20px;border-top:1px solid #e1e8ee}
.ev-document-options p{font-size:var(--text-xs);line-height:1.7;color:#586e80;margin:14px 0}
.ev-document-options .ev-field{margin-bottom:20px}
.ev-document-options .ed-check{font-size:var(--text-xs);margin:13px 0;line-height:1.6}
.ev-document-options .ev-actions{gap:15px}
.ev-document-options ul{padding-left:18px;font-size:var(--text-xs);line-height:1.7}
.ev-document-options li+li{margin-top:7px}
.ev-plan-choice{display:flex;align-items:center;gap:9px;padding:13px 0;border-bottom:1px solid #e6edf2;font-size:var(--text-xs);cursor:pointer}
.ev-plan-choice img{width:43px;height:36px;object-fit:cover;border:1px solid #d3dfe8;border-radius:3px;flex:none}
.ev-plan-choice input{flex:none;accent-color:var(--accent);width:17px;height:17px}
.ev-plan-choice span{overflow-wrap:anywhere;line-height:1.5}
.ev-plan-choice small{display:block;color:#6a7e8d;font-size:var(--text-2xs);margin-top:3px}
.ev-document-meta{display:grid;grid-template-columns:85px minmax(0,1fr);gap:9px;font-size:var(--text-xs);line-height:1.5}
.ev-document-meta dt{color:#647a8c}.ev-document-meta dd{color:#294458;overflow-wrap:anywhere}
#rxBackdrop .rx-body{padding:0;gap:0}
#rxBackdrop #rxEdit{width:auto;max-width:none;border-right:0;padding:20px}
#rxBackdrop .rx-head,#rxBackdrop .rx-foot{background:#fff;padding:17px 20px;gap:14px}
#rxBackdrop .rx-head h4{font-family:var(--font);font-size:19px;color:var(--ink)}
#rxBackdrop .rx-head .sub,#rxBackdrop #rxStatus{font-size:var(--text-xs);line-height:1.5;color:#586e80}
#rxBackdrop .rx-label{font-size:var(--text-ui);color:#29485e}
#rxBackdrop .rx-label em{display:block;font-size:var(--text-2xs);color:#627b8d;margin-top:5px}
#rxBackdrop input,#rxBackdrop textarea{font-size:var(--text-ui);border-color:var(--field-border);background:#fff;line-height:1.6}
#rxBackdrop .rx-photo{border:0;background:#f3f6f9;padding:10px}
#rxBackdrop .rx-photo-top{gap:8px;flex-wrap:wrap}
#rxBackdrop .rx-toggle{min-height:34px;font-size:var(--text-2xs)}
#rxBackdrop .rx-foot .hbtn{font-size:var(--text-ui);min-height:40px}
#rxBackdrop .rx-btnrow{flex-wrap:wrap}
#rxBackdrop #rxLetterReset{align-self:flex-start;font-size:var(--text-xs);text-align:left}
#rxBackdrop #rxSummary.rx-letter{min-height:calc(14 * 1.6em + 20px);max-height:70dvh;field-sizing:content}
#rxBackdrop #rxWhoSec{gap:14px}
#rxBackdrop #rxWhoSec .ev-field{margin-bottom:0}
#rxBackdrop .rx-sec{padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid #e1e8ee}
#rxBackdrop .rx-edithint{font-size:var(--text-2xs);line-height:1.6}
@media(max-width:1200px){
 .ep-layout{grid-template-columns:minmax(0,1fr) 300px}
 .ev-document-layout{grid-template-columns:minmax(0,1fr) 250px}
 .ev-document-viewer{grid-template-columns:90px minmax(0,1fr)}
 .ev-document-canvas{padding:16px}
 #evPlanStrip .ev-plan-meta{display:none}
 .wb-label-mode>span{display:none}
}
@media(max-width:1000px){
 .ep-layout{grid-template-columns:1fr}
 .ep-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
 .ep-preview-label,.ep-storage-note{grid-column:1/-1}
 .ev-document-layout{grid-template-columns:minmax(0,1fr) 220px}
 #rxBackdrop .ev-document-layout{grid-template-columns:minmax(0,1fr) 260px}
 .ev-document-options{padding:16px}
 .ev-document-nav{gap:5px;padding:8px}
 .ev-document-nav label{font-size:0;gap:0}
 .ev-document-nav select{font-size:var(--text-xs);min-width:74px}
 .ev-document-pages{padding:12px 8px}
 #wbPlanKey{gap:12px}
}
@media(max-width:700px){
 .ev-btn,.ev-icon-btn,.pbtn,.hbtn,#root .side .seg button,#root .side input,#root .side select,#root .side .stepper button{min-height:44px}
 .ev-icon-btn{min-width:44px}
 .ev-sidebar button,.ev-sidebar a.ev-nav{min-height:46px}
 #evBackupTop,#evIssuePlans{min-height:44px}
 #evBackupTop{min-width:44px}
 .ev-toolstrip{flex-wrap:wrap;gap:8px;padding:8px 10px}
 #evWorkbench .catbar{flex:1 1 auto}
 #evWorkbench .ptool{width:44px;height:44px}
 #evWorkbench .ev-tech>.ev-btn{width:44px;height:44px}
 #evToolCategory{height:44px;flex:1 1 calc(100% - 58px);font-size:var(--text-ui);order:3}
 #evWorkbench .ev-tech{order:4}
 .ev-undo-group{display:flex;border:0;padding:0;order:2}
 .ev-undo-group button{width:44px;min-height:44px}
 #evPlanStrip{height:auto;min-height:104px;padding:7px 10px;gap:6px;flex-wrap:wrap;align-content:center}
 #evPlanStrip>svg{display:none}
 #evPlanStrip #evActivePlan{height:44px;max-width:none;flex:1 1 calc(100% - 62px);font-size:var(--text-ui)}
 #evPlanStrip>.ev-btn[data-ev-action=add-files]{height:44px;width:44px;min-width:44px}
 #wbDrawingTools{flex:1;gap:8px}
 #evPlanStrip #wbLabelMode{height:44px;max-width:none;font-size:var(--text-ui)}
 #wbKeyToggle{min-height:44px;padding:9px 14px}
 #evInspectorToggle{width:44px;min-height:44px;margin-left:auto}
 #root .side,#root .side.open{position:absolute;left:0;right:0;top:auto;bottom:0;width:100%;max-width:none;height:65%;max-height:55dvh;border:1px solid #becdd9;border-bottom:0;border-radius:16px 16px 0 0;box-shadow:0 -8px 25px #17304425}
 #root .side::before{content:'';height:4px;width:38px;border-radius:4px;background:#b5c5d3;align-self:center;margin:8px 0 0;flex:none}
 .ev-inspector-head{padding:10px 16px}
 .ev-inspector-head .ev-icon-btn{width:44px;height:44px}
 .ev-inspector-head small{display:none}
 .wb-section>summary{min-height:48px;padding-top:15px}
 #root .rail{width:min(330px,calc(100% - 20px));max-height:100%;border-radius:12px}
 .wb-library-heading .ev-icon-btn{width:44px;height:44px}
 .wb-search input,.wb-library-tabs button{min-height:44px;font-size:var(--text-ui)}
 .wb-favourite{width:44px;height:44px}
 #root .wb-tool-cell .tool{padding-right:35px;min-height:100px;font-size:var(--text-xs)}
 .wb-result>button:first-child{padding-right:40px}
 #root .zoombar button{width:44px;height:44px}
 #wbPlanKey{max-height:160px;padding:10px;display:block}
 #wbPlanKey[hidden]{display:none}
 .wb-key-heading{justify-content:space-between;margin-bottom:8px}
 .wb-key-rows{grid-template-columns:1fr;font-size:var(--text-xs)}
 .wb-key-row{min-height:44px;align-items:center}
 .ev-overview-heading>.ev-btn{width:44px;height:44px}
 .ep-tabs{gap:0;width:100%}
 .ep-tabs button{flex:1;padding:10px 8px;font-size:var(--text-xs)}
 .ep-aside{display:block}
 .ep-save{font-size:var(--text-2xs)}
 .ep-logo-upload{flex-wrap:wrap}
 .ep-logo-upload .ev-btn{font-size:var(--text-xs);min-height:44px}
 .ev-review-dialog,.ed-report-dialog,#rxBackdrop .rx{width:100vw!important;height:100dvh!important;max-height:100dvh;margin:0;border-radius:0}
 .ev-document-layout{display:flex;flex-direction:column;overflow:auto}
 .ev-document-layout>div:first-child{flex:0 0 60dvh;min-height:330px}
 .ev-document-viewer{grid-template-columns:68px minmax(0,1fr)}
 .ev-document-pages{padding:10px 5px}
 .ev-document-pages>b{font-size:var(--text-2xs)}
 .ev-document-thumbnails{gap:9px}
 .ev-document-thumbnails button{min-height:57px}
 .ev-document-nav{flex-wrap:wrap;justify-content:center;gap:4px}
 .ev-document-nav .ev-btn{min-height:44px;font-size:var(--text-2xs);padding:6px 8px}
 .ev-document-nav [data-pdf-counter]{font-size:var(--text-2xs);min-width:75px}
 .ev-document-nav label{flex:1 1 100%;justify-content:center;margin:0}
 .ev-document-nav select{height:44px;width:100%;min-width:0;font-size:var(--text-xs)}
 .ev-document-canvas{padding:10px}
 .ev-document-options{border-left:0;border-top:1px solid #d3dfe8;overflow:visible;flex:none;padding:18px}
 .ev-document-options .ev-plan-choice{min-height:58px}
 .ev-dialog-head,.ev-dialog-foot,#rxBackdrop .rx-head,#rxBackdrop .rx-foot{padding:13px 15px;gap:10px}
 .ev-dialog-head h2,#rxBackdrop .rx-head h4{font-size:17px}
 .ev-dialog-foot{flex-wrap:wrap}
 .ev-dialog-foot .ev-actions{margin-left:auto}
 .ev-dialog-foot .ev-note-count{flex-basis:100%;font-size:var(--text-2xs)}
 #rxBackdrop #rxStatus{display:none}
 #rxBackdrop #rxEdit{padding:18px}
 #rxBackdrop .rx-foot .hbtn,#rxBackdrop #rxLetterReset{min-height:44px}
 #rxBackdrop{padding:0}
 #rxBackdrop .rx-head{padding-top:max(13px,env(safe-area-inset-top,0px))}
 #rxBackdrop .rx-foot{padding-bottom:max(13px,env(safe-area-inset-bottom,0px));justify-content:flex-end}
 #rxBackdrop .rx-foot>div:empty{display:none}
 #rxBackdrop .rx-foot .hbtn{padding-left:14px;padding-right:14px}
}
@media(pointer:coarse) and (min-width:701px){
 .ev-icon-btn,#evWorkbench .cattab,#evWorkbench .ptool,#evToolCategory,#root .side .seg button{min-height:44px}
 .ev-icon-btn,#evWorkbench .ptool{min-width:44px}
 .wb-favourite{width:40px;height:44px}
 .wb-tool-cell .tool{padding-right:34px!important}
}

.ev-plan-picks img{width:44px;height:34px;object-fit:cover;flex:none;border-radius:4px}.ev-plan-picks span{text-align:left}.ev-plan-picks small{display:block;margin-top:4px;font-size:var(--text-2xs);color:#647b8d}

/* Presentation: common type sizes, lighter grouping and more room for the plan. */
.ev-card{box-shadow:none}.ev-card-head{padding:16px 20px}.ev-card-body{padding:20px}
.ev-field,.wb-search{font-size:var(--text-ui)}.ev-field small,.ep-preferences small{font-size:var(--text-ui);line-height:1.55}.ed-help,.ep-storage-note,.ep-apply p{font-size:var(--text-xs);line-height:1.65}
.ev-field input,.ev-field select,.ev-field textarea{border-color:var(--control-border);border-radius:7px;font-size:var(--text-sm)}
.ev-table th{font-size:var(--text-xs);text-transform:none;letter-spacing:0;color:var(--dim)}.ev-table td{font-size:var(--text-ui)}
.ev-table td small{font-size:var(--text-xs)}.ev-out p,.ev-empty,.ev-kv{font-size:var(--text-ui)}
.ev-top{height:60px;padding:0 24px;gap:12px}
.ev-top-title small{font-size:var(--text-2xs);letter-spacing:.3px;text-transform:none;margin-bottom:2px}
/* The breadcrumb's first part goes back to Your projects; the project name stays in the bar on every project page. */
.ev-crumb{border:0;background:none;padding:2px 0;margin:-2px 0;font:inherit;color:inherit;letter-spacing:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:#9fb1bf;text-underline-offset:2px}
.ev-crumb:hover{color:var(--accent);text-decoration-color:currentColor}
#evApp[data-route=overview] #evModePill{display:none}
#evScreen{padding:28px 32px 40px}
.ev-overview-heading{margin-bottom:22px;align-items:flex-start}
.ev-overview-heading h1{font-size:var(--text-3xl);line-height:1.2;max-width:900px}
#evWorkbench.ev-toolbar-mode{min-height:52px}
.ev-toolstrip{padding:6px 12px;gap:8px;min-height:52px}
#evWorkbench .cattab{font-size:var(--text-ui);height:38px;padding:8px}
#evWorkbench .ptool{width:36px;height:38px}
.ev-undo-group{gap:0;padding-right:8px}.ev-undo-group button{width:34px;min-height:38px}
#evPlanStrip{height:48px;min-height:48px;padding:0 16px;gap:10px;background:var(--top-bar,#ffffff);position:relative;z-index:42}
#evPlanStrip #evActivePlan{max-width:360px;font-size:var(--text-ui);padding:6px 8px;height:36px;border:1px solid var(--field-border);border-radius:6px;background:white}
#evPlanStrip>.ev-btn{min-height:36px;font-size:var(--text-xs)}
#evPlanStrip .ev-plan-meta{font-size:var(--text-xs)}
#root .stage{background:var(--page,#eef2f6);background-image:none}
#root .tgroup{font-size:var(--text-2xs);letter-spacing:.4px}.tool span{font-size:var(--text-xs);line-height:1.35}
#root .side .wb-field label{font-size:var(--text-ui)}.wb-section-body{gap:18px}
.ev-inspector-head>div{flex:1}
#wbDrawingTools{display:block;position:relative;margin-left:auto;flex:none}
#wbDrawingTools>summary{list-style:none;min-height:36px;font-size:var(--text-xs);cursor:pointer;padding:7px 11px}
#wbDrawingTools>summary::-webkit-details-marker{display:none}
#wbDrawingTools>summary::after{content:'⌄';font-size:var(--text-sm);margin-left:5px}
#wbDrawingTools[open]>summary{background:#edf3fd;border-color:#8faee0;color:#234f99}
.wb-display-options{display:flex;flex-direction:column;gap:16px;position:absolute;right:0;top:calc(100% + 8px);width:260px;padding:18px;background:#fff;border:1px solid #bdcddb;border-radius:8px;box-shadow:0 8px 28px #17304422;z-index:50}
.wb-display-options .wb-label-mode{display:flex;align-items:stretch;flex-direction:column;font-size:var(--text-ui);gap:7px;color:#334f63}
.wb-display-options .wb-label-mode>span{display:block}
#evPlanStrip .wb-display-options select{max-width:none;width:100%;font-size:var(--text-ui);height:40px;border:1px solid var(--control-border);padding:8px;background:white;border-radius:6px}
.wb-display-options p{font-size:var(--text-xs);line-height:1.55;color:var(--dim)}.wb-display-options #wbKeyToggle{font-size:var(--text-ui);min-height:40px}
.ep-document-preview{border-radius:8px;padding:16px;background:#edf1f5}.ep-preview-label{font-size:var(--text-xs);letter-spacing:.4px;text-transform:none}
.ep-header-preview{margin-bottom:16px}.ep-header-preview>span{display:block;font-size:var(--text-xs);font-weight:650;color:#3e596e;margin-bottom:8px}
#epHeaderImage canvas{width:100%;height:auto;display:block;border:1px solid #ccd8e1;background:white}
#epSampleImage{min-height:0}#epSampleImage canvas{box-shadow:none}.ep-document-preview>p{font-size:var(--text-xs)}
.ep-preferences{margin-top:22px}.ep-preferences .ev-card-body{padding:20px}.ep-form-heading{letter-spacing:0}
.ep-apply b{font-size:var(--text-sm)}.ep-save{color:#395c42}.ep-logo-box{border-style:solid;border-color:#bccbd7;background:#fff}
@media(max-width:1200px){
 #evWorkbench .cattab{font-size:var(--text-xs)}
}
@media(max-width:700px){
 .ev-top{height:56px;padding:0 10px;gap:8px}.ev-top-title small{font-size:var(--text-2xs)}.ev-top-title b{font-size:var(--text-sm)}
 #evScreen{padding:24px 18px 32px}.ev-overview-heading h1{font-size:26px}
 .ev-overview-heading>.ev-btn{width:auto;min-height:44px;height:auto;font-size:var(--text-xs);gap:7px;padding:9px}
 .ev-overview-heading>.ev-btn span{display:none}
 #evWorkbench.ev-toolbar-mode{min-height:104px}
 .ev-toolstrip{gap:4px 8px;padding:4px 10px;min-height:104px}
 #evWorkbench .catbar{flex:1 1 auto;width:auto}
 #evWorkbench .ptools{gap:0;margin:0;justify-content:flex-start}
 #evWorkbench .ptool{width:44px;min-width:44px;height:44px}
 .ev-undo-group{order:2;gap:0;padding:0;border:0}.ev-undo-group button{width:44px;min-height:44px}
 #evToolCategory{order:3;height:44px;flex:1 1 calc(100% - 58px);font-size:var(--text-sm);padding:8px}
 #evWorkbench .ev-tech{order:4}#evWorkbench .ev-tech>.ev-btn{width:44px;height:44px;min-height:44px}
 /* on a phone the plan picker and Plan settings share the first row and the other buttons wrap below, rather than run off the screen */
 #evPlanStrip{height:auto;min-height:52px;flex-wrap:wrap;padding:4px 8px;gap:6px;align-content:normal}
 #evPlanStrip #evActivePlan{order:-2;height:44px;min-width:0;max-width:none;flex:1 1 calc(100% - 50px);font-size:var(--text-ui);padding:6px}
 #evPlanStrip>.ev-btn[data-ev-action=add-files]{width:44px;min-width:44px;flex:none;height:44px;font-size:0;padding:7px}
 #wbDrawingTools{flex:none;margin:0}#wbDrawingTools>summary{min-height:44px;font-size:var(--text-xs);padding:7px 9px;gap:0}
 #wbDrawingTools>summary::after{margin-left:3px}
 #evInspectorToggle{order:-1;width:44px;height:44px;min-height:44px;margin:0;flex:none}
 .wb-display-options{width:min(260px,calc(100vw - 24px));right:0;top:calc(100% + 8px)}
 #evPlanStrip .wb-display-options select{height:44px;font-size:var(--text-sm);width:100%}
 .wb-display-options #wbKeyToggle{min-height:44px}
 #root .side,#root .side.open{height:45%;max-height:40dvh;border-radius:12px 12px 0 0}
 /* full height still leaves a strip of the plan in view below the two-row plan strip */
 #evApp.ev-inspector-expanded #root .side{height:80%;max-height:62dvh}
 .ev-inspector-head{gap:8px;padding:8px 12px}.ev-inspector-head b{font-size:var(--text-sm)}
 .ep-document-preview{padding:12px}.ev-field input,.ev-field select,.ev-field textarea,#root .side .wb-field input,#root .side .wb-field select{font-size:var(--text-base)!important}
}
#root .side{transition:none}
#epPanel-branding .ep-header-preview{margin:24px 0 16px;padding:16px;background:#edf1f5;border:1px solid #d3dfe8;border-radius:8px}
#epPanel-branding #epHeaderImage{font-size:var(--text-xs);color:var(--dim)}

/* Markup on a tablet (theme 4). */
/* Plan scale: a real button at every width. Amber until the active plan has a scale; icon-only below 1200px. */
#evPlanStrip .ev-scale-btn{gap:6px;font-weight:600;white-space:nowrap;flex:none}
#evPlanStrip .ev-scale-btn svg{width:16px;height:16px;flex:none}
#evPlanStrip .ev-scale-btn.unset{background:#fff3db;border-color:#d9a548;color:#6e4a10}
#evPlanStrip .ev-scale-btn.unset:hover{background:#ffeac2;border-color:#b9832a}
#evPlanStrip .ev-scale-btn.set{background:#e6efff;border-color:#9dbff5;color:#1d4ea6}
#evPlanStrip .ev-scale-btn.set:hover{background:#d6e5ff}
@media(max-width:1200px){
 #evPlanStrip .ev-scale-btn{font-size:0;gap:0;width:36px;min-width:36px;padding:0;justify-content:center}
 #evPlanStrip .ev-scale-btn span{display:none}
 #evPlanStrip .ev-scale-btn svg{width:18px;height:18px}
}
@media(max-width:1200px) and (pointer:coarse),(max-width:700px){
 #evPlanStrip .ev-scale-btn{width:44px;min-width:44px;height:44px}
}
/* Edit tools show their names where the strip has room. */
.ptool-label{display:none}
@media(min-width:1400px){
 #evApp.ev-nav-collapsed #evWorkbench .ptool{width:auto;display:flex;align-items:center;gap:6px;padding:0 10px 0 8px}
 #evApp.ev-nav-collapsed #evWorkbench .ptool-label{display:inline;font-size:var(--text-xs);font-weight:600;white-space:nowrap}
}
/* Plan settings: four section tabs on one row, no Plans/Selected segment, and a way back from an item. */
#root .side.wb-pack .tab{display:none}
#root .side .snav{grid-template-columns:repeat(4,minmax(0,1fr))}
#root .side .snav button{font-size:var(--text-xs);min-height:40px;padding:8px 4px}
#evApp #evInspectorBack{flex:none;width:36px;height:36px;display:grid;place-items:center}
#evApp #evInspectorBack[hidden]{display:none}
#evInspectorBack svg{width:18px;height:18px}
#evSheetHandle{display:none}
.wb-display-options #wbAllAppearance{font-size:var(--text-ui);min-height:40px}
/* Inspector extras. */
#root .side .wb-note{font-size:var(--text-ui);line-height:1.55;color:#586e80;margin:0}
.wb-item-actions .wb-note{margin-top:-4px}
.wb-rotate{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.wb-rotate .pbtn{flex:1 1 120px;min-height:40px;width:auto}
#root .side .wb-rotate-angle{display:flex;align-items:center;gap:7px;font-size:var(--text-xs);font-weight:600;color:var(--field-ink)}
#root .side .wb-rotate-angle input{width:84px;min-height:40px;border:1px solid var(--control-border);border-radius:7px;padding:8px 10px;background:#fff;color:var(--ink)}
/* Equipment picker tiles: larger symbols on a faint navy backing so white units read on white tiles. */
#root .tool .ti{width:40px;height:40px;border-radius:8px;background:#152d4012}
#root .tool .ti-unit img{width:40px!important}
#root .tool>svg{width:26px;height:26px}
@media(pointer:coarse){#root .tool>span:not(.ti){font-size:var(--text-ui)}}
.wb-key-row .ti{flex:none;width:24px;height:30px;overflow:hidden;border-radius:4px;background:#152d4012;align-self:center}
.wb-key-row .ti img{width:24px!important}
@media(max-width:700px){
 /* Header: Help goes icon-only so the project name has room. */
 #evHelpTop{width:44px;min-width:44px;padding:0;justify-content:center;gap:0}
 #evHelpTop span{display:none}
 #evIssuePlans{max-width:150px;white-space:normal;line-height:1.2;text-align:left}
 /* While an item is selected the tool strip is one row, so more of the plan shows above the panel. */
 #evApp.ev-item-selected #evWorkbench.ev-toolbar-mode,#evApp.ev-item-selected .ev-toolstrip{min-height:52px}
 #evApp.ev-item-selected #evToolCategory{display:none}
 /* The sheet handle cycles peek, half and full height. */
 #root .side::before{display:none}
 #evSheetHandle{display:flex;align-items:center;justify-content:center;flex:none;width:100%;height:44px;min-height:44px;background:#fff;border:0;border-radius:12px 12px 0 0;cursor:pointer}
 #evSheetHandle::before{content:'';width:42px;height:5px;border-radius:5px;background:#9fb3c4}
 #evSheetHandle:focus-visible{outline-offset:-4px}
 #evApp .ev-inspector-head{padding-top:0}
 #evApp.ev-sheet-peek #root .side{height:auto;max-height:none}
 #evApp.ev-sheet-peek #root .side>.tab,#evApp.ev-sheet-peek #sideScroll{display:none}
}
@media(pointer:coarse),(max-width:700px){#evApp #evInspectorBack{width:44px;height:44px}}
/* Portrait tablets and phones: the page first at its natural fit-width height, the page thumbnails as a strip under the
   page controls, then the checks and document details directly under the page. Desktop and landscape are unchanged. */
@media (max-width:1100px) and (orientation:portrait){
 .ev-review-dialog,.ed-report-dialog,#rxBackdrop .rx{height:auto!important;max-height:92dvh}
 .ed-report-dialog #edBody{overflow:auto}
 .ev-document-layout{display:flex;flex-direction:column;overflow:auto;flex:1 1 auto;min-height:0}
 .ev-document-layout>div:first-child{flex:none;min-height:0}
 .ev-document-viewer{display:flex;flex-direction:column;height:auto}
 .ev-document-stage{display:contents}
 .ev-document-nav{order:1}
 .ev-document-pages{order:2;border-right:0;border-bottom:1px solid #d3dfe8;padding:8px 12px;overflow-x:auto;overflow-y:hidden;min-height:0}
 .ev-document-pages>b{display:none}
 .ev-document-thumbnails{display:flex;gap:8px}
 .ev-document-thumbnails button{flex:0 0 58px;width:58px;min-height:0}
 .ev-document-canvas{order:3;flex:none;overflow:auto}
 .ev-document-options{border-left:0;border-top:1px solid #d3dfe8;overflow:visible;flex:none;column-count:2;column-gap:28px}
 .ev-document-options>*{break-inside:avoid}
}
@media (max-width:700px) and (orientation:portrait){
 .ev-review-dialog,.ed-report-dialog,#rxBackdrop .rx{height:100dvh!important;max-height:100dvh}
 .ev-document-options{column-count:1}
 .ev-document-canvas{padding:8px}
}
/* On a phone, Open PDF hands the document to the system viewer for proofing with pinch zoom. */
.ev-open-pdf,.ev-open-pdf-note{display:none!important}
@media(max-width:700px){.ev-open-pdf{display:inline-flex!important}.ev-open-pdf-note{display:block!important;font-size:var(--text-xs);color:#586e80;margin:0 0 12px}}
/* Before downloading, engineer pack and plans: the design summary's gaps, each a button that closes the review and opens its fix.
   A phone shows the first five; "and N more" opens the rest. */
.ev-document-options .ev-gaps-lead{margin:14px 0 0}
.ev-document-options .ev-gaps .ev-check-list{padding-left:0;margin-top:2px;line-height:inherit}
.ev-document-options .ev-gaps li+li{margin-top:0}
.ev-gaps-head{font-size:var(--text-xs);font-weight:700;color:var(--dim);margin:12px 0 0}
.ev-gaps-more{display:none}
/* Send… (the device share sheet) sits beside Download at the same height, and the two wrap onto a phone row together. */
.ev-send-pair{display:inline-flex;align-items:center;gap:inherit;max-width:100%}
/* Below 1300px the planner's header rule (.hbtn:not(#btnTools)…) takes the gap out of plain .hbtn buttons; Send keeps its icon
   apart from its label, as Download does. */
body #rxBackdrop .rx-foot #rxSend.hbtn.ev-send{gap:6px}
/* Above phone width a footer with Send keeps its buttons on one row and the status line beside them wraps instead. */
@media(min-width:701px){.ev-dialog-foot .ev-actions:has(.ev-send-pair){flex:none}}
@media(max-width:700px){
 .ev-gaps:not(.open) .ev-gaps-extra{display:none}
 .ev-gaps:not(.open) .ev-gaps-more{display:inline-flex;align-items:center;min-height:44px}
}

/* Record checks: every row opens the place its value is entered (Overview, Design lab). */
.ev-check-list li{padding:0;border-bottom:1px solid #edf1f5}
.ev-check-list li:last-child{border-bottom:0}
.ev-check-row{width:100%;display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:9px 0;border:0;background:none;text-align:left;color:inherit;font:inherit;cursor:pointer}
.ev-check-row>span{flex:1;min-width:0}
.ev-check-row b{display:block;font-size:var(--text-ui);font-weight:600;line-height:1.4;color:var(--dim)}
.ev-check-list li.ok .ev-check-row b{color:var(--ink)}
.ev-check-row small{display:block;font-size:var(--text-xs);line-height:1.45;color:#64798a;margin-top:1px}
.ev-check-list .ev-check-row>svg:last-child{width:14px;height:14px;color:#8ba0b0;margin-top:4px}
.ev-check-row:hover b{color:var(--accent)}
.ev-checks-sub{font-size:var(--text-ui);line-height:1.55;color:var(--dim);margin:0 0 12px}
.evp-register-summary{padding-bottom:6px}.evp-register-summary .ev-stats{margin:0 0 10px}
.ev-project-only{font-size:var(--text-ui);margin:6px 0 0}
/* The same record checks in the Markup Checks tab. */
#side .rc-list{display:flex;flex-direction:column;margin-top:8px}
#side .rc-row{display:flex;align-items:flex-start;gap:9px;width:100%;min-height:44px;padding:7px 2px;border:0;border-top:1px solid var(--line);background:none;text-align:left;font:inherit;color:inherit;cursor:pointer}
#side .rc-row:first-child{border-top:0}
#side .rc-row:hover b{color:var(--accent)}
#side .rc-mark{flex:none;width:18px;height:18px;border-radius:50%;border:1.5px solid #9fb0bd;display:grid;place-items:center;font-size:var(--text-2xs);font-weight:800;color:#fff;margin-top:1px}
#side .rc-row.ok .rc-mark{background:var(--ok,#4BA069);border-color:var(--ok,#4BA069)}
#side .rc-copy{flex:1;min-width:0}
#side .rc-copy b{display:block;font-size:var(--text-ui);font-weight:600;color:var(--ink);line-height:1.35}
#side .rc-row:not(.ok) .rc-copy b{color:var(--dim)}
#side .rc-copy em{display:block;font-style:normal;font-size:var(--text-2xs);color:var(--faint);line-height:1.4;margin-top:1px}
/* The smallest phones keep Project details as an icon so the overview header never runs off the side. */
@media(max-width:360px){.ev-overview-heading .ev-actions .ev-btn span{display:none}.ev-overview-heading .ev-actions .ev-btn{min-width:44px;min-height:44px;padding:9px 11px}}
/* The smallest phones fit the five canvas tools (with Square up) and undo and redo on one row: slightly narrower buttons, full height. */
@media(max-width:360px){.ev-toolstrip{padding:4px 6px;gap:4px 6px}#evWorkbench .ptool{width:40px;min-width:40px}.ev-undo-group button{width:40px;min-width:40px}}
/* and keep the plan strip to two rows: the plan picker and Plan settings, then the other buttons, slightly narrower at full height. */
@media(max-width:360px){#evPlanStrip{gap:4px;padding:4px 6px}#evPlanStrip>.ev-btn[data-ev-action=evidence-overlay],#evPlanStrip>.ev-btn[data-ev-action=reach-layer]{padding-inline:6px}#evPlanStrip #wbDrawingTools>summary{padding-inline:4px}#evPlanStrip>.ev-btn[data-ev-action=add-files],#evPlanStrip .ev-scale-btn{width:40px;min-width:40px}}
/* The item count in the plan strip opens the plan key, which lists every item as a button. */
#evPlanStrip button.ev-plan-meta{display:inline-flex;align-items:center;min-height:36px;padding:6px 9px;border:1px solid transparent;border-radius:8px;background:transparent;font:inherit;font-size:var(--text-xs);font-weight:650;color:var(--dim);cursor:pointer;white-space:nowrap}
#evPlanStrip button.ev-plan-meta:hover{background:#e7edf3}
#evPlanStrip button.ev-plan-meta[aria-expanded=true]{background:#e7edf3;border-color:#93a9bc;color:var(--ink)}
@media(max-width:1200px){#evPlanStrip button.ev-plan-meta{display:none}}
/* Tablets: the inspector overlays the plan, so the strip has room for the item count again. */
@media(max-width:1100px) and (min-width:701px){#evPlanStrip button.ev-plan-meta{display:inline-flex}}
@media(pointer:coarse){#evPlanStrip button.ev-plan-meta{min-height:44px}.wb-key-row{min-height:44px;align-items:center}}
/* While the evidence overlay is on, its legend stays in the plan strip. */
#evPlanStrip .ev-evidence-key{font-size:var(--text-xs);color:var(--ink);background:#fff;border:1px solid #cfdae4;border-radius:8px;padding:5px 9px;white-space:nowrap}
/* Phones: the strip is full, so the legend sits just below it, over the top of the plan. */
@media(max-width:700px){#evPlanStrip .ev-evidence-key{position:absolute;top:100%;left:8px;margin-top:6px;box-shadow:0 4px 14px #10283c26}}
/* Field hints on touch screens: Pin stays 20 px but the button around it is a 44 px target that sits beside the label, never over the field below. */
@media(pointer:coarse){
 #root .side .prop label:has(.hintq){min-height:44px;padding-right:48px;display:flex;align-items:center}
 #root .side .hintq{width:44px;height:44px;border:0;background:transparent;margin:0}
 #root .side .hintq::after{inset:10px 11px;border-radius:6px;z-index:0}
 #root .side .hintq>span{position:relative;z-index:1}
 #root .side .hintq:hover,#root .side .hintq.on{background:transparent}
 #root .side .hintq.on::after{background:#e4ecf9}
 #root .side .hintq>span .ev-pin-head{width:19px;height:22px;display:block}
 #root .side .card h3 .hintq{margin:-12px -10px -12px auto}
 #root .side .needrow .hintq{margin:-11px -4px}
 #root .side .hintbox a,#root .side a.hint-guide{display:inline-block;min-height:44px;padding:12px 0;line-height:20px}
}
/* Photo skin: the "Your photo" row on a charger and the dialog that crops and sizes the photo. */
#side .uskin-row{display:flex;align-items:center;gap:10px}
#side .uskin-row>.pbtn{flex:0 0 auto;padding:7px 14px}
#side .uskin-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
#side .uskin-btns{display:flex;gap:6px}
#side .uskin-btns .pbtn{flex:1 1 0;min-width:0}
#side .uskin-thumb{flex:none;width:56px;height:56px;object-fit:contain;border-radius:8px;border:1px solid var(--line2);background:var(--panel2)}
#side .uskin-size{font-size:var(--text-xs);font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums}
#side .uskin-note{font-size:var(--text-2xs);color:var(--faint);line-height:1.45}
.skin-dlg{width:min(560px,100%)}
.skin-stage{position:relative;height:min(52vh,440px);border-radius:12px;background:#0E1B27;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}
.skin-stage img{position:absolute;max-width:none;pointer-events:none;-webkit-user-drag:none}
.skin-box{position:absolute;box-sizing:border-box;border:2px solid #fff;box-shadow:0 0 0 2000px rgba(8,16,24,.58);cursor:move;touch-action:none}
.skin-box i{position:absolute;width:44px;height:44px;margin:-22px;touch-action:none}
.skin-box i::after{content:"";position:absolute;inset:14px;border-radius:50%;background:#fff;border:2px solid var(--accent);box-shadow:0 1px 4px rgba(0,0,0,.35)}
.skin-box i[data-c=nw]{left:0;top:0;cursor:nwse-resize}
.skin-box i[data-c=ne]{right:0;top:0;cursor:nesw-resize}
.skin-box i[data-c=sw]{left:0;bottom:0;cursor:nesw-resize}
.skin-box i[data-c=se]{right:0;bottom:0;cursor:nwse-resize}
.skin-size{display:flex;gap:12px;margin-top:14px}
.skin-size label{flex:1;display:flex;flex-direction:column;gap:5px;font-size:var(--text-xs);font-weight:650;color:var(--dim)}
.skin-size input{width:100%;min-height:44px;padding:8px 11px;border:1px solid var(--field-border);border-radius:var(--btn-r);background:#fff;color:var(--ink);font:inherit;font-size:var(--text-base);font-weight:600}
.skin-msg{min-height:1.4em;margin:8px 0 0;font-size:var(--text-xs);color:var(--ev-bad)}

/* Markup checks (2026-10): reach results on the charger panel, the accessible route check and the plan Checks card. */
.mk-help{color:var(--faint);font-size:var(--text-2xs);line-height:var(--leading-snug)}
.mk-note{border-radius:8px;padding:7px 10px;margin-top:6px;font-size:var(--text-2xs);line-height:var(--leading-snug);border:1px solid var(--line2);background:var(--panel)}
.mk-note.warn{background:var(--ev-warn-bg);border-color:var(--ev-warn);color:var(--ev-warn)}
.mk-note.bad{background:var(--ev-bad-bg);border-color:var(--ev-bad);color:var(--ev-bad)}
/* Shared ducts: one card per trench duct listing the runs it carries, each with a picker to move it */
.mk-ducts{display:flex;flex-direction:column;gap:6px;margin:6px 0 4px}
.mk-duct{border:1px solid var(--line2);border-radius:8px;background:var(--panel);padding:7px 9px;display:flex;flex-direction:column;gap:5px}
.mk-duct-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:var(--text-2xs);color:var(--dim)}
.mk-duct-head b{color:var(--ink);font-size:var(--text-xs);font-weight:650}
.mk-duct-run{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--text-xs);color:var(--ink)}
.mk-duct-run span{min-width:0;overflow-wrap:anywhere}
.mk-duct-run select{flex:none;width:auto;min-width:108px;max-width:46%;margin:0}
/* the fill guide wording stays in view: it is the caveat on the figures above */
.mk-duct-guide{margin:2px 0 6px}
/* Existing services: one card per crossing or close stretch with a marked service, edged in the service's marking colour */
.mk-services{display:flex;flex-direction:column;gap:6px;margin:6px 0 4px}
.mk-service{border:1px solid var(--line2);border-left:4px solid var(--sv,var(--line2));border-radius:8px;background:var(--panel);padding:7px 9px;display:flex;flex-direction:column;align-items:flex-start;gap:3px;font-size:var(--text-2xs);line-height:var(--leading-snug);color:var(--dim);overflow-wrap:anywhere}
.mk-service b{color:var(--ink);font-size:var(--text-xs);font-weight:650}
.mk-service-dig{color:var(--ev-warn);background:var(--ev-warn-bg);border-radius:6px;padding:1px 7px;font-weight:700}
.mk-service-count{font-size:var(--text-2xs);font-weight:650;color:var(--dim);margin:2px 0}
.mk-service-note{margin:2px 0 6px}
.mk-plan{font-size:var(--text-2xs);font-weight:700;color:var(--dim);margin:8px 0 4px}
.mk-results{list-style:none;margin:6px 0 4px;padding:0;display:flex;flex-direction:column;gap:5px}
.mk-results li{border-radius:8px;padding:6px 9px 6px 11px;font-size:var(--text-2xs);line-height:var(--leading-snug);color:var(--ink);background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--line2);overflow-wrap:anywhere}
.mk-results li b{font-weight:700;margin-right:4px}
.mk-results li small{display:block;color:var(--dim);font-size:var(--text-2xs);margin-top:2px}
.mk-results li.ok,.mk-results li.pass{border-left-color:var(--ev-ok);background:var(--ev-ok-bg)}
.mk-results li.warn{border-left-color:var(--ev-warn);background:var(--ev-warn-bg)}
.mk-results li.bad,.mk-results li.fail{border-left-color:var(--ev-bad);background:var(--ev-bad-bg)}
.mk-results li .mk-row-action{display:flex;min-height:0;margin-top:4px;padding:2px 0;color:var(--accent);font-weight:700;text-align:left}
.seg.grid2.mk-stack{grid-template-columns:1fr}
/* Plans review: the optional trench and duct sections page. */
.ev-sections-choice{display:flex;align-items:flex-start;gap:9px;padding:13px 0;border-bottom:1px solid #e6edf2;font-size:var(--text-xs);font-weight:650;color:var(--ink);cursor:pointer}
.ev-sections-choice input{flex:none;accent-color:var(--accent);width:17px;height:17px;margin-top:1px}
.ev-sections-choice small{display:block;font-weight:500;color:var(--dim);line-height:var(--leading-normal);margin-top:2px}

/* Selected item panel, 20 October 2026: each closed group says what it holds, and the Same charger as link. */
.wb-sum-text{display:flex;flex-direction:column;gap:3px;min-width:0}
.wb-sum-hint{font-size:var(--text-xs);font-weight:500;color:#5d7384;line-height:1.4}
.wb-section[open]>summary .wb-sum-hint{display:none}
.wb-same-card{display:grid;gap:6px;padding:11px 12px;border-radius:10px;background:var(--ev-info-bg);border:1px solid #c9d8f6;font-size:var(--text-xs);line-height:1.5;color:var(--dim)}
.wb-same-card b{color:var(--ink);font-size:var(--text-ui)}
.wb-same-card .pbtn{justify-self:start;margin-top:2px}
#root .side .prop .sec-break{margin:14px 0 2px;padding-top:12px;border-top:1px solid var(--line);font-weight:700;color:var(--field-ink);font-size:var(--text-xs);letter-spacing:.02em}
#root .side.wb-pack .scroll{gap:12px}
/* Plan accuracy tag: how the open plan was scaled, a small note in the top-left corner of the plan (screen only) */
#cvwrap .ev-plan-tag{position:absolute;left:12px;top:12px;z-index:3;max-width:calc(100% - 96px);padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.9);border:1px solid #c9d6e2;color:var(--ev-navy);font-size:var(--text-2xs);font-weight:600;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;box-shadow:0 1px 3px rgba(16,38,56,.12)}
#cvwrap .ev-plan-tag[hidden]{display:none}
/* the Plans list shows the same tag in place of "scaled": keep it one box when it wraps under the item count */
#side .thumb .meta .scaleflag{display:inline-block;max-width:100%;line-height:1.45;vertical-align:baseline;border-radius:7px}
/* Find in the top bar opens the palette that / and Ctrl+K open. A square icon button on tablets keeps the project title its room.
   Markup's bar already holds Issue plans, and the phone bar the menu, title, backup and help, so Find is left out there. */
@media(max-width:1100px){
 #evFindTop{min-width:44px;min-height:44px;padding:8px}
 #evFindTop>span{display:none}
 #evApp[data-route=markup] #evFindTop{display:none}
}
@media(max-width:700px){
 #evFindTop{display:none}
}
/* Friendlier Markup (31 October 2026). On a tablet or computer the page list steps aside behind the menu button, the kit
   shelf (the equipment library) sits down the left of the plan and the settings panel sits beside it, so neither covers the
   drawing. On an upright iPad the shelf steps aside while an item is picked, to leave the plan room. Phones keep their sheet. */
@media(min-width:701px){
 #evApp.ev-in-markup{grid-template-columns:minmax(0,1fr)}
 #evApp.ev-in-markup .ev-sidebar{position:fixed;inset:0 auto 0 0;width:240px;z-index:145;transform:translateX(-100%);transition:none}
 #evApp.ev-in-markup .ev-sidebar.open{transform:none;transition:transform .2s;box-shadow:0 0 0 100vmax #142e4466}
 #evApp.ev-in-markup #evMobileNav{display:grid}
 #evApp.ev-in-markup .ev-top-logo{display:block;flex:none}
 #evApp.ev-in-markup #evCollapseNav{display:none}
 #evApp.ev-in-markup #root .rail{position:relative;inset:auto;width:168px;max-height:none;border:0;border-right:1px solid var(--card-line,#d6dfe7);border-radius:0;box-shadow:none;background:var(--top-bar,#ffffff)}
 #evApp.ev-in-markup #root .side{position:relative;inset:auto;transform:none;box-shadow:none;width:320px;max-width:none;height:auto;border-left:1px solid var(--card-line,#d6dfe7);background:var(--top-bar,#ffffff)}
 #evApp.ev-in-markup #root .side:not(.open){display:none}
 #evApp.ev-in-markup #root .side.open~.mask{display:none}
 #evApp.ev-in-markup #root .palhead{display:none}
 #evApp.ev-in-markup #root .rail .pgrid{grid-template-columns:minmax(0,1fr)}
}
/* The kit shelf on a tablet or computer (2 November 2026, Ben's 2A): narrow by default with one row per item, picture beside
   the name; the width button opens it to two columns of cards and the choice is kept on this device. The heading names the
   section on show, and the search box keeps its name for screen readers only. A home job adds its kit at the top. */
.wb-library-cat,.wb-shelf-width{display:none}
.wb-shelf-width svg{width:18px;height:18px}
@media(min-width:701px){
 #evApp.ev-in-markup .wb-library-all{display:none}
 #evApp.ev-in-markup .wb-library-cat{display:inline}
 #evApp.ev-in-markup .wb-shelf-width{display:grid;place-items:center;margin-left:auto}
 #evApp.ev-in-markup .wb-library-heading{gap:6px}
 #evApp.ev-in-markup .wb-library-heading b{min-width:0;overflow-wrap:anywhere}
 #evApp.ev-in-markup .wb-search{gap:0}
 #evApp.ev-in-markup .wb-search-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
 #evApp.ev-in-markup #root .rail:not(.wb-wide){width:184px}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-library-heading{flex-wrap:wrap}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-library-heading b{flex:1 0 100%}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-shelf-width{margin-left:0}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) [data-wb-close-library]{margin-left:auto}
 #evApp.ev-in-markup #root .rail.wb-wide{width:320px}
 #evApp.ev-in-markup #root .rail.wb-wide .pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
 #evApp.ev-in-markup #root .rail.wb-wide .wb-shelf-width svg{transform:scaleX(-1)}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .pgrid{gap:6px}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-tool-cell .tool{flex-direction:row;justify-content:flex-start;gap:6px;min-height:52px;padding-block:6px;padding-left:6px;text-align:left}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-tool-cell .tool>.ti,#evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-tool-cell .tool>svg{width:28px;height:28px;flex:0 0 28px}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-tool-cell .tool>.ti img{width:28px}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-favourite{width:32px}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-tool-cell .tool>span:not(.ti){flex:1 1 auto;min-width:0;text-align:left;text-wrap:pretty}
 #evApp.ev-in-markup #root .rail:not(.wb-wide) .wb-favourite{top:50%;transform:translateY(-50%)}
 #root .wb-home-kit{padding-bottom:10px;margin-bottom:6px;border-bottom:1px solid var(--card-line,#d6dfe7)}
}
@media(min-width:701px) and (max-width:1000px){
 #evApp.ev-in-markup.ev-item-selected #root .rail{display:none}
 #evApp.ev-in-markup #root .rail{width:150px}
 #evApp.ev-in-markup #root .rail:not(.wb-wide){width:176px}
 #evApp.ev-in-markup.ev-item-selected #evPlanStrip{flex-wrap:wrap;height:auto;padding-block:6px}
}
/* Markup clean-up, 2 November 2026: two bars. The plan strip folds behind the Plan button and opens as a panel under the
   tool strip; the edit tools carry their names; Plan, Tools, Focus and Show client sit quietly at the right. */
.ev-plan-menu-btn{display:none}
#evApp.ev-in-markup #evWorkbench .ev-plan-menu-btn{display:inline-flex;align-items:center;gap:6px;flex:none;margin-left:auto}
#evApp.ev-in-markup #evWorkbench .ev-plan-menu-btn+.ev-tech{margin-left:0}
.ev-plan-menu-chev{transition:transform .15s}
#evApp.ev-plan-open .ev-plan-menu-chev{transform:rotate(180deg)}
#evApp.ev-in-markup #evWorkbench .ev-plan-menu-btn,#evApp.ev-in-markup #evWorkbench .ev-tech>.ev-btn,#evApp.ev-in-markup #evWorkbench .ev-focus-btn{background:transparent;border-color:transparent;box-shadow:none}
@media(min-width:701px){#evApp.ev-in-markup #evWorkbench .ev-plan-menu-btn,#evApp.ev-in-markup #evWorkbench .ev-tech>.ev-btn,#evApp.ev-in-markup #evWorkbench .ev-focus-btn{font-size:var(--text-xs);min-height:36px;padding:8px 10px}}
@media(min-width:701px) and (max-width:1100px){#evApp.ev-in-markup #evWorkbench .ev-plan-menu-btn{order:3}}
#evApp.ev-in-markup #evWorkbench .ev-plan-menu-btn:hover,#evApp.ev-in-markup #evWorkbench .ev-tech>.ev-btn:hover,#evApp.ev-in-markup #evWorkbench .ev-focus-btn:hover{background:#fff;border-color:var(--card-line,#d6dfe7)}
#evApp.ev-plan-open #evWorkbench .ev-plan-menu-btn,#evApp.ev-in-markup #evWorkbench .ev-tech>.ev-btn[aria-expanded=true]{background:#fff;border-color:#8faee0;color:#234f99}
#evApp.ev-in-markup #root #evPlanStrip{display:none}
#evApp.ev-in-markup.ev-plan-open #root #evPlanStrip{display:flex;position:absolute;top:8px;right:12px;width:340px;height:auto;min-height:0;flex-wrap:wrap;align-items:center;align-content:flex-start;gap:8px;padding:12px;background:#fff;border:1px solid var(--card-line,#d6dfe7);border-radius:12px;box-shadow:0 14px 36px #10283c2e;z-index:60}
#evApp.ev-plan-open #root #evPlanStrip>svg{display:none}
#evApp.ev-plan-open #root #evPlanStrip #evActivePlan{order:-2;flex:1 1 100%;max-width:none;min-width:0;height:44px;font-size:var(--text-ui)}
#evApp.ev-plan-open #root #evPlanStrip>.ev-btn,#evApp.ev-plan-open #root #evPlanStrip #wbDrawingTools{order:0;flex:1 1 calc(50% - 4px);width:auto;min-width:0;min-height:44px;height:auto;margin:0;justify-content:center;font-size:var(--text-xs);gap:6px;padding:8px 10px}
#evApp.ev-plan-open #root #evPlanStrip>.ev-btn span{display:inline}
#evApp.ev-plan-open #root #evPlanStrip .ev-scale-btn{order:-1;flex:1 1 100%;width:auto;font-size:var(--text-xs)}
#evApp.ev-plan-open #root #evPlanStrip #evInspectorToggle{order:2;flex:1 1 100%;font-size:var(--text-xs)}
#evApp.ev-plan-open #root #evPlanStrip .ev-plan-meta{order:3;flex:1 1 100%;display:block;margin:0;text-align:center;font-size:var(--text-xs)}
#evApp.ev-plan-open #root #evPlanStrip #wbDrawingTools{padding:0}
#evApp.ev-plan-open #root #evPlanStrip #wbDrawingTools>summary{display:flex;justify-content:center;align-items:center;min-height:44px;width:100%}
#evApp.ev-plan-open #root #evPlanStrip .wb-display-options{right:-13px;top:calc(100% + 8px)}
#evApp.ev-plan-open #root #evPlanStrip .ev-evidence-key{order:1;flex:1 1 100%;position:static;box-shadow:none;margin:0}
/* The edit tools show their short names under the icon. */
#evApp.ev-in-markup #evWorkbench .ptool{width:auto;min-width:48px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 6px}
#evApp.ev-in-markup #evWorkbench .ptool .ptool-label{display:block;font-size:var(--text-xs);font-weight:600;line-height:1.1;white-space:nowrap}
#evApp.ev-in-markup #evWorkbench .ptool svg{width:18px;height:18px}
@media(max-width:700px){
 #evApp.ev-in-markup #evWorkbench .ev-plan-menu-btn{order:4;width:44px;height:44px;min-height:44px;justify-content:center;padding:0;margin-left:0}
 #evApp.ev-in-markup #evWorkbench .ev-plan-menu-chev,#evApp.ev-in-markup #evWorkbench .ev-plan-menu-btn span{display:none}
 #evApp.ev-in-markup #evToolCategory{flex:1 1 0;min-width:0}
 #evApp.ev-in-markup #evWorkbench .ev-tech>.ev-btn,#evApp.ev-in-markup #evWorkbench .ev-picture-btn{width:44px;height:44px;min-height:44px;padding:0;justify-content:center}
 #evApp.ev-in-markup.ev-plan-open #root #evPlanStrip{left:8px;right:8px;width:auto}
 #evApp.ev-in-markup #evWorkbench .ptool{min-width:44px;height:52px;padding:4px}
}
/* Upright iPad: the item panel rises from the bottom at the plan's full width, so the plan keeps its width beside the shelf. */
@media(min-width:701px) and (max-width:1100px) and (orientation:portrait){
 #evApp.ev-in-markup #root .side,#evApp.ev-in-markup #root .side.open{position:absolute;inset:auto 0 0 0;z-index:45;width:auto;height:auto;max-height:48%;border-left:0;border-radius:16px 16px 0 0;box-shadow:0 -10px 30px #17304426}
}
/* Pin's next step card (2 November 2026): bottom left of the plan, beside the zoom buttons' corner. It steps aside while
   the hint bar shows a tool instruction or an item is picked, and shrinks to Pin's head with the step count. */
.ev-pin-card{position:absolute;left:16px;bottom:16px;z-index:40;display:flex;align-items:flex-start;gap:14px;width:min(440px,calc(100% - 96px));padding:16px 16px 16px 14px;background:#fff;border:1px solid var(--card-line,#d6dfe7);border-radius:16px;box-shadow:0 14px 36px #10283c24;color:var(--ink)}
.ev-pin-card[hidden],#hint.show~.ev-pin-card,#evApp.ev-item-selected .ev-pin-card,#evApp.ev-focus-mode .ev-pin-card,#evApp.ev-plan-open .ev-pin-card{display:none}
.ev-pin-card .pc-pin{flex:0 0 52px}
.ev-pin-card .pc-art{display:block;width:52px;height:auto}
.ev-pin-card .pc-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:6px}
.ev-pin-card .pc-eyebrow{font-size:var(--text-xs);font-weight:650;letter-spacing:.4px;text-transform:uppercase;color:var(--dim)}
.ev-pin-card .pc-title{font-size:var(--text-base);font-weight:700;line-height:1.3;outline-offset:3px}
.ev-pin-card .pc-text{margin:0;font-size:var(--text-ui);line-height:1.5;color:var(--field-ink,#334f63)}
.ev-pin-card .pc-dots{display:flex;gap:6px;margin:4px 0 2px}
.ev-pin-card .pc-dots i{display:block;width:22px;height:5px;border-radius:3px;background:#e1e7ee}
.ev-pin-card .pc-dots i.done{background:var(--ev-ok)}
.ev-pin-card .pc-dots i.now{background:var(--ev-info)}
.ev-pin-card .pc-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.ev-pin-card .pc-actions .ev-btn,.ev-pin-card .pc-list .ev-btn{min-height:44px;font-size:var(--text-ui)}
.ev-pin-card .pc-min{flex:none;width:44px;height:44px;margin:-10px -10px 0 0;display:grid;place-items:center;border:0;background:transparent;color:var(--dim);border-radius:10px;cursor:pointer}
.ev-pin-card .pc-min:hover{background:#f3f0ea;color:var(--ink)}
.ev-pin-card .pc-min svg{width:18px;height:18px}
.ev-pin-card .pc-list{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}
.ev-pin-card .pc-list li{display:flex;align-items:center;gap:10px;min-height:40px;padding:2px 6px;border-radius:10px;font-size:var(--text-ui)}
.ev-pin-card .pc-list li.now{background:#edf3fd;padding:4px 4px 4px 6px}
.ev-pin-card .pc-list li.done .pc-name{color:var(--dim)}
.ev-pin-card .pc-list .pc-name{flex:1 1 auto;min-width:0}
.ev-pin-card .pc-mark{flex:0 0 24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:var(--text-xs);font-weight:700;border:1.5px solid #c9d3dd;color:var(--dim)}
.ev-pin-card li.done .pc-mark{background:var(--ev-ok);border-color:var(--ev-ok);color:#fff}
.ev-pin-card li.done .pc-mark svg{width:14px;height:14px}
.ev-pin-card li.now .pc-mark{border-color:var(--ev-info);color:var(--ev-info)}
.ev-pin-card.pc-small{width:auto;padding:0;border:0;background:transparent;box-shadow:none}
.ev-pin-card .pc-head{position:relative;width:64px;height:64px;border-radius:50%;border:1px solid var(--card-line,#d6dfe7);background:#fff;box-shadow:0 8px 24px #10283c2e;display:grid;place-items:center;cursor:pointer;padding:0}
.ev-pin-card .pc-head .pc-art{width:40px}
.ev-pin-card .pc-badge{position:absolute;top:-6px;right:-10px;min-width:30px;padding:2px 6px;border-radius:999px;background:var(--ev-info);color:#fff;font-size:var(--text-xs);font-weight:700;line-height:1.4}
@media(max-width:700px){
 .ev-pin-card{left:8px;right:68px;bottom:8px;width:auto;gap:10px;padding:12px}
 .ev-pin-card .pc-pin{flex-basis:40px}.ev-pin-card .pc-art{width:40px}
 .ev-pin-card .pc-text{display:none}
 #evApp.ev-inspector-open .ev-pin-card{display:none}
}
.ev-pin-card .pc-actions .ev-btn.pc-link{border-color:transparent;background:transparent;box-shadow:none;color:var(--ev-info);padding-inline:8px}
.ev-pin-card .pc-actions .ev-btn.pc-link:hover{background:#edf3fd}

/* Right-hand panel, simpler (Ben's B to F, 4 November 2026). Layout only: the fields and their handlers are unchanged. */
/* B: route types in plain words, two to a row, cables first; the typed length leads, with four quick lengths below. */
#root .side .seg.rk-kinds button{text-align:left;justify-content:flex-start;padding-inline:12px}
.rk-quick{font-size:var(--text-xs);color:var(--dim);margin:8px 0 2px}
/* C: each Checks group folds to one line with its status. */
.wb-check{background:var(--panel2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 1px 2px rgba(16,24,40,.04)}
.wb-check>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;cursor:pointer;font-size:var(--text-ui);font-weight:650;color:var(--ink)}
.wb-check>summary::-webkit-details-marker{display:none}
.wb-check>summary::after{content:"";flex:none;width:8px;height:8px;border-right:2px solid #6b8091;border-bottom:2px solid #6b8091;transform:rotate(45deg);margin:-4px 4px 0 0;transition:transform .15s}
.wb-check[open]>summary::after{transform:rotate(225deg);margin-top:4px}
.wb-check>summary:hover{background:#f4f7fa;border-radius:var(--radius)}
.wb-check-status{font-size:var(--text-xs);font-weight:600;color:var(--dim)}
.wb-check-status.bad{color:var(--ev-bad)}
.wb-check-status.warn{color:var(--ev-warn)}
.wb-check-status.ok{color:var(--ev-ok)}
#root .side .wb-check>.card.wb-check-body{border:0;box-shadow:none;background:transparent;padding:0 14px 14px;margin:0}
.wb-check-help{display:flex;justify-content:flex-end;margin-bottom:4px}
.wb-bay-group{border:1px solid #e7c98a;background:var(--ev-warn-bg);border-radius:10px;padding:10px 12px;font-size:var(--text-xs);line-height:1.45;color:#5b4300;margin-bottom:8px}
.wb-bay-group>summary{cursor:pointer}
.wb-bay-group[open]>summary{margin-bottom:8px}
/* E: the project at a glance, at the top of Plans. */
.wb-summary-eyebrow{font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--dim)}
.wb-summary-name{font-size:var(--text-xl);font-weight:800;color:var(--ink);line-height:1.25;margin-top:4px;overflow-wrap:anywhere}
.wb-summary-addr{font-size:var(--text-xs);color:var(--dim);margin-top:2px}
.wb-summary-stats{display:flex;gap:8px;margin-top:12px}
.wb-summary-stats>div{flex:1;border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column}
.wb-summary-stats b{font-size:var(--text-base);color:var(--ink)}
.wb-summary-stats span{font-size:var(--text-2xs);color:var(--dim)}
.wb-summary-next{margin-top:12px;font-size:var(--text-ui);font-weight:650;color:var(--ink)}
#root .side .wb-summary .ev-btn.primary{width:100%;margin-top:8px}
/* F: the site and branding as summaries with a link to where they are edited. */
.wb-sum-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:var(--text-xs)}
.wb-sum-row span{color:var(--dim)}
.wb-sum-row b{text-align:right;color:var(--ink);overflow-wrap:anywhere}
.wb-sum-notes{font-size:var(--text-xs);color:var(--dim);line-height:1.45;margin-top:8px}
#root .side .wb-site-summary .addbtn{margin-top:10px}
.wb-brand-sum{display:flex;align-items:center;gap:10px}
.wb-brand-sum b{display:block;font-size:var(--text-ui);color:var(--ink)}
.wb-brand-sum span{font-size:var(--text-xs);color:var(--dim)}
.wb-brand-logo{flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;background:#fff;display:grid;place-items:center;overflow:hidden;font-size:var(--text-2xs);color:var(--dim)}
.wb-brand-logo img{max-width:38px;max-height:38px}
#root .side .wb-brand-sum+.addbtn{margin-top:10px}
.wb-brand-edit{margin-top:10px}
.wb-brand-edit>summary{cursor:pointer;font-size:var(--text-xs);font-weight:600;color:var(--ev-info)}
.wb-brand-edit[open]>summary{margin-bottom:8px}
/* D: help notes sit behind the ? and open under their field. */
.wb-tip[hidden]{display:none}
.wb-tipq{margin-left:6px;vertical-align:middle}
#root .side .card[hidden],#root .side .wb-check-body>h3[hidden],#root .side .wb-help>summary[hidden]{display:none}
.wb-bay-show{color:var(--ev-info);font-weight:600;white-space:nowrap}
/* Site work and handover, 7 November 2026: the cards for running the job wait in one closed group under the design checks. */
.wb-check-group{border:1px dashed var(--line);border-radius:var(--radius);background:transparent}
.wb-check-group>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;cursor:pointer;font-size:var(--text-ui);font-weight:650;color:var(--ink)}
.wb-check-group>summary::-webkit-details-marker{display:none}
.wb-check-group>summary::after{content:"";flex:none;width:8px;height:8px;border-right:2px solid #6b8091;border-bottom:2px solid #6b8091;transform:rotate(45deg);margin:-4px 4px 0 0}
.wb-check-group[open]>summary::after{transform:rotate(225deg);margin-top:4px}
.wb-check-group[open]{padding:0 8px 8px;display:grid;gap:8px}
