/* Reading sizes are independent of the PDF zoom. Field tools retain a compact
   layout while forms and list rows remain legible on phones and large screens. */
body{font-size:15px;line-height:1.5}
button,input,select,textarea{font-size:inherit}
.list-content{padding:clamp(18px,2.8vw,44px)}
.pagehead{gap:20px;align-items:flex-start;padding:clamp(22px,2.5vw,38px) clamp(18px,2.8vw,44px) 8px}
.pagehead h1{font-size:clamp(24px,2vw,32px);line-height:1.25;overflow-wrap:anywhere;max-width:1050px}
.pagehead .eyebrow,.pw-eyebrow,.eyebrow{font-size:12px}
.pagehead>div:first-child{min-width:0;flex:1}
.library-actions{flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}
.drawing-library{width:100%;max-width:1600px;margin:0 auto}
.library-head{margin-bottom:20px;gap:16px}
.library-search{max-width:560px;width:min(100%,520px);min-width:0}
.library-search input{font-size:15px;min-width:0;width:100%}
.library-filters{margin:0 0 18px;gap:8px;flex-wrap:wrap}
.sheet-cache,.sb-row-note{display:block}
.field label,.modalbody .muted,.modalbody label,.upload-file-label small,.upload-ready small,.upload-context-help{font-size:14px}
.modalbody input,.modalbody select,.modalbody textarea{font-size:16px;min-height:44px}
.modalbody textarea{min-height:90px;resize:vertical}
.modalbody p{line-height:1.6}
.drawing-upload-dialog{width:min(740px,calc(100vw - 28px));max-height:calc(100dvh - 32px)}
.upload-setup-summary{padding:14px 16px;margin-top:16px;background:#edf6f4;border:1px solid #c5e4db;border-radius:12px;font-size:14px;color:#245949}
.upload-setup-summary button{margin-top:10px}
.drawfoot .crop-toggle{margin-left:auto;padding:5px 12px;min-height:34px;font-size:13px}
.drawfoot{gap:10px;flex-wrap:wrap}
#sheet-clip{box-shadow:0 3px 18px #162d4324;background:#fff}
#sheet-clip .sheet{box-shadow:none}
.site-sheet-clip{box-shadow:0 3px 18px #162d4324;background:#fff}
.site-sheet-paper{box-shadow:none}
.site-sheet-heading p,.site-sheet-info,.site-sheet footer,.site-sheet-tools [role=status]{font-size:14px}
.site-sheet-heading h1{font-size:clamp(19px,1.6vw,26px)}
.site-sheet-heading{flex-wrap:wrap}
.site-sheet-heading>div{min-width:180px}
.nav .navtext{font-size:14px}
.top-context,.projectpick{font-size:15px}
.toolbar button{font-size:13px;min-height:38px}
.drawing-library tr[data-action]{cursor:pointer}
.drawing-library tr[data-action]:hover{background:#f4f8fd}
.drawing-library tr:focus-within{background:#eff5ff}
.sb-table{white-space:normal}
.sb-row-title>span:not(.sb-row-icon):not(.sb-row-arrow){flex:1 1 auto;min-width:0;white-space:normal}
.sb-row-title strong{display:block;min-width:0;white-space:normal;overflow-wrap:anywhere}
@media(min-width:861px){
 .sb-table .sb-management-cell>button{display:block;width:100%;max-width:100%}
 .sb-table .sb-management-cell>button+button{margin-top:8px}
}
@media(min-width:601px) and (min-height:501px),(min-width:901px){
 .sidebar{min-height:0}.sidebar .nav{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:3px}
 .sidebar .nav,.sidebar .nav-group{min-width:0;max-width:100%}
 .sidebar .nav button{width:100%;min-width:0;max-width:100%}
 .sidebar .nav .navtext{display:block;max-width:100%;white-space:normal;overflow:visible;overflow-wrap:break-word;text-overflow:clip;line-height:1.4}
 .layout.plan-compact{grid-template-columns:94px minmax(0,1fr)}
 .plan-compact .sidebar .nav .navtext{font-size:12px}
 .plan-compact .sidebar .nav button{min-height:60px;padding:8px 3px}
}
@media(min-width:601px) and (max-width:1150px) and (min-height:501px),(min-width:901px) and (max-width:1150px){
 .layout:not(.plan-compact){grid-template-columns:184px minmax(0,1fr)}
 .layout:not(.plan-compact) .sidebar{padding:20px 10px 14px}
 .layout:not(.plan-compact) .sidebar .nav button{flex-direction:row;justify-content:flex-start;min-height:48px;gap:10px;padding:10px}
 .layout:not(.plan-compact) .sidebar .nav .navtext{font-size:14px;text-align:left}
 .layout:not(.plan-compact) .sidebar .brand{padding:0 10px 22px}
}
@media(min-width:601px) and (max-width:800px) and (min-height:501px){
 .layout:not(.plan-compact){grid-template-columns:150px minmax(0,1fr)}
 .layout:not(.plan-compact) .sidebar .nav button{gap:8px;padding:9px 6px}
}
@media(max-width:860px){
 .pagehead{flex-wrap:wrap}.library-actions{justify-content:flex-start;flex:1 1 100%}
 .list-content{padding:16px}.library-head{flex-wrap:wrap}.library-search{width:100%;max-width:none}
 .site-sheet-heading>div{flex-basis:55%}.site-sheet-host{padding:10px!important}
 .site-sheet{height:calc(100dvh - 155px - var(--safe-bottom,0px));min-height:470px}
 .site-sheet-info{font-size:13px}.site-sheet-viewport{min-height:210px}
}
@media(max-width:480px){
 .pagehead h1{font-size:23px}.pagehead{padding:22px 16px 8px}
 .list-content button{min-height:44px}.sb-management-cell button{min-height:42px}
 .topright{gap:6px}.account{padding:5px}.modalbody{padding:18px}
 .site-sheet footer label{flex-wrap:wrap}.site-sheet footer select{max-width:100%;width:100%}
}
/* Keep the compact drawing action menu legible on tablet layouts. */
.drawing-library .sb-table th:nth-child(2){width:18%}
.drawing-library .sb-table th:last-child{width:18%}
.sb-row-menu>summary{white-space:nowrap;overflow-wrap:normal;word-break:normal;min-inline-size:max-content;gap:4px;padding:7px 8px}
.sb-table .sb-row-menu{flex:0 0 auto;min-inline-size:max-content}

/* Readable secondary text keeps the existing navy and slate palette. */
:root{--muted:#526778;--text-secondary:#526778}
.sb-breadcrumb,.sb-heading h1 small,.sb-table th,.sb-row-note,.sb-description-cell,.sb-subtle,.sb-muted,.sb-dialog p,.sb-table td::before{color:var(--text-secondary)}
.sb-row-note,.sb-muted,.sb-table .sb-row-note{font-size:14px}
.sb-table th,.sb-table td::before{font-size:13px}
.sb-table .sb-management-cell>button,.sb-table .sb-row-actions>button{overflow-wrap:normal;word-break:normal;hyphens:auto}
.site-home-filter,.site-home-description,.site-home-counts,.site-project-title>small,.site-project-sheets,.site-project-label,.site-no-drawings,.site-home-manage button{color:var(--text-secondary)}
.site-home-description,.site-home-counts{font-size:14px}
.account-setting-grid small,.account-settings-foot,.settings-identity p{color:var(--text-secondary);font-size:14px}
.page-description{font-size:14px;line-height:1.6;margin-bottom:18px}
.muted,.panelhead .sub,.detailrows dt,.approval small,.timeline-item small,.photocard small,.metricbox .caption,.record-editor-actions>small{color:var(--text-secondary)}
.field label,.panelhead .sub,.detailrows,.approval small,.timeline-item small,.metricbox .caption,.record-editor-actions>small{font-size:14px}
.pill{color:#526071;font-size:12px}
.pill.green{color:#236650}.pill.orange{color:#8c5319}
.record-kind.kind-conduit{color:#8b4846}.record-kind.kind-cable{color:#3c5f9c}.record-kind.kind-asset{color:#326b50}
.record-table{font-size:14px}.record-table td small{color:var(--text-secondary);font-size:13px}
.record-table .record-link{font-size:15px}.record-table .record-kind{font-size:12px}
.record-list-tools #resultcount{font-size:14px;color:var(--text-secondary)}
.record-summary .stat span{color:var(--text-secondary);font-size:14px}
.record-summary .stat[aria-pressed=true]{background:#edf3ff;border-color:#7394d4;box-shadow:inset 0 0 0 1px #7394d4}
.record-summary .stat[aria-pressed=true] span{color:#274e92}
.record-tablewrap{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}

/* Keep keyboard focus visible in the published navy/blue interface. */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #315eea;outline-offset:3px}
.sidebar .nav button:focus-visible{outline-color:#84a7ff;outline-offset:-3px}
.sb-row-menu>summary:focus-visible,.site-home summary:focus-visible,.site-home button:focus-visible{outline:3px solid #315eea;outline-offset:3px}

/* People and access decisions must remain readable in the management view. */
.org-heading p,.org-eyebrow,.org-section-title>span,.org-company span,.org-members-heading p,.org-help,.org-user-identity>p,.org-user-meta,.org-assignments>strong,.org-unassigned,.org-empty,.org-access-group>strong,.org-assignments li>small,.org-effective,.org-project-picker label>span>small,.org-site-summary>span,.org-staff-card dt,.org-team-role>strong,.org-team-member-row small{color:var(--text-secondary)}
.org-heading p,.org-company span,.org-members-heading p,.org-help,.org-user-identity>p,.org-assignments li,.org-unassigned,.org-empty,.org-editor form>label,.org-form-grid>label,.org-switches label,.org-project-picker label,.org-team-role,.org-team-member-row strong{font-size:14px}
.org-user-meta,.org-assignments>strong,.org-access-group>strong,.org-assignments li>small,.org-effective,.org-project-picker label>span>small,.org-site-summary>span,.org-staff-card dt,.org-staff-card dd>small,.org-team-role>strong,.org-team-role li>small,.org-team-member-row small{font-size:13px;line-height:1.5}
.org-eyebrow,.org-badge{font-size:12px}.org-badge{color:#526778}.org-badge.is-active{color:#346848}.org-badge.is-inactive{color:#87533e}
.org-admin .org-tabs>button{font-size:14px;color:var(--text-secondary)}
.org-admin .org-user-actions button,.org-company-actions>button,.org-team-card>header>button{font-size:14px;min-height:44px}
.org-team-role{grid-template-columns:90px minmax(0,1fr)}
.org-admin .org-team-member-row select{font-size:14px}

/* The whole photo is the preview target; only the remove action floats. */
.photos .photocard>button.photo-preview{position:static;inset:auto;display:block;width:100%;height:auto;min-height:44px;max-width:100%;padding:0;border:0;border-radius:8px;overflow:hidden;background:#edf2f8;box-shadow:none}
.photos .photocard>button.photo-preview img{display:block;margin:0}
.photos .photocard>button.photo-preview:focus-visible,.gallery .photo-preview:focus-visible{outline:3px solid #315eea;outline-offset:-4px}
.photos .photocard>button[data-action=remove-photo]{z-index:1}

/* A stable location line survives the compact phone editing layout. */
.drawing-location{display:flex;align-items:center;flex-wrap:wrap;gap:4px 16px;padding:7px 12px;background:#f7f9fc;border-bottom:1px solid #dfe7ef;color:var(--text-secondary);font-size:13px;line-height:1.5;min-width:0}
.drawing-location-path{display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-width:0;overflow-wrap:anywhere}
.drawing-location-path button{padding:5px 7px;min-height:36px;font-size:13px;background:transparent;border-color:transparent}
.drawing-location-path>button{min-width:0;max-width:100%;justify-content:flex-start;text-align:left}
.drawing-location-path>button .icon{transform:rotate(180deg);width:16px;height:16px}
.drawing-location-path>button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.drawing-location-sheet{overflow-wrap:anywhere;font-weight:650;color:#254b68}
.drawing-location-layer{padding:2px 7px;border-left:1px solid #c6d3de;color:#385b78;white-space:nowrap;font-weight:600}
.drawing-location-project{display:flex;align-items:baseline;gap:6px;margin-left:auto;min-width:0;overflow-wrap:anywhere;color:#254b68;font-weight:600}
.drawing-location-project>span{color:var(--text-secondary);font-weight:400;flex-shrink:0}
.field-drawing-bar .project-display-label{min-width:0;margin-left:auto}
.field-drawing-bar .project-display-label>span{flex-shrink:0}
.field-drawing-bar .project-display-label #project-display{min-width:0;margin-left:0}
.toolbar .style-tools label[data-width-label]::before{content:attr(data-width-label);font-size:12px}

@media(max-width:600px){
 .sidebar .nav button{color:#526778!important}
 .sidebar .nav .navtext,.plan-compact .sidebar .nav .navtext{font-size:12px;line-height:1.2;max-width:100%;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:normal;word-break:normal}
 .sidebar .nav button,.plan-compact .sidebar .nav button{gap:2px;padding:3px}
 .field label,.plan-compact .rightpanel .panelhead .sub,.record-editor-actions>small{font-size:14px}
 .record-list-tools .record-kind-tabs{margin-bottom:10px;gap:0;min-height:44px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;align-items:stretch}
 .record-list-tools .record-kind-tabs::-webkit-scrollbar{display:none}
 .record-list-tools .record-kind-tabs button{font-size:13px;padding-inline:10px;min-width:0;min-height:44px;flex:1 1 0;white-space:nowrap}
 .record-list-tools .filterbar{gap:8px;margin-bottom:14px}
 .record-list-tools #resultcount{margin-left:0;flex-basis:100%}
 .org-user{grid-template-columns:minmax(0,1fr);gap:14px}
 .org-user-actions{grid-row:auto;grid-column:auto;justify-self:start}
 .org-assignments{grid-row:auto;grid-column:auto}
 .org-team-role{grid-template-columns:85px minmax(0,1fr)}
 .drawing-location{padding:5px 9px;gap:2px 8px;font-size:12px}
 .drawing-location-path{flex:1 1 100%}
 .drawing-location-project{margin-left:0;font-size:12px}
 .drawing-location-path button{min-height:36px;font-size:12px;padding:5px 3px}
 .drawing-location-path>button{flex-basis:100%}
 .drawing-location-sheet{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .field-drawing-bar .project-display-label{flex:1 1 160px}
 .field-drawing-bar .project-display-label #project-display{max-width:100%;width:100%;flex:1}
}

@media(max-width:600px),(max-width:900px) and (max-height:500px){
 /* The current drawing, project and layer stay in the location line while
    editing. The canvas and precision guide keep their existing coordinate box. */
 .plan-compact .workspace:not(.phone-edit-draw):not(.phone-edit-details) .drawing-location-sheet,
 .plan-compact .workspace:not(.phone-edit-draw):not(.phone-edit-details) .drawing-location-layer{display:none}
 .plan-compact .phone-edit-draw .drawtop,.plan-compact .phone-edit-details .drawtop,
 .plan-compact .phone-edit-draw .field-drawing-bar,.plan-compact .phone-edit-details .field-drawing-bar{display:none}
 .plan-compact .phone-edit-draw .editbar{font-size:12px;padding:5px 8px;gap:6px}
 .plan-compact .phone-edit-draw .editbar #edit-instruction{flex-basis:180px;line-height:1.4}
 .plan-compact .phone-edit-draw .editbar>button{min-height:44px;padding-inline:8px}
 .plan-compact .phone-edit-draw .phone-editor-switch{padding:4px 8px 6px}
 .plan-compact .phone-edit-draw .phone-editor-switch button{font-size:14px;min-height:44px}
 .plan-compact .phone-edit-draw .drawing-nav{top:100px}
 .plan-compact .phone-edit-draw .drawfoot{font-size:12px}
 .plan-compact .phone-edit-draw .toolbar>[data-action=asset-library]{display:none}
 .plan-compact .phone-edit-draw .toolbar [data-action=new-interfloor],
 .plan-compact .phone-edit-details .toolbar [data-action=new-interfloor]{display:none}
 .plan-compact .phone-advanced-tools button{min-height:44px}
}
