/* Branded public planner: retain original workspace and tool functionality. */
html,body{height:100%}
.company-header{height:116px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:14px 28px;background:linear-gradient(110deg,#fff 0%,#f5faf6 65%,#e8f2e7 100%);border-bottom:2px solid #dbe8dc;color:#063d2c}
.company-identity{display:flex;align-items:center;gap:14px;min-width:0}.company-leaf{font-size:66px;line-height:1;color:#64a91b}.company-identity strong{font:700 clamp(22px,2.3vw,38px) Georgia,serif;white-space:nowrap}.company-identity em{font-style:normal;color:#6bb41d}.company-identity small{display:block;text-align:center;letter-spacing:3px;font-size:11px;margin-top:5px}
.company-contact{display:grid;grid-template-columns:auto auto;gap:12px 24px;font-size:13px;font-weight:600}.company-contact a{color:#073c2d;text-decoration:none}.company-contact a:last-child{grid-column:1/-1}.company-contact a:hover{text-decoration:underline}
.about-company{background:#073d2d;color:white;border:0;border-radius:8px;padding:13px 24px;white-space:nowrap}.about-company:hover{background:#0d6145}
.planner-hidden-hooks{display:none!important}
.app{height:calc(100% - 116px)}
.tools{background:#fff}.tools #newBtn{background:#073d2d;color:#fff;border-color:#073d2d}.tools #previewBtn{background:#77bf17;color:#17320a;border-color:#77bf17}.tools #groundViewBtn{background:#fff}
.company-about-dialog{border:0;border-radius:14px;max-width:480px;padding:26px;box-shadow:0 15px 70px #0005}.company-about-dialog::backdrop{background:#0008}
@media(max-width:1250px){.company-header{gap:12px;padding:10px 16px}.company-contact{grid-template-columns:1fr;gap:4px;font-size:11px}.company-contact a:last-child{grid-column:auto}.company-identity strong{font-size:24px}}

/* Company-supplied image: keep text readable over busy photographs. */
.company-header.has-company-background{background-image:url('../adm/index.php?branding_image=1');background-size:cover;background-position:center;background-repeat:no-repeat}
/* Streamlined compact toolbar without changing any tool IDs or behavior. */
.tools{padding:9px 12px!important;gap:7px!important}
.tools button{padding:7px 12px!important;min-height:34px!important;font-size:13px!important;line-height:1.2!important;border-radius:7px!important}
.tools .toolgroup{gap:6px!important;margin:0!important}
.tools .zoom button{min-height:28px!important;padding:3px 8px!important}
@media(max-width:800px){.company-header{height:auto;min-height:116px;flex-wrap:wrap}.app{height:calc(100% - 116px)}}

/* Position and zoom the background without changing uploaded pixels or colors. */
.company-header.has-company-background{background-image:none!important;position:relative;isolation:isolate}
.company-header.has-company-background::before{content:"";position:absolute;inset:0;z-index:-1;background-image:url('../adm/index.php?branding_image=1');background-size:cover;background-position:var(--header-x,50%) var(--header-y,50%);background-repeat:no-repeat;transform:scale(var(--header-zoom,1));transform-origin:center;pointer-events:none}
.company-header.has-company-background{overflow:hidden}

/* Uploaded company logo: fixed rectangular region, at most 25% of the header. */
.company-header .company-uploaded-logo[hidden],.company-header .company-leaf[hidden]{display:none!important}
.company-header .company-identity.has-uploaded-logo{flex:0 0 25%;width:25%;max-width:25%;height:100%;min-width:0;justify-content:flex-start;padding:10px 14px;box-sizing:border-box}
.company-header .company-identity.has-uploaded-logo>div{display:none!important}
.company-header .company-uploaded-logo{display:block;width:100%;height:100%;max-height:96px;object-fit:contain;object-position:left center;position:relative;z-index:2}
.company-header.has-company-background .company-identity.has-uploaded-logo::before{inset:-3px -10px;background:rgba(255,255,255,.93);border-radius:0;-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 79%,transparent),linear-gradient(to bottom,transparent,#000 23%,#000 77%,transparent);mask-image:linear-gradient(to right,transparent,#000 12%,#000 79%,transparent),linear-gradient(to bottom,transparent,#000 23%,#000 77%,transparent)}
.company-header .company-contact{display:flex;flex-direction:column;gap:6px;margin-left:auto}
.company-header .company-contact a:last-child{grid-column:auto}
.company-header .about-company{padding:9px 15px;font-size:13px}
@media(max-width:760px){.company-header .company-identity.has-uploaded-logo{flex-basis:25%;width:25%;max-width:25%;min-height:72px}.company-header .company-uploaded-logo{max-height:80px}}

/* Restore soft rectangular feather behind uploaded logo on public designer only.
   Admin's true-size upload preview is deliberately unaffected. */
.company-header.has-company-background .company-identity.has-uploaded-logo{
  position:relative;
  isolation:isolate;
  background:transparent!important;
}
.company-header.has-company-background .company-identity.has-uploaded-logo::before{
  content:""!important;
  display:block!important;
  position:absolute;
  inset:5px 8px;
  z-index:0;
  border-radius:8px;
  background:rgba(255,255,255,.90)!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
  filter:blur(15px);
  pointer-events:none;
}
.company-header.has-company-background .company-identity.has-uploaded-logo .company-uploaded-logo{
  position:relative;
  z-index:1;
}

/* 2026-10-22: Strong, soft-edged rectangular fade matching approved banner.
   Important: fade the uploaded image itself; many uploaded logos include an
   opaque white rectangle that cannot be softened by a backdrop alone. */
.company-header.has-company-background .company-identity.has-uploaded-logo{
  overflow:visible!important;
  isolation:isolate;
}
.company-header.has-company-background .company-identity.has-uploaded-logo::before{
  content:""!important;
  display:block!important;
  position:absolute;
  inset:0 -12px;
  z-index:0;
  border:0!important;
  border-radius:0!important;
  background:rgba(255,255,255,.97)!important;
  filter:blur(19px)!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
  pointer-events:none;
}
/* Two intersecting linear masks produce a feathered RECTANGLE (not an oval).
   This removes hard white edges already baked into non-transparent PNG/JPG logos. */
.company-header.has-company-background .company-uploaded-logo{
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 12%,#000 85%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 24%,#000 76%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right,transparent 0%,#000 12%,#000 85%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 24%,#000 76%,transparent 100%);
  mask-composite:intersect;
}
/* Separate bright halo for the three stacked contact lines. */
.company-header.has-company-background .company-contact{
  position:relative!important;
  isolation:isolate;
  background:transparent!important;
}
.company-header.has-company-background .company-contact::before{
  content:""!important;
  display:block!important;
  position:absolute;
  inset:-9px -19px;
  z-index:-1;
  background:rgba(255,255,255,.98)!important;
  border-radius:0!important;
  filter:blur(22px)!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
  pointer-events:none;
}
.company-header.has-company-background .company-contact a{position:relative;z-index:1}
