/* Shared compact actions for portal, help, and admin controls. */
:root{--wtw-navy:#102f5f;--wtw-blue:#087fda;--wtw-cyan:#09a9d8;--wtw-aqua:#0bb3a7;--wtw-bg:#f3f8fc;--wtw-surface:#fff;--wtw-text:#15263d;--wtw-muted:#53677d;--wtw-border:#d9e5ef;--wtw-focus:#08a9d3;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--wtw-text);background:var(--wtw-bg)}
body{background:var(--wtw-bg);color:var(--wtw-text);font-size:16px;line-height:1.45}a{color:var(--wtw-blue)}
main{background:transparent}h1,h2,h3{color:var(--wtw-navy);letter-spacing:-.015em;line-height:1.2;font-weight:680}h1{font-size:clamp(1.75rem,4vw,2.25rem)}button,.button,input,select{font-family:inherit}button,.button{font-weight:560}small,.muted{color:var(--wtw-muted)}
input,select{border-color:var(--wtw-border);background:var(--wtw-surface);color:var(--wtw-text)}
button,.button,.btn-primary{background:var(--wtw-blue);color:#fff}.btn-primary:hover,button:hover,.button:hover{background:var(--wtw-navy)}
.btn-secondary,.secondary-button{background:#eaf3f8;color:var(--wtw-navy);border-color:#cfe1ed}.btn-secondary:hover,.secondary-button:hover{background:#dcecf4}
.btn-danger,.danger,.danger-action .btn-danger{background:#b42318;color:#fff}.btn-danger:hover,.danger:hover{background:#8f1d16}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--wtw-focus);outline-offset:2px}
.card,.help-card,.import-browser,.import-section,.import-pending{background:var(--wtw-surface);border-color:var(--wtw-border);box-shadow:0 2px 12px #102f5f12}

/* Native disclosure controls share the Add user treatment. Menu and inline
   editors keep their specialized layout and use the compact variant below. */
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create){margin-top:14px;padding:0;border:1px solid var(--wtw-border);border-radius:11px;background:var(--wtw-surface);overflow:hidden}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding:10px 14px;cursor:pointer;list-style:none;font-weight:600;color:var(--wtw-navy);transition:background-color .15s ease,color .15s ease}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary::-webkit-details-marker{display:none}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary::after{content:'+';margin-left:auto;color:var(--wtw-blue);font-size:1.25rem;font-weight:500;line-height:1}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)[open]>summary::after{content:'−'}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary:hover{background:#f0f8fc;color:var(--wtw-blue)}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary:active{background:#e6f2f8}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary:focus-visible{background:#f0f8fc}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary+form,details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary+section,details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary+p,details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit):not(.catalog-create)>summary+pre{padding:0 14px 14px}
.rename-details,.catalog-edit,.catalog-create{border:0;padding:0;background:transparent}.rename-details summary,.catalog-edit summary,.catalog-create summary{display:inline-flex;align-items:center;gap:5px;color:var(--wtw-blue);font-weight:560;list-style:none}.rename-details summary::-webkit-details-marker,.catalog-edit summary::-webkit-details-marker,.catalog-create summary::-webkit-details-marker{display:none}.rename-details summary::after,.catalog-edit summary::after,.catalog-create summary::after{content:'+';font-size:1rem}.rename-details[open] summary::after,.catalog-edit[open] summary::after,.catalog-create[open] summary::after{content:'−'}.rename-details form{padding-top:3px}

/* WTW surfaces and shared shell accents. */
.setup-banner{background:#e6f7fa;border-left-color:var(--wtw-cyan)}.wtw-shell{border-bottom-color:var(--wtw-border);box-shadow:0 2px 10px #102f5f0a}.wtw-brand{color:var(--wtw-navy)}.wtw-desktop-nav a.is-active,.wtw-menu a.is-active{color:var(--wtw-navy)}.wtw-menu nav{border-color:var(--wtw-border);box-shadow:0 8px 24px #102f5f1a}.wtw-menu nav a:hover,.wtw-menu nav a:focus-visible,.wtw-menu nav a.is-active{background:#eaf5fa;color:var(--wtw-navy)}.wtw-menu nav form{border-top-color:var(--wtw-border)}
.resource-tabs{background:#edf6fa}.resource-tab.is-active{color:var(--wtw-navy);border-color:#cfe3ed}.resource-tab:focus-visible{outline-color:var(--wtw-focus)}.help-platform-list a{background:#edf6fa;color:var(--wtw-navy)}.help-recommended{border-color:var(--wtw-blue)}.wizard-selected{background:#eaf5fa}.preview{border-color:var(--wtw-blue)}
.admin-user-row,.portal-resource-row,.service-row,.service-admin-row,.access-row,.resource-row,.event-row,.provisioning-row{border-top-color:var(--wtw-border)}
.pending-resource{background:#eef9fb;border-color:#cfeaf1}.notice-success{background:#e7f6ec;color:#18733a}.notice-error{background:#fff0ef;color:#9f1c17}
.connect-cta{border:2px solid #1769e0}.connect-choice{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 18px}.connect-choice label{padding:9px 12px;border:1px solid #dfe5eb;border-radius:8px}.connect-options{margin-top:18px;padding-top:14px;border-top:1px solid #edf0f2}.connect-options[hidden]{display:none}
.help-ios-section{margin-top:16px}.help-ios-step{border-top:1px solid #edf0f2;padding-top:14px;margin-top:16px}.help-ios-step h3{margin:0 0 8px}.help-ios-step figure{margin:12px 0;text-align:center}.help-ios-step figure img{display:block;width:100%;height:auto;max-width:420px;margin:0 auto;border:1px solid #dfe5eb;border-radius:10px}.help-choice-actions{display:flex;flex-wrap:wrap;gap:8px}.help-ios-section code{overflow-wrap:anywhere}
.help-wireguard-shot{margin:14px 0;text-align:center}.help-wireguard-shot img{display:block;width:100%;height:auto;max-width:360px;margin:0 auto;border:1px solid #dfe5eb;border-radius:8px}
.wtw-shell{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:18px;min-height:56px;padding:0 16px;background:#fff;border-bottom:1px solid #e4e9ee}.wtw-brand{font-weight:750;font-size:1.08rem;color:#17202a;text-decoration:none;white-space:nowrap}.brand-short,.wtw-menu{display:none}.wtw-desktop-nav{display:flex;align-items:center;gap:12px;margin:0;flex-wrap:wrap}.wtw-desktop-nav form{margin:0}.wtw-desktop-nav a.is-active,.wtw-menu a.is-active{font-weight:700;color:#0b4fa3}.nav-badge{display:inline-block;min-width:1.2em;padding:1px 5px;border-radius:99px;background:#b42318;color:white;font-size:.75rem;text-align:center}.page-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:8px 0 14px}.page-heading h1{margin:0}.flash-stack{max-width:880px;margin:10px auto 0;padding:0 16px}.notice{border-radius:8px;padding:10px 12px;margin:6px 0}.notice-success{background:#e7f6ec;color:#18733a}.notice-error{background:#fff0ef;color:#9f1c17}.event-row{display:grid;grid-template-columns:145px 1fr auto;gap:12px;align-items:start;padding:10px 0;border-top:1px solid #edf0f2}.event-row>div{display:flex;flex-direction:column;gap:2px}.event-row pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.78rem}
.wtw-brand{display:flex;align-items:center;width:210px;height:42px;overflow:hidden}.wtw-logo-horizontal{display:block;width:100%;height:100%;object-fit:contain}.login-card{text-align:center}.wtw-logo-stacked{display:block;width:min(220px,70vw);height:auto;max-height:275px;object-fit:contain;margin:0 auto 18px}.qr-card .qr-brand-logo{display:block;width:min(220px,100%);height:64px;object-fit:contain;margin:0 auto}.qr-card #qr-image{display:block;width:min(300px,100%);height:auto;aspect-ratio:1 / 1;object-fit:contain;margin:10px auto}
.btn{display:inline-flex;align-items:center;justify-content:center;width:auto;flex:none;box-sizing:border-box;border:1px solid transparent;border-radius:8px;font-size:15px;line-height:normal;text-decoration:none;cursor:pointer}
.btn-compact{min-height:40px;padding:0 15px;white-space:nowrap}
.btn-primary{background:#1769e0;color:#fff}.btn-secondary{background:#e7edf3;color:#263746;border-color:#d7e0e8}.btn-danger{background:#b42318;color:#fff}
.admin-subnav{display:flex;align-items:center;gap:12px;margin:0 0 10px}.admin-back-link,.help-back-link{display:inline-block;font-size:.95rem}
.help-header{display:block;margin-bottom:12px}.help-back-link{margin-bottom:8px}.help-header h1{margin:0}.help-recommended{padding:14px 16px}.help-recommended h2{margin-bottom:6px}.help-install-button{margin-top:2px}.help-steps{margin-bottom:12px}.help-card{padding:16px;margin:12px 0}
.portal-resource-row{padding:10px 0}.resource-main{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0}.resource-info{min-width:0;display:flex;flex-direction:column;gap:2px}.portal-resource-actions{gap:6px}.portal-resource-actions .btn-compact{min-height:40px}
.admin-user-page .btn-compact,.catalog-page .btn-compact,.import-shell .btn-compact{min-height:40px;padding:0 14px}.catalog-page .catalog-actions .btn-compact,.wizard-actions .btn-compact{width:auto;min-height:40px}.danger-action .btn-danger,.admin-user-page .danger{background:#b42318;color:#fff}
@media(max-width:700px){.resource-main{align-items:flex-start;flex-direction:column;gap:8px}.portal-resource-actions{align-self:flex-end}.portal-resource-row{padding:9px 0}.admin-subnav{margin-bottom:8px}.admin-subnav .btn-compact{margin-left:auto}.help-card{padding:14px}.help-recommended{padding:13px 14px}.wtw-shell{min-height:54px;padding:0 12px;justify-content:space-between}.brand-full,.wtw-desktop-nav{display:none}.brand-short,.wtw-menu{display:block}.wtw-menu{margin-left:auto}.wtw-menu summary{list-style:none;color:#145fc7;cursor:pointer;padding:8px}.wtw-menu summary::-webkit-details-marker{display:none}.wtw-menu nav{position:absolute;right:10px;top:50px;display:flex;flex-direction:column;gap:0;min-width:210px;margin:0;padding:8px;background:#fff;border:1px solid #dfe5eb;border-radius:10px;box-shadow:0 8px 24px #10203022}.wtw-menu nav a,.wtw-menu nav button{padding:8px;text-align:left}.event-row{display:flex;flex-direction:column;align-items:stretch;gap:.2rem}.event-row .event-time,.event-row .event-title,.event-row .event-identity,.event-row .event-meta,.event-row details{display:block;width:100%;min-width:0}.event-row details{margin-top:.15rem}}
.rename-details{margin:0;border:0;padding:0}.rename-details summary{color:#145fc7;cursor:pointer;padding:8px 0;font-size:.9rem}.rename-details form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.rename-details input{width:min(220px,100%);margin:0}.qr-card{max-width:320px;padding:12px}.qr-card .qr-brand-logo{width:min(260px,100%);height:72px;margin:0 auto 4px}.qr-card #qr-image{width:min(300px,100%);margin:6px auto}.wtw-menu summary{display:flex;align-items:center;gap:5px;line-height:1.2}.wtw-desktop-nav a{padding:6px 2px}.wtw-desktop-nav a.is-active,.wtw-menu a.is-active{font-weight:600;text-decoration:underline;text-underline-offset:4px}
.help-tabs{display:flex;gap:8px;margin:10px 0}.help-tabs button{width:auto;border:1px solid #b8c7d9;background:#f4f6f8;color:#273746;border-radius:8px;padding:9px 13px}.help-tabs button[aria-selected="true"]{background:#dceeff;color:#084b8d;border-color:#1769e0;font-weight:700;box-shadow:inset 0 -2px 0 #1769e0}.help-panel[hidden]{display:none}.qr-card{max-width:320px;padding:16px;margin:16px auto;text-align:center;border:1px solid #dfe5eb;border-radius:14px;background:#fff}.qr-card img{display:block;width:100%;height:auto;margin:10px auto}.qr-card .qr-brand-logo{width:min(220px,80%);height:auto;object-fit:contain}.wtw-mark{font-weight:800;color:#1769e0}.wtw-mark small{display:block;font-weight:500}.js-local-time{white-space:nowrap}.event-row{min-width:0}.event-row>*{min-width:0}.event-row small,.event-row strong,.event-subject{overflow-wrap:anywhere}.event-main{min-width:0}.tgpa-custom-group[hidden]{display:none}
.qr-card .qr-brand-logo{display:block;width:min(220px,100%);height:64px;object-fit:contain;margin:0 auto}.qr-card #qr-image{display:block;width:min(300px,100%);height:auto;aspect-ratio:1 / 1;object-fit:contain;margin:10px auto}.wtw-brand{display:flex;align-items:center;width:210px;height:42px;overflow:hidden}.wtw-logo-horizontal{display:block;width:100%;height:100%;object-fit:contain}.login-card{text-align:center}.wtw-logo-stacked{display:block;width:min(220px,70vw);height:auto;max-height:275px;object-fit:contain;margin:0 auto 18px}
.provisioning-row{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:12px;align-items:start;padding:10px 0;border-top:1px solid #edf0f2}.provisioning-main{display:flex;flex-direction:column;gap:2px;min-width:0}.provisioning-main>*{overflow-wrap:anywhere}.provisioning-history{margin-top:18px}.pending-resource{background:#f7fbff;border:1px solid #dceeff;border-radius:8px;padding:10px;margin:8px 0}.pending-resource>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.access-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;align-items:center}
@media(max-width:700px){.wtw-brand{width:140px;height:40px}}
@media(max-width:700px){.provisioning-row{display:flex;flex-direction:column;align-items:stretch;gap:.25rem}.provisioning-time,.provisioning-main,.provisioning-row details{display:block;width:100%;min-width:0}.provisioning-row details{margin-top:.2rem}}
@media(max-width:700px){.access-actions{justify-content:flex-start;width:100%}}

/* Final mobile density pass: keep actions compact without changing desktop navigation. */
.setup-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 16px;padding:12px 14px;background:#eef6ff;border-left:4px solid #1769e0;border-radius:10px}.setup-banner div{display:flex;flex-direction:column;gap:2px;min-width:0}.setup-banner small{font-size:.9rem}.setup-banner .btn{flex:0 0 auto}
.wtw-menu nav{width:min(300px,calc(100vw - 32px));min-width:0;padding:10px 12px;gap:2px;max-height:calc(100vh - 72px);overflow-y:auto}.wtw-menu nav a,.wtw-menu nav button{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding:8px 10px;font-size:18px;text-decoration:none;border-radius:7px}.wtw-menu nav a:hover,.wtw-menu nav a:focus-visible,.wtw-menu nav a.is-active{background:#eef4ff;color:#0b4fa3;text-decoration:none}.wtw-menu nav form{margin:2px 0 0;border-top:1px solid #edf0f2}.wtw-menu nav button{width:100%;font-size:18px}.wtw-menu summary{font-size:16px;font-weight:600}.wtw-desktop-nav a.is-active,.wtw-menu a.is-active{text-decoration:none}
.help-platform-list{gap:6px}.help-platform-list a{padding:4px 8px;font-size:.9rem}.help-steps{font-size:18px;margin:0 0 10px}.help-steps li{padding:2px 0}.help-import h2{font-size:1.2rem}.help-choice-actions{align-items:flex-start}.help-caption{display:block;margin:4px 0 0;max-width:220px}.help-wireguard-shot img{max-width:330px}.qr-card .qr-brand-logo{width:min(180px,100%);height:auto}.qr-card #qr-image{width:min(270px,100%);margin:8px auto}.qr-card{padding:12px}
.admin-user-page .access-row{gap:16px}.admin-user-page .access-row>div:first-child{gap:3px}.admin-user-page .access-actions{gap:6px}.admin-user-page .access-actions .btn-compact{padding-inline:11px}.admin-user-page .fallback-note{display:none}.admin-users-card input[data-filter]{width:100%;min-width:0;box-sizing:border-box}.admin-user-row{min-height:58px}
@media(max-width:700px){.setup-banner{align-items:flex-start;padding:11px 12px}.setup-banner .btn{min-height:40px;padding-inline:11px}.portal-resource-actions{align-self:stretch;justify-content:flex-start}.portal-resource-actions .btn-compact{min-height:40px}.rename-details{flex-basis:100%}.help-card h2{font-size:1.3rem}.help-wireguard-shot{margin:10px 0}.help-wireguard-shot img{max-width:300px}.admin-user-page .access-row{gap:7px}.admin-users-card{padding:13px}.admin-list-heading{display:block}.admin-list-heading h2{margin-bottom:8px}.page-heading h1,.user-header h1{font-size:clamp(2.1rem,8vw,2.6rem)}.card h2{font-size:clamp(1.45rem,6vw,1.8rem)}}

/* Final screenshot polish: mobile-only, scoped to the existing UI markup. */
@media(max-width:700px){
  .wtw-shell{align-items:center}
  .wtw-menu{align-self:center;margin-top:0;margin-bottom:0}
  .wtw-menu summary{display:inline-flex;align-items:center;justify-content:center;height:44px;min-height:44px;margin:0;padding-block:0;padding-inline:8px;line-height:1;vertical-align:middle}
  .page-heading h1,.user-header h1{font-size:clamp(2.5rem,10vw,2.75rem);line-height:1.08}
  .admin-page-heading h1,.admin-user-page .user-header h1{font-size:clamp(38px,10vw,44px)!important;line-height:1.05!important}
  .setup-banner{padding:9px 11px;gap:10px;margin-block:10px 13px}
  .setup-banner small{font-size:.84rem;line-height:1.15}
  .setup-banner .btn{min-height:38px;padding-inline:10px;font-size:14px}
  .portal-resource-row{padding:7px 0}
  .resource-main{gap:5px}
  .resource-info{gap:1px}
  .portal-resource-actions{gap:4px;margin-top:0}
  .portal-resource-actions .btn-compact{min-height:38px;padding-inline:10px;max-width:100%;font-size:14px}
  .rename-details summary{padding:5px 0}
  .admin-users-card .admin-user-row{min-height:54px;padding-block:7px}
  .admin-users-card .admin-user-meta{line-height:1.25}
  .admin-add-user-card{padding:14px}
  .admin-add-user-form{display:flex;flex-direction:column;gap:0}
  .admin-add-user-form label{width:100%;margin:8px 0}
  .admin-add-user-form input:not([type=checkbox]):not([type=hidden]){display:block;width:100%;min-width:0;box-sizing:border-box;min-height:48px;height:auto;padding:12px 14px;font-size:18px;margin:6px 0 0}
  .admin-add-user-form small{display:block;margin-top:8px;font-size:16px;line-height:1.35}
  .admin-add-user-form label:last-of-type{display:flex;align-items:center;gap:8px;margin:8px 0 10px}
  .admin-add-user-form input[type=checkbox]{width:20px;height:20px;min-height:20px;padding:0;margin:0;flex:0 0 auto}
  .admin-add-user-form button{align-self:flex-start;min-height:46px;padding:10px 18px;font-size:18px}
}

/* Portal resource switcher and the intentionally collapsed rare admin action. */
.resource-tabs{display:flex;gap:4px;margin:-4px 0 8px;padding:3px;background:#f1f5f8;border-radius:9px}.resource-tab{flex:1;min-width:0;min-height:40px;padding:7px 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:#53606d;font-size:15px;font-weight:600;cursor:pointer}.resource-tab span{font-size:.85em;color:#65717d}.resource-tab.is-active{background:#fff;color:#0b4fa3;border-color:#d7e5f4;box-shadow:0 1px 3px #10203012}.resource-tab:focus-visible{outline:2px solid #1769e0;outline-offset:1px}.resource-panel[hidden]{display:none}.resource-panel>.portal-resource-row:first-child{border-top:0}.admin-add-user-card{padding:0}.admin-add-user-card>summary{cursor:pointer;list-style:none;padding:13px 16px;font-size:1.05rem;font-weight:650}.admin-add-user-card>summary::-webkit-details-marker{display:none}.admin-add-user-card>summary::after{content:'+';float:right;color:#1769e0;font-size:1.2rem;line-height:1}.admin-add-user-card[open]>summary::after{content:'−'}.admin-add-user-card .admin-add-user-form{padding:0 16px 16px}
@media(max-width:700px){.resource-tabs{margin:-2px 0 7px}.resource-tab{min-height:40px;padding-inline:7px;font-size:14px}.admin-add-user-card>summary{min-height:44px;box-sizing:border-box;padding:12px 14px}.admin-add-user-card .admin-add-user-form{padding-inline:14px;padding-bottom:14px}}

/* Targeted WTW visual fixes: sampled logo teal, geometric mobile menu, and
   native help numbering. */
:root{--wtw-teal:#017998;--wtw-teal-dark:#00667f;--wtw-teal-soft:#e6f5f7}
button,.button,.btn-primary{background:var(--wtw-teal-dark);color:#fff}
.btn-primary:hover,button:hover,.button:hover{background:var(--wtw-navy)}
.btn-primary,.help-recommended,.preview{border-color:var(--wtw-teal-dark)}
.resource-tab.is-active,.help-tabs button[aria-selected="true"]{color:var(--wtw-teal-dark);border-color:var(--wtw-teal)}
.resource-tab:focus-visible,.help-tabs button[aria-selected="true"]{outline-color:var(--wtw-teal)}
.setup-banner{background:var(--wtw-teal-soft);border-left-color:var(--wtw-teal)}
.wtw-shell{position:relative}
.catalog-edit summary,.catalog-create summary{color:var(--wtw-teal-dark)}
.catalog-edit summary::after,.catalog-create summary::after{color:var(--wtw-teal);font-size:1.1rem}
.catalog-edit summary:hover,.catalog-create summary:hover{color:var(--wtw-teal-dark)}
.help-steps{list-style-type:decimal;list-style-position:outside;counter-reset:none}
.help-steps::before,.help-steps li::before{content:normal;counter-increment:none}
@media(max-width:700px){
  .wtw-menu{display:block}
  .wtw-menu summary{display:inline-flex;align-items:center;gap:8px;height:44px;min-height:44px;padding-block:0;padding-inline:8px;line-height:1;transform:none}
  .menu-hamburger{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:19px;height:19px;flex:0 0 19px}
  .menu-hamburger i{display:block;width:19px;height:2px;border-radius:2px;background:currentColor}
  .wtw-menu nav{top:calc(100% + 4px);right:0}
}

/* Final structural header/menu pass. The mobile header uses one shared
   alignment system for the logo and trigger; the dropdown is the only
   positioned element. */
.wtw-menu summary{color:var(--wtw-teal-dark);cursor:pointer}
.wtw-menu summary:focus-visible{outline-color:var(--wtw-teal)}
.wtw-menu nav{border-color:var(--wtw-border)}
.wtw-menu nav a:hover,.wtw-menu nav a:focus-visible,.wtw-menu nav a.is-active{background:var(--wtw-teal-soft);color:var(--wtw-teal-dark)}
.wtw-menu nav form{border-top-color:var(--wtw-border)}
.menu-hamburger{display:inline-flex;flex-direction:column;align-items:stretch;justify-content:center;gap:4px;width:19px;height:19px;flex:0 0 19px}
.menu-hamburger i{display:block;width:19px;height:2px;border-radius:2px;background:currentColor}

/* One disclosure language: standard rows are full-width; inline actions are
   intentionally compact. Symbols are CSS-generated, never label text. */
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit)>summary,
.catalog-create>summary{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding:10px 14px;cursor:pointer;list-style:none;font-weight:600;color:var(--wtw-navy)}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit)>summary::-webkit-details-marker,
.catalog-create>summary::-webkit-details-marker{display:none}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit)>summary::after,
.catalog-create>summary::after{content:'+';margin-left:auto;color:var(--wtw-teal);font-size:1.25rem;font-weight:500;line-height:1}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit)[open]>summary::after,
.catalog-create[open]>summary::after{content:'−'}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit)>summary:hover,
.catalog-create>summary:hover{background:var(--wtw-teal-soft);color:var(--wtw-teal-dark)}
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit)>summary+form,
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit)>summary+section,
details:not(.wtw-menu):not(.rename-details):not(.portal-qr-details):not(.catalog-edit)>summary+p,
.catalog-create>summary+form{padding:0 14px 14px}
.rename-details,.catalog-edit{border:0;padding:0;background:transparent}
.rename-details summary,.catalog-edit summary{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:5px 0;color:var(--wtw-teal-dark);font-weight:600;list-style:none}
.rename-details summary::-webkit-details-marker,.catalog-edit summary::-webkit-details-marker{display:none}
.rename-details summary::after,.catalog-edit summary::after{content:'+';color:var(--wtw-teal);font-size:1rem;line-height:1}
.rename-details[open] summary::after,.catalog-edit[open] summary::after{content:'−'}
.catalog-edit form{padding-top:3px}

.qr-card{max-width:292px;padding:10px;margin:12px auto;gap:0}
.qr-card #qr-image{width:min(250px,100%);margin:4px auto}
.qr-card strong{display:block;margin-top:2px}
.help-steps{list-style:decimal outside;counter-reset:none;padding-left:24px;margin-block:0 8px}
.help-steps::before,.help-steps li::before{content:normal;counter-increment:none}

@media(max-width:700px){
  .wtw-shell{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:0;min-height:54px;padding:0 12px;justify-content:normal}
  .wtw-brand{grid-column:1;width:140px;height:40px}
  .wtw-menu{grid-column:3;display:block;position:static;align-self:center;margin:0}
  .wtw-menu summary{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;min-height:44px;padding-block:0;padding-inline:8px;line-height:1}
  .wtw-menu nav{top:calc(100% + 4px);right:12px}
  .qr-card{padding:8px}
  .qr-card #qr-image{width:min(250px,100%);margin-block:3px}
}

/* Stable help QR actions: the image stays fluid and the native links stack
   before a narrow viewport or enlarged text can cause horizontal overflow. */
.qr-card{width:100%;max-width:292px;box-sizing:border-box;overflow:visible}
.qr-card #qr-image{display:block;width:min(250px,100%);max-width:100%;height:auto;min-height:0;aspect-ratio:auto;object-fit:contain;margin-inline:auto}
.qr-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;max-width:100%;margin-top:10px}
.qr-actions>*{min-width:0;max-width:100%;text-align:center;overflow-wrap:anywhere}
.help-choice-actions>*{min-width:0;max-width:100%}
@media(max-width:420px){
  .qr-actions,.help-choice-actions{flex-direction:column;align-items:stretch}
  .qr-actions>*,.help-choice-actions>*{width:100%;box-sizing:border-box;text-align:center}
}

/* Portal access QR: a closed action stays inline; the opened content expands
   inside the existing access row without adding another card surface. */
details.portal-qr-details{margin:0;padding:0;border:0;background:transparent}
details.portal-qr-details>summary{display:inline-flex;align-items:center;gap:5px;min-height:32px;box-sizing:border-box;padding:5px 0;cursor:pointer;list-style:none;color:var(--wtw-teal-dark);font-weight:600}
details.portal-qr-details>summary::-webkit-details-marker{display:none}
details.portal-qr-details>summary::after{content:'+';color:var(--wtw-teal);font-size:1rem;line-height:1}
details.portal-qr-details[open]>summary::after{content:'−'}
.portal-qr-details[open]{flex-basis:100%;min-width:0}
.portal-qr-content{width:100%;max-width:420px;padding-top:6px;text-align:center}
.portal-qr-content img{display:block;width:100%;max-width:420px;height:auto;margin:0 auto}
.portal-qr-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px}
.portal-qr-actions a{min-width:0;max-width:100%;overflow-wrap:anywhere;text-align:center}
@media(max-width:420px){.portal-qr-actions{flex-direction:column;align-items:center}}
