:root{font-family:Inter,system-ui,sans-serif;color:#f7f8fa;background:#11151b}*{box-sizing:border-box}body{margin:0;min-width:0}header{padding:18px clamp(16px,4vw,56px);border-bottom:1px solid #343d47;display:flex;justify-content:space-between;align-items:center;gap:12px}header strong{font-size:19px}.brand{color:#e87516}.light{color:#b5bdc6;font-weight:400}nav{display:flex;align-items:center;gap:14px}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}main{padding:38px 0;width:min(var(--desktop-width,80%),calc(100% - 32px));margin:auto}h1{font-size:clamp(28px,3.8vw,44px);margin:0 0 10px}p{color:#b5bdc6;line-height:1.5}button{background:#e87516;color:#11151b;border:0;border-radius:10px;padding:10px 15px;font:700 14px inherit;cursor:pointer}button.secondary{background:#38424e;color:#fff}button:hover{filter:brightness(1.13)}button:focus-visible,a:focus-visible{outline:2px solid #ffb066;outline-offset:3px}.headline{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-bottom:24px}.headline-actions{display:flex;flex-wrap:wrap;gap:9px}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:18px 0 28px}.toolbar input{max-width:430px}input,select,textarea{width:100%;padding:11px;background:#242b34;color:#fff;border:1px solid #596674;border-radius:9px;font:inherit}input[type=color]{height:45px;padding:4px}input[type=range]{padding:0}label{display:grid;gap:7px;margin:12px 0;font-weight:600;font-size:14px}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.settings{padding:12px 18px;border:1px solid #3a434e;border-radius:14px;margin-bottom:18px}.settings label{max-width:400px}dialog{width:min(520px,calc(100vw - 24px));max-height:90vh;overflow:auto;background:#242b34;border:1px solid #596674;color:#fff;border-radius:17px;padding:24px}dialog::backdrop{background:#000b}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}fieldset{border:1px solid #596674;border-radius:10px;display:flex;gap:12px;flex-wrap:wrap}.icon-preview-row{display:flex;align-items:center;justify-content:space-between}.ico{width:74px;height:74px;flex:0 0 74px;display:grid;place-items:center;background:#343d47;border-radius:15px;font-size:29px;font-weight:750;overflow:hidden}.ico img{width:100%;height:100%;object-fit:contain;padding:7px}#login{max-width:420px;margin:7vh auto}#login button{width:100%}#notice,#loginError{min-height:22px;color:#ffb066}.hub-section{margin:0 0 28px;padding:22px;border:1px solid #3b4652;border-radius:19px;min-width:0}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-bottom:16px}.section-head h2{margin:0 0 4px;font-size:clamp(20px,2.4vw,28px)}.section-head p{margin:0}.section-controls{display:flex;gap:7px;flex-wrap:wrap}.section-controls button,.tile-controls button{padding:5px 9px;font-size:12px}.section-grid{display:grid;grid-template-columns:repeat(var(--columns,6),minmax(0,var(--tile-size,156px)));justify-content:start;gap:12px;min-width:0}.tile{min-width:0;position:relative;grid-column:span 1;aspect-ratio:1/1;border:1px solid #48515d;border-radius:16px;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;cursor:pointer;overflow:hidden}.tile.wide{grid-column:span 2;aspect-ratio:auto;min-height:var(--tile-size,156px);flex-direction:row;justify-content:flex-start;text-align:left;gap:16px;padding:16px}.tile .copy{min-width:0;max-width:100%;display:flex;flex-direction:column;gap:4px;overflow:hidden}.tile .name{font-size:clamp(12px,1.15vw,17px);font-weight:750;overflow-wrap:anywhere}.tile .category{color:#c2cad3;font-size:11px}.tile .description{color:#d4d9df;font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.tile .ico{width:min(68px,42%);height:auto;aspect-ratio:1/1;flex:0 0 auto;font-size:clamp(18px,2vw,30px)}.tile.wide .ico{width:clamp(80px,32%,116px);max-height:116px}.tile.span-3 .ico{width:clamp(110px,36%,160px);max-height:160px}.tile .ico{overflow:hidden;overflow-wrap:anywhere;word-break:break-word;line-height:1.06;padding:6px;min-width:0}.tile .ico img{padding:4px}.tile.span-3{grid-column:span 3}.tile-controls{position:absolute;top:5px;right:5px;display:flex;gap:4px;z-index:2}.tile-controls button{background:#39434d;color:#fff}.tile[draggable=true]{cursor:grab}.tile.dragging{opacity:.4}.slot{aspect-ratio:1/1;border:1px dashed #4b5662;border-radius:14px;min-width:0;pointer-events:auto}.slot.target{background:#e8751633;border-color:#e87516}.section-grid.editing .tile{outline:1px solid #e8751644}.private-tag{font-size:11px;color:#ffb066}.empty{color:#aab3bf;font-size:13px;padding:16px}#iconEmojiGroup[hidden],#iconShortGroup[hidden],#iconImageGroup[hidden],[hidden]{display:none!important}@media(max-width:899px){main{width:calc(100% - 32px)}}@media(max-width:720px){header{padding:16px}main{padding:26px 12px}.hub-section{padding:13px;margin-bottom:16px}.section-grid{gap:8px}.tile{padding:8px;gap:6px}.tile.wide{padding:10px;gap:9px}.tile .ico{width:clamp(36px,12vw,58px);font-size:21px}.tile.wide .ico{width:clamp(46px,19vw,94px)}.tile.span-3 .ico{width:clamp(60px,25vw,116px)}.tile .name{font-size:12px}.tile .description{font-size:10px;-webkit-line-clamp:2}.tile .category{display:none}.tile:not(.wide) .description{display:none}.tile-controls{top:2px;right:2px}.tile-controls button{padding:3px 5px}.headline-actions button{font-size:12px;padding:9px}.section-head h2{font-size:20px}}@media(max-width:380px){.tile.wide .description{display:none}.tile .ico{width:34px}.tile.wide .ico{width:42px}}

@media(max-width:599px){main{width:calc(100% - 24px)}.section-grid{grid-template-columns:repeat(var(--columns,2),minmax(0,1fr))}.tile{aspect-ratio:1/1}.tile.wide{min-height:0;aspect-ratio:auto}.tile .description{display:none!important}.tile .ico{max-width:100%}.tile.wide .ico{flex-shrink:1}.tile .copy{max-width:100%}.tile .name{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}}


/* v0.6.4: fixed-height tiles, responsive fixed-width columns, 70% desktop hub */
main{width:calc(100% - 32px);max-width:none;margin-inline:auto}
#sections,#publicSections{width:70%;margin-inline:auto;min-width:0}
.section-grid{display:grid;grid-template-columns:repeat(auto-fill,188px);grid-auto-flow:row dense;grid-auto-rows:188px;gap:12px;justify-content:space-between;min-width:0}
.tile,.tile.wide,.tile.span-3{height:188px;min-height:188px;max-height:188px;aspect-ratio:auto;grid-row:span 1;min-width:0;overflow:hidden}
.tile{flex-direction:column;justify-content:center;text-align:center;padding:12px}
.tile.wide{flex-direction:row;justify-content:flex-start;text-align:left;padding:16px;gap:16px}
.tile .ico{width:78px;height:78px;max-width:100%;max-height:78px;flex:0 0 auto;aspect-ratio:1/1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:normal;overflow-wrap:normal;display:flex;align-items:center;justify-content:center;line-height:1.1}
.tile.wide .ico{width:112px;height:112px;max-height:112px}
.tile.span-3 .ico{width:150px;height:150px;max-height:150px}
.tile .copy{min-width:0;overflow:hidden}
.tile .name{overflow-wrap:normal;word-break:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tile .description{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.tile .category{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tile.target,.add-tile.target{outline:2px solid #e87516;outline-offset:-3px}
.add-tile{width:188px;height:188px;min-height:188px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:1px dashed #687380;background:transparent;color:#b5bdc6;border-radius:16px;cursor:pointer;font-size:13px;font-weight:600;text-align:center}
.add-tile span:first-child{font-size:35px;line-height:1}
.add-tile:hover{background:#e875161a;color:#fff;border-color:#e87516}
@media(max-width:899px){#sections,#publicSections{width:100%}}
@media(max-width:599px){
 main{width:calc(100% - 24px);padding:26px 0}
 .hub-section{padding:12px}
 .section-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:144px;gap:8px;justify-content:stretch}
 .tile,.tile.wide,.tile.span-3{height:144px;min-height:144px;max-height:144px;padding:8px;gap:6px}
 .tile.wide{grid-column:span 2!important;flex-direction:row}
 .tile.span-3{grid-column:span 2!important}
 .tile .ico{width:56px;height:56px;max-height:56px}
 .tile.wide .ico{width:82px;height:82px;max-height:82px}
 .tile.span-3 .ico{width:96px;height:96px;max-height:96px}
 .tile .description,.tile .category{display:none!important}
 .add-tile{width:auto;height:144px;min-height:144px}
}
@media(min-width:600px) and (max-width:899px){.section-grid{grid-template-columns:repeat(auto-fill,160px);grid-auto-rows:160px;justify-content:space-between}.tile,.tile.wide,.tile.span-3{height:160px;min-height:160px;max-height:160px}.add-tile{width:160px;height:160px;min-height:160px}}

/* v0.6.5: shared 70%-wide layout; fixed-size cells and visible edit slots */
@media (min-width:900px){
 main{width:70%;max-width:none;margin-inline:auto;padding-inline:0}
 #sections,#publicSections{width:100%;margin-inline:0}
}
.section-grid{display:grid;grid-template-columns:repeat(var(--columns,1),188px);grid-auto-rows:188px;gap:12px;justify-content:space-between;position:relative;min-width:0}
.section-grid.editing .slot{background:transparent;border:1px dashed #46505e;border-radius:14px;min-width:0;min-height:0;padding:0;z-index:0}
.section-grid.editing .slot:hover{background:#e8751615}
.section-grid .tile{z-index:1}
.section-grid .add-tile{z-index:2}
.tile .ico{width:94px;height:94px;max-height:94px;flex-basis:auto}
.tile.wide .ico{width:124px;height:124px;max-height:124px}
.tile.span-3 .ico{width:154px;height:154px;max-height:154px}
.tile .ico img{padding:2px}
@media(max-width:899px){
 main{width:calc(100% - 32px);margin-inline:auto;padding-inline:0}
 #sections,#publicSections{width:100%}
 .section-grid{grid-template-columns:repeat(var(--columns,2),minmax(0,1fr));grid-auto-rows:144px;justify-content:stretch;gap:8px}
 .tile,.tile.wide,.tile.span-3{height:144px;min-height:144px;max-height:144px}
 .tile .ico{width:65px;height:65px;max-height:65px}
 .tile.wide .ico{width:94px;height:94px;max-height:94px}
 .tile.span-3 .ico{width:110px;height:110px;max-height:110px}
 .add-tile{height:144px;min-height:144px;width:auto}
}

/* v0.6.6: two-dimensional tiles; columns x rows, fixed-size desktop cells */
.section-grid .tile{height:100%;min-height:0;max-height:none;align-self:stretch;min-width:0;min-height:0}
.section-grid .tile.format-1x2,.section-grid .tile.format-2x2,.section-grid .tile.format-3x2{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);align-items:center;justify-items:stretch;gap:12px;text-align:left;padding:18px}
.tile.format-1x2 .ico,.tile.format-2x2 .ico,.tile.format-3x2 .ico{grid-column:1;grid-row:1;width:min(110px,100%);height:auto;aspect-ratio:1;max-height:140px}
.tile.format-1x2 .copy,.tile.format-2x2 .copy,.tile.format-3x2 .copy{grid-column:2;grid-row:1}
.tile.format-1x2 .description,.tile.format-2x2 .description,.tile.format-3x2 .description{grid-column:1/-1;grid-row:2;display:block;align-self:start;overflow:hidden;max-height:100%;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.tile.no-name:not(.format-1x2):not(.format-2x2):not(.format-3x2){justify-content:center;align-items:center}
.tile.no-name:not(.format-1x2):not(.format-2x2):not(.format-3x2) .copy{display:none}
.tile.no-name:not(.format-1x2):not(.format-2x2):not(.format-3x2) .ico{width:min(88%,160px);height:min(88%,160px);max-height:none}
.tile.wide.no-name:not(.format-2x2):not(.format-3x2) .ico{width:min(72%,170px);height:min(86%,170px)}
.tile.span-3.no-name:not(.format-3x2) .ico{width:min(70%,174px);height:min(86%,174px)}
.tile.no-name.format-1x2 .ico,.tile.no-name.format-2x2 .ico,.tile.no-name.format-3x2 .ico{grid-column:1/-1;justify-self:center;width:min(75%,220px);max-height:100%}
.tile.no-name.format-1x2 .copy,.tile.no-name.format-2x2 .copy,.tile.no-name.format-3x2 .copy{display:none}
.section-grid .slot{height:100%;aspect-ratio:auto}
@media(max-width:899px){.section-grid .tile{height:144px;min-height:144px;max-height:144px}.section-grid .tile.format-1x2,.section-grid .tile.format-2x2,.section-grid .tile.format-3x2{display:flex;flex-direction:row;gap:8px;padding:8px}.section-grid .tile.format-1x2 .description,.section-grid .tile.format-2x2 .description,.section-grid .tile.format-3x2 .description{display:none}.section-grid .tile.format-1x2 .ico,.section-grid .tile.format-2x2 .ico,.section-grid .tile.format-3x2 .ico{width:70px;height:70px}.section-grid .tile.no-name .ico{max-width:90%;max-height:90%}}

/* v0.6.8: independent abbreviation colors and full-size 2x2 icons */
.icon-color-setting{display:flex;align-items:end;gap:12px}.icon-color-setting label{flex:1}.icon-color-setting .reset-icon-color{margin-bottom:12px;white-space:nowrap}.icon-colors-note{font-size:12px;margin:0 0 12px}.icon-colors[hidden]{display:none!important}
@media(min-width:900px){
 .section-grid .tile.format-2x2{grid-template-columns:160px minmax(0,1fr);grid-template-rows:160px minmax(0,1fr);align-content:stretch}
 .section-grid .tile.format-2x2 .ico{grid-column:1;grid-row:1;width:160px;height:160px;max-height:none;max-width:100%;justify-self:start}
 .section-grid .tile.format-2x2 .copy{grid-column:2;grid-row:1}
 .section-grid .tile.format-2x2 .description{grid-column:1/-1;grid-row:2}
 .section-grid .tile.format-2x2.no-name .ico{grid-column:1;grid-row:1;justify-self:start;width:160px;height:160px;max-height:none}
}

/* v0.6.9: nested grid; section placement outside the app grid */
.outer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch;grid-auto-rows:minmax(110px,auto);position:relative}
.outer-grid>.hub-section{grid-column:var(--outer-col,1)/span var(--outer-span,2);grid-row:var(--outer-row,auto);margin:0;min-width:0;position:relative;z-index:1}
.outer-grid>.outer-slot{border:1px dashed #4b5662;border-radius:14px;min-height:110px;z-index:0;pointer-events:auto}
.outer-grid>.outer-slot.target{border-color:#e87516;background:#e8751626}
.outer-grid:not(.outer-editing)>.outer-slot{display:none}
.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.section-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.section-controls button{white-space:nowrap}
.section-drag-handle{cursor:grab}
.dragging-section{opacity:.45}
.advanced-icon-color{margin-bottom:12px;padding:8px 0}
.advanced-icon-color summary{cursor:pointer;font-size:13px;color:#aeb8c4}
.advanced-icon-color .icon-color-setting{margin-top:12px}
@media(max-width:899px){.outer-grid{grid-template-columns:minmax(0,1fr)}.outer-grid>.hub-section{grid-column:1!important;grid-row:auto!important}.outer-grid>.outer-slot{display:none}.section-controls{justify-content:flex-start}}

/* Neul-IT Hub 0.7.0 */
header{background:#11151bf0;position:relative;z-index:10}
.hub-nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.hub-nav a{font-size:13px;font-weight:600;color:#c5cdd6;transition:color .18s ease}
.hub-nav a:hover,.hub-nav a[aria-current="page"]{color:#e87516;text-decoration:none}
.outer-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:48px;gap:12px;align-items:stretch}
.outer-grid>.hub-section{grid-column:var(--outer-col,1)/span var(--outer-span,12);grid-row:var(--outer-row,auto)/span var(--outer-rows,2);margin:0;overflow:visible;min-width:0;align-self:stretch}
.outer-grid>.outer-slot{min-height:0}
.hub-section{box-shadow:0 6px 22px #00000012;transition:border-color .2s ease,box-shadow .2s ease}
.hub-section:hover{border-color:#56616d;box-shadow:0 10px 30px #00000024}
.section-head h2{font-size:clamp(18px,1.7vw,23px)}
.section-head h2:before{content:'';display:inline-block;width:3px;height:17px;border-radius:3px;background:#e87516;margin-right:10px;vertical-align:-2px}
.section-grid .tile{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease;will-change:transform}
.section-grid .tile:hover{transform:translateY(-2px);border-color:#e87516;box-shadow:0 10px 24px #00000040}
.section-grid .tile:active{transform:translateY(1px) scale(.992)}
.section-grid .tile.dragging{transform:scale(1.025);opacity:.6}
.section-resize{position:absolute;right:8px;bottom:7px;background:#39434d;color:#e87516;border:1px solid #66717c;padding:3px 8px;border-radius:7px;cursor:ew-resize;touch-action:none;z-index:4}
.section-resize:hover{background:#4a5663}
.website-page{padding-top:65px}.eyebrow{font-size:12px;letter-spacing:.16em;color:#e87516;font-weight:700}
.website-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:30px 0}
.website-choice{display:flex;flex-direction:column;gap:12px;background:#242b34;border:1px solid #46515e;border-radius:17px;padding:28px;transition:transform .18s,border-color .18s}
.website-choice:hover{transform:translateY(-3px);border-color:#e87516;text-decoration:none}
.website-choice strong{font-size:25px}.website-choice span:last-child{color:#b5bdc6;font-size:13px}
.website-icon{font-size:24px;color:#e87516}.back-link{color:#e87516}
@media(max-width:899px){.outer-grid{display:flex;flex-direction:column;gap:16px}.outer-grid>.hub-section{grid-column:auto!important;grid-row:auto!important}.section-resize{display:none}}
@media(max-width:600px){header{flex-wrap:wrap}.hub-nav{gap:13px}.website-choices{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.section-grid .tile,.hub-section,.website-choice,.hub-nav a{transition:none!important}.section-grid .tile:hover,.website-choice:hover{transform:none!important}}

/* v0.7.1 responsive section grid: each outer column = 224px, inner tile = 188px.
   Section padding is accounted for by 12px inner padding on desktop. */
html{scroll-behavior:auto;overflow-anchor:none}
body{min-height:100vh;display:flex;flex-direction:column}
body>main{flex:1}
header{min-height:86px;padding-block:22px}
.hub-nav{gap:22px}
.outer-grid{display:grid;grid-template-columns:repeat(var(--outer-columns,1),minmax(0,1fr));grid-auto-rows:auto;gap:12px;align-items:start;grid-auto-flow:row dense}
.outer-grid>.hub-section{grid-column:span var(--outer-span,1)!important;grid-row:auto!important;min-width:0;align-self:start;padding:12px;overflow:visible}
.outer-grid>.hub-section.target-section{border-color:#e87516;box-shadow:0 0 0 2px #e8751655}
.outer-grid>.outer-slot{display:none!important}
.outer-grid .section-grid{justify-content:start;gap:12px}
.section-grid .tile{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,filter .18s ease}
.section-grid .tile:hover{transform:translateY(-3px)!important;box-shadow:0 12px 28px #0009!important;border-color:#e87516!important;filter:brightness(1.1)}
.section-grid .tile:active{transform:translateY(1px) scale(.99)!important}
.section-grid .tile.format-1x1:not(.no-name) .ico{width:120px;height:120px;max-height:120px}
.section-grid .tile.format-2x1{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;gap:16px}
.section-grid .tile.format-2x1 .ico{width:160px;height:160px;max-height:160px;flex:0 0 160px}
.section-grid .tile.format-2x1 .copy{align-self:flex-start;margin-top:10px;min-width:0}
.section-grid .tile.format-2x1 .name{font-size:18px;white-space:normal}
.section-grid .tile.format-2x1 .description{display:-webkit-box!important;align-self:center;flex:1;min-width:0;-webkit-line-clamp:4;font-size:12px}
.section-grid .tile.format-2x1.no-name .copy{display:none}
.section-grid .tile.format-2x1.no-name .ico{width:160px;height:160px}
.hub-footer{margin-top:48px;border-top:1px solid #343d47;background:#11151b;padding:28px clamp(16px,4vw,56px);color:#aeb8c4;font-size:13px}
.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.hub-footer nav{display:flex;gap:18px;flex-wrap:wrap}
.hub-footer a:hover{color:#e87516}
@media(max-width:899px){.outer-grid{display:flex;flex-direction:column}.outer-grid>.hub-section{width:100%;padding:12px}.section-grid .tile.format-2x1 .ico{width:94px;height:94px;max-height:94px;flex-basis:94px}.section-grid .tile.format-1x1:not(.no-name) .ico{width:78px;height:78px}.section-grid .tile.format-2x1 .description{display:none!important}}
@media(prefers-reduced-motion:reduce){.section-grid .tile:hover{transform:none!important}}

/* v0.7.2 – fractional, row-filling section layout; app cells remain independently positioned */
.outer-grid{display:grid;grid-template-columns:repeat(var(--outer-columns,1),minmax(0,1fr));grid-auto-flow:row;grid-auto-rows:auto;align-items:start;gap:16px}
.outer-grid>.hub-section{grid-column:span var(--outer-span,1)!important;grid-row:auto!important;width:auto;min-width:0;align-self:start;margin:0;padding:12px}
.outer-grid>.hub-section .section-grid{min-width:0}
.section-resize{display:none!important}
/* 2x1: logo fills left square, right column owns title and description */
.section-grid .tile.format-2x1{display:grid!important;grid-template-columns:160px minmax(0,1fr);grid-template-rows:1fr;align-items:center;justify-content:stretch;gap:14px;padding:13px 15px}
.section-grid .tile.format-2x1>.ico{grid-column:1;grid-row:1;width:160px;height:160px;max-height:160px;max-width:160px;flex:none}
.section-grid .tile.format-2x1>.copy{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;align-self:stretch;gap:12px;padding-top:12px;min-width:0;width:100%;margin:0;overflow:hidden}
.section-grid .tile.format-2x1 .name{text-align:center;white-space:normal;overflow-wrap:break-word;word-break:normal;font-size:17px;line-height:1.25;padding-inline:4px}
.section-grid .tile.format-2x1 .description{display:block!important;position:static;min-width:0;width:100%;max-width:100%;margin:0;align-self:stretch;flex:none;font-size:12px;line-height:1.45;white-space:normal;overflow-wrap:break-word;word-break:normal;overflow:hidden;max-height:100px;-webkit-line-clamp:unset}
.section-grid .tile.format-2x1.no-name>.copy{display:flex}
.section-grid .tile.format-2x1.no-name .name{display:none}
@media(max-width:899px){.outer-grid{display:grid;grid-template-columns:repeat(var(--outer-columns,1),minmax(0,1fr))}.outer-grid>.hub-section{width:auto}.section-grid .tile.format-2x1{grid-template-columns:94px minmax(0,1fr);padding:8px;gap:8px}.section-grid .tile.format-2x1>.ico{width:94px;height:94px;max-height:94px;max-width:94px}.section-grid .tile.format-2x1>.copy{padding-top:5px;gap:6px}.section-grid .tile.format-2x1 .description{display:block!important;font-size:11px;max-height:90px}}
@media(max-width:599px){.section-grid .tile.format-2x1 .description{display:block!important;font-size:10px;max-height:72px}}

/* v0.7.5: centered public search, matching the existing Hub appearance */
.public-search-wrap{width:min(540px,calc(100% - 32px));margin:28px auto 36px;display:flex;flex-direction:column;gap:8px;align-items:stretch}
.public-search-wrap input{width:100%;border-radius:12px;padding:15px 18px;background:#242b34;border:1px solid #48515d;color:#fff;font-size:15px;transition:border-color .18s ease,box-shadow .18s ease}
.public-search-wrap input:focus{outline:none;border-color:#e87516;box-shadow:0 0 0 3px #e8751626}
.public-search-count{text-align:center;font-size:12px;color:#9ba7b5;min-height:18px}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* v0.7.5.1: search field centered in the public header navigation */
body:has(#publicSearch) > header{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,540px) minmax(180px,1fr);align-items:center;column-gap:24px}
body:has(#publicSearch) > header > strong{justify-self:start;white-space:nowrap}
body:has(#publicSearch) > header > .public-search-wrap{grid-column:2;grid-row:1;width:100%;margin:0;position:relative;display:block}
body:has(#publicSearch) > header > .public-search-wrap input{padding:12px 16px;font-size:14px}
body:has(#publicSearch) > header > .public-search-wrap .public-search-count{position:absolute;top:100%;right:3px;min-height:0;padding-top:2px;font-size:10px;white-space:nowrap}
body:has(#publicSearch) > header > .hub-nav{grid-column:3;grid-row:1;justify-self:end;justify-content:flex-end}
@media(max-width:960px){body:has(#publicSearch) > header{grid-template-columns:minmax(0,1fr) auto;row-gap:15px}body:has(#publicSearch) > header > .public-search-wrap{grid-column:1/-1;grid-row:2;max-width:540px;justify-self:center}body:has(#publicSearch) > header > .hub-nav{grid-column:2;grid-row:1}}
@media(max-width:480px){body:has(#publicSearch) > header{grid-template-columns:1fr}body:has(#publicSearch) > header > .hub-nav{grid-column:1;grid-row:2;justify-self:start}body:has(#publicSearch) > header > .public-search-wrap{grid-column:1;grid-row:3;max-width:none}}

/* v0.7.5.2: shared centered header search, admin actions */
body:has(#adminSearchWrap)>header{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,540px) minmax(320px,1fr);align-items:center;column-gap:24px}
body:has(#adminSearchWrap)>header>strong{grid-column:1;justify-self:start;white-space:nowrap}
body:has(#adminSearchWrap)>header>.admin-search-wrap{grid-column:2;grid-row:1;width:100%;min-width:0}
.admin-search-wrap input{width:100%;padding:12px 16px;border-radius:12px;background:#242b34;border:1px solid #48515d;color:#fff;font-size:14px;transition:border-color .18s ease,box-shadow .18s ease}
.admin-search-wrap input:focus{outline:none;border-color:#e87516;box-shadow:0 0 0 3px #e8751626}
body:has(#adminSearchWrap)>header>.hub-nav{grid-column:3;grid-row:1;justify-self:end;justify-content:flex-end;flex-wrap:wrap}
.hub-nav .nav-edit{background:#e87516;color:#11151b;font-weight:750}
.hub-nav .nav-edit:hover{background:#ff902c;filter:none}
.hub-nav .nav-logout{background:#b93238;color:#fff;font-weight:700}
.hub-nav .nav-logout:hover{background:#d84248;filter:none}
@media(max-width:1120px){body:has(#adminSearchWrap)>header{grid-template-columns:minmax(0,1fr) auto;row-gap:15px}body:has(#adminSearchWrap)>header>.hub-nav{grid-column:2;grid-row:1}body:has(#adminSearchWrap)>header>.admin-search-wrap{grid-column:1/-1;grid-row:2;width:min(540px,100%);justify-self:center}}
@media(max-width:600px){body:has(#adminSearchWrap)>header{grid-template-columns:1fr}body:has(#adminSearchWrap)>header>.hub-nav{grid-column:1;grid-row:2;justify-self:start}body:has(#adminSearchWrap)>header>.admin-search-wrap{grid-column:1;grid-row:3;width:100%}}

/* v0.7.5.3: streamlined admin, branded footer */
#dashboard > .admin-actions{display:flex;justify-content:flex-end;align-items:center;margin:0 0 16px;min-height:0}
#dashboard > .admin-actions:has(.headline-actions button[hidden]:first-child):has(.headline-actions button[hidden]:last-child){display:none}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap}
.footer-content{display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-width:0}
.footer-content nav{display:flex;flex-wrap:wrap;gap:18px}
.footer-mark{display:inline-flex;align-items:center;justify-content:center;flex:none;margin-left:auto;border-radius:8px;transition:transform .18s ease,filter .18s ease}
.footer-mark img{display:block;width:36px;height:36px;object-fit:contain}
.footer-mark:hover{transform:translateY(-2px);filter:brightness(1.15)}
@media(max-width:599px){.footer-mark{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.footer-mark{transition:none}.footer-mark:hover{transform:none}}

/* v0.7.5.4: compact header tagline and geometrically centered footer */
header > .header-tagline{font-size:13px;color:#aeb8c4;white-space:nowrap;justify-self:start;border-left:1px solid #48515d;padding-left:14px;margin-left:0}
body:has(#publicSearch)>header,body:has(#adminSearchWrap)>header{grid-template-columns:max-content max-content minmax(220px,540px) minmax(200px,1fr);column-gap:20px}
body:has(#publicSearch)>header>strong,body:has(#adminSearchWrap)>header>strong{grid-column:1;grid-row:1}
body:has(#publicSearch)>header>.header-tagline,body:has(#adminSearchWrap)>header>.header-tagline{grid-column:2;grid-row:1}
body:has(#publicSearch)>header>.public-search-wrap,body:has(#adminSearchWrap)>header>.admin-search-wrap{grid-column:3;grid-row:1;max-width:540px;justify-self:center}
body:has(#publicSearch)>header>.hub-nav,body:has(#adminSearchWrap)>header>.hub-nav{grid-column:4;grid-row:1;justify-self:end}
.hub-footer .footer-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,max-content) minmax(0,1fr);gap:16px;align-items:center;max-width:100%}
.hub-footer .footer-content{grid-column:2;align-items:center;text-align:center;gap:12px}
.hub-footer .footer-content nav{justify-content:center}
.hub-footer .footer-mark{grid-column:3;justify-self:end;margin-left:0}
@media(max-width:1350px){body:has(#publicSearch)>header,body:has(#adminSearchWrap)>header{grid-template-columns:max-content minmax(0,1fr) auto;row-gap:14px}body:has(#publicSearch)>header>.header-tagline,body:has(#adminSearchWrap)>header>.header-tagline{grid-column:2;grid-row:1}body:has(#publicSearch)>header>.hub-nav,body:has(#adminSearchWrap)>header>.hub-nav{grid-column:3;grid-row:1}body:has(#publicSearch)>header>.public-search-wrap,body:has(#adminSearchWrap)>header>.admin-search-wrap{grid-column:1/-1;grid-row:2;width:min(540px,100%);justify-self:center}}
@media(max-width:800px){.hub-footer .footer-inner{grid-template-columns:minmax(0,1fr) auto}.hub-footer .footer-content{grid-column:1;align-items:center}.hub-footer .footer-mark{grid-column:2}}
@media(max-width:650px){body:has(#publicSearch)>header,body:has(#adminSearchWrap)>header{grid-template-columns:1fr;row-gap:12px}body:has(#publicSearch)>header>.header-tagline,body:has(#adminSearchWrap)>header>.header-tagline{display:none}body:has(#publicSearch)>header>.hub-nav,body:has(#adminSearchWrap)>header>.hub-nav{grid-column:1;grid-row:2;justify-self:start}body:has(#publicSearch)>header>.public-search-wrap,body:has(#adminSearchWrap)>header>.admin-search-wrap{grid-column:1;grid-row:3;width:100%}.hub-footer .footer-inner{grid-template-columns:1fr}.hub-footer .footer-content{grid-column:1}.hub-footer .footer-mark{grid-column:1;justify-self:end}}

/* v0.7.5.5: centered search regardless of left/right navigation widths */
body:has(#publicSearch)>header,body:has(#adminSearchWrap)>header{
 display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,360px) minmax(0,1fr);
 column-gap:20px;align-items:center;row-gap:12px;
}
body:has(#publicSearch)>header>.header-identity,body:has(#adminSearchWrap)>header>.header-identity{
 grid-column:1;grid-row:1;justify-self:start;display:flex;align-items:center;gap:14px;min-width:0;
}
.header-identity strong{font-size:18px;font-weight:600;white-space:nowrap;flex-shrink:0}
.header-identity .header-tagline{font-size:16px;font-weight:500;color:#aeb8c4;white-space:nowrap;border-left:1px solid #48515d;padding-left:14px}
body:has(#publicSearch)>header>.public-search-wrap,body:has(#adminSearchWrap)>header>.admin-search-wrap{
 grid-column:2;grid-row:1;justify-self:stretch;width:100%;max-width:none;margin:0;min-width:0;
}
body:has(#publicSearch)>header>.hub-nav,body:has(#adminSearchWrap)>header>.hub-nav{
 grid-column:3;grid-row:1;justify-self:end;justify-content:flex-end;min-width:0;
}
@media(max-width:1250px){
 body:has(#publicSearch)>header,body:has(#adminSearchWrap)>header{grid-template-columns:minmax(0,1fr) auto}
 body:has(#publicSearch)>header>.header-identity,body:has(#adminSearchWrap)>header>.header-identity{grid-column:1;grid-row:1}
 body:has(#publicSearch)>header>.hub-nav,body:has(#adminSearchWrap)>header>.hub-nav{grid-column:2;grid-row:1}
 body:has(#publicSearch)>header>.public-search-wrap,body:has(#adminSearchWrap)>header>.admin-search-wrap{grid-column:1/-1;grid-row:2;justify-self:center;width:min(360px,100%)}
}
@media(max-width:650px){
 body:has(#publicSearch)>header,body:has(#adminSearchWrap)>header{grid-template-columns:minmax(0,1fr)}
 .header-identity .header-tagline{display:none}
 body:has(#publicSearch)>header>.header-identity,body:has(#adminSearchWrap)>header>.header-identity{grid-column:1;grid-row:1}
 body:has(#publicSearch)>header>.hub-nav,body:has(#adminSearchWrap)>header>.hub-nav{grid-column:1;grid-row:2;justify-self:start}
 body:has(#publicSearch)>header>.public-search-wrap,body:has(#adminSearchWrap)>header>.admin-search-wrap{grid-column:1;grid-row:3;width:100%}
}
