/* Personal density: real layout dimensions, never page zoom or transforms.
   Only the desktop portal is compacted. Print, phone/tablet and tool plots keep
   their own sizing. Palette, focus outlines and business state are untouched. */
.portal-density-choice{display:grid;gap:8px;font-size:14px}
.portal-density-choice select{box-sizing:border-box;min-width:0;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--suite-line);border-radius:10px;background:var(--suite-surface);color:var(--suite-text);font:inherit}
@media screen and (min-width:1025px) {
  :root[data-portal-density=compact] body #appView{font-size:13px}
  :root[data-portal-density=compact][data-portal-sidebar=expanded] body #appView{grid-template-columns:184px minmax(0,1fr)}
  :root[data-portal-density=compact] body #appView>.sidebar{width:184px;padding:16px 10px 12px;gap:12px}
  :root[data-portal-density=compact] body #appView>.sidebar .brand{min-height:42px}
  :root[data-portal-density=compact] body #appView>.sidebar .brand-mark.custom-logo{width:148px;height:42px}
  :root[data-portal-density=compact] body #appView>.sidebar .main-nav{gap:4px;margin-top:0}
  :root[data-portal-density=compact] body #appView>.sidebar .main-nav a{min-height:36px;padding:7px 9px;font-size:12.5px;gap:8px}
  :root[data-portal-density=compact] body #appView>.sidebar .main-nav a>span{width:22px;flex-basis:22px}
  :root[data-portal-density=compact] body #appView>.sidebar .main-nav svg{width:18px;height:18px}
  :root[data-portal-density=compact] body #appView .sidebar-settings{min-height:34px;padding:7px 9px;font-size:12px}
  :root[data-portal-density=compact] body #appView .sidebar-account{font-size:12px}
  :root[data-portal-density=compact] body #appView .sidebar-account small{font-size:10.5px}
  :root[data-portal-density=compact]:not(.energy-view-active) body #appView>.workspace{
    display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:start;
    align-items:start;column-gap:12px;padding:12px 16px 32px;min-width:0;
  }
  :root[data-portal-density=compact]:not(.energy-view-active) body #appView>.workspace>*{grid-column:1/-1;min-width:0}
  :root[data-portal-density=compact]:not(.energy-view-active) body #appView>.workspace>.portal-workspace-bar{grid-area:1/1;margin:0 0 10px;justify-content:flex-start;flex-wrap:wrap;gap:8px}
  :root[data-portal-density=compact]:not(.energy-view-active) body #appView>.workspace>.personal-notices-bar{grid-area:1/2;align-self:start;margin:0 0 10px;max-width:220px}
  :root[data-portal-density=compact] body #appView :is(.portal-nav-toggle,.portal-bar-settings,#personalNotices){min-height:34px;padding:6px 10px;font-size:12px;line-height:1.4;border-radius:10px}
  :root[data-portal-density=compact] body #appView :is(.portal-nav-toggle,.portal-bar-settings) svg{width:17px;height:17px}
  :root[data-portal-density=compact] body #appView .portal-view:not(.energy-statistics-view) :is(.primary-button,.secondary-button){min-height:34px;padding:7px 10px;font-size:12px;line-height:1.4}
  :root[data-portal-density=compact] body #appView .tools-grid .module-card{padding:16px;gap:12px}
  :root[data-portal-density=compact] body #plannerView{padding-top:2px}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-heading{grid-template-columns:minmax(180px,1fr) minmax(180px,230px) auto;gap:10px 14px;margin-bottom:10px;align-items:center}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-heading h2{font-size:24px;line-height:1.2;margin:3px 0}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-heading p{font-size:12px;line-height:1.4}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-heading .eyebrow{font-size:10px;letter-spacing:.1em}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-heading-actions{display:flex;grid-column:auto;flex-wrap:wrap;justify-content:flex-end;gap:6px;min-width:0;max-width:640px}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-heading-actions>button{width:auto;white-space:normal}
  :root[data-portal-density=compact] body #plannerView .planner-tenant-switcher{gap:4px}
  :root[data-portal-density=compact] body #plannerView .planner-tenant-select-shell{min-height:36px;border-radius:10px}
  :root[data-portal-density=compact] body #plannerView .planner-tenant-select-shell select{height:34px;font-size:12px;padding-left:44px}
  :root[data-portal-density=compact] body #plannerView .planner-tenant-select-shell>i{width:28px;height:28px;left:5px;border-radius:8px;font-size:10px}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-toolbar{padding:8px 10px;gap:8px 12px;flex-wrap:wrap;align-items:center;border-radius:14px}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-toolbar>label{flex:1 1 220px;min-width:0;gap:4px}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-toolbar>div{flex:0 1 auto;flex-wrap:wrap;max-width:100%;padding:2px}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-toolbar button{min-height:32px;padding:0 10px;font-size:12px}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-toolbar input{min-height:34px;padding:0 10px;font-size:13px}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-toolbar label span{font-size:11px}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-status{padding:6px 3px;font-size:11px;line-height:1.4}
  :root[data-portal-density=compact] body #plannerView .p21-workspace{grid-template-columns:136px minmax(0,1fr);gap:10px}
  :root[data-portal-density=compact] body #plannerDepartmentNav{padding:8px;gap:4px;border-radius:12px}
  :root[data-portal-density=compact] body #plannerDepartmentNav h3{font-size:10px;padding:3px 4px;margin:0 0 3px}
  :root[data-portal-density=compact] body #plannerDepartmentNav button{min-height:32px;padding:6px;font-size:11.5px;border-radius:8px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard:not(.is-list):not(.is-dashboard):not(.is-schedule){grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:10px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard:not(.is-dashboard):not(.is-schedule):has(>.tenant-planner-column:only-child){grid-template-columns:minmax(0,1fr)}
  :root[data-portal-density=compact] body #plannerView #plannerBoard:not(.is-mini):not(.is-dashboard):not(.is-schedule)>.tenant-planner-column:only-child>.tenant-planner-cards,
  :root[data-portal-density=compact] body #plannerView #plannerBoard.is-list .tenant-planner-cards{grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr));align-items:start}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .tenant-planner-column{border-radius:12px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .tenant-planner-column>header{min-height:38px;padding:9px 10px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .tenant-planner-column>header h3{font-size:12px;line-height:1.35}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .tenant-planner-column>header span{min-width:21px;height:21px;font-size:10px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .p21-column-sort{gap:4px;margin:6px 9px 7px;padding:0;font-size:10.5px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .p21-column-sort select{min-height:32px;padding:5px 7px;font-size:12px;border-radius:8px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .p21-bucket-add{min-height:30px;margin:0 9px 8px;padding:6px 8px;font-size:12px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .tenant-planner-cards{gap:8px;padding:0 8px 8px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .tenant-planner-card:not(.planner-mini-card){min-height:0;gap:6px;padding:10px;border-radius:10px;font-size:12px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .tenant-planner-card>strong{min-height:0;font-size:13px;line-height:1.4}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .planner-card-top>code{font-size:13px;line-height:1.2;padding:5px 7px;border-radius:7px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .planner-card-copy{min-height:26px;padding:4px 6px;font-size:10.5px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard :is(.planner-card-activity,.planner-card-roe){min-height:0;font-size:12px;line-height:1.4}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .tenant-planner-card>small{font-size:11px;line-height:1.4}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .tenant-planner-card>div>span{font-size:10px;padding:3px 5px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .planner-card-avatars b{width:23px;height:23px;font-size:9px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .p21-workflow-actions{margin-top:2px;gap:6px;flex-wrap:wrap}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .p21-workflow-actions button{min-height:28px;padding:4px 7px;font-size:11px}
  :root[data-portal-density=compact] body #plannerView #plannerBoard .planner-column-empty{padding:16px 8px;font-size:11px}
}
@media screen and (min-width:1025px) and (max-width:1279px){
  :root[data-portal-density=compact] body #plannerView .tenant-planner-heading{grid-template-columns:minmax(180px,1fr) minmax(180px,230px)}
  :root[data-portal-density=compact] body #plannerView .tenant-planner-heading-actions{grid-column:1/-1;max-width:none}
}
/* The user's display choice never reduces finger targets on a touch laptop. */
@media screen and (min-width:1025px) and (pointer:coarse){
  :root[data-portal-density=compact] body #appView :is(button,select,input:not([type=checkbox]):not([type=radio]),.main-nav a){min-height:44px!important}
}
