/* Organized navigation and separate product portals; brand assets are unchanged. */
.admin-sidebar .admin-navigation{flex:1;min-height:0;overflow-y:auto;gap:14px;margin-top:15px;padding-right:4px;}
.admin-nav-group h2{margin:7px 12px;color:#8c9bb5;font-size:9px;line-height:1.4;letter-spacing:.1em;text-transform:uppercase;}
.admin-nav-items{display:grid;gap:3px;}
.admin-nav-items .nav-item{width:100%;display:flex;align-items:center;text-decoration:none;font-size:11px;line-height:1.45;}
.admin-nav-items .nav-item.active{border-left:3px solid #a88cf5;background:#282245;}
.ecosystem-note{padding:22px;margin:20px 0;}
.ecosystem-note h2{font-size:20px;margin-bottom:10px;}
.ecosystem-note p,.ecosystem-hint{font-size:13px;line-height:1.65;color:#a8bbd5;}
.ecosystem-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:17px;}
.ecosystem-actions a{text-decoration:none;display:inline-flex;align-items:center;}
#invoices-page label,#portals-page label{font-size:13px;line-height:1.6;}
#invoices-page input,#invoices-page select,#portals-page input{font-size:14px;min-height:44px;}
#invoices-page .button,#portals-page .button{font-size:13px;min-height:44px;}
.invoice-entry>header{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px;}
.invoice-customer{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:22px 0;padding:18px;border:1px solid #334562;border-radius:12px;background:#111c30;}
.invoice-customer dt{font-size:11px;color:#95a7c2;margin-bottom:6px;}
.invoice-customer dd{margin:0;font-size:13px;line-height:1.5;overflow-wrap:anywhere;}
.portal-link-card small{display:block;margin-top:17px;font-size:12px;line-height:1.6;color:#95a7c2;}
.applications-dropdown{position:relative;color:#b3c0d4;font-size:11px;}
.applications-dropdown summary{cursor:pointer;padding:27px 0;list-style:none;font-weight:750;}
.applications-dropdown summary::after{content:"⌄";margin-left:7px;}
.applications-dropdown summary::-webkit-details-marker{display:none;}
.applications-menu{position:absolute;z-index:12;top:100%;left:-20px;min-width:260px;padding:12px;background:#111b30;border:1px solid #394967;border-radius:14px;box-shadow:0 18px 55px #0008;}
.public-header nav .applications-menu a{display:block;padding:12px;border-radius:8px;font-size:13px;}
.public-header nav .applications-menu a::after{display:none;}
.public-header nav .applications-menu a:hover,.public-header nav .applications-menu a[aria-current]{color:#fff;background:#2a2543;}
.public-header nav .applications-menu small{display:block;margin-top:4px;color:#8ea1bf;font-size:11px;}
.product-portal{--portal-accent:#a88bfa;}
.product-portal[data-public-product=contable]{--portal-accent:#8ab7fa;}
.product-portal[data-public-product=paper]{--portal-accent:#e9aa6d;}
.product-portal[data-public-product=mobile]{--portal-accent:#8ab7fa;}
.product-hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;min-height:580px;}
.product-hero h1{font-size:clamp(35px,4.2vw,62px);line-height:1.04;}
.hero-copy .portal-product-name{color:var(--portal-accent);font-size:20px;font-weight:850;margin-top:18px;}
.hero-copy .portal-purchase-note{font-size:12px;line-height:1.7;margin-top:24px;color:#9dacc4;}
.portal-hero-capture{margin:0;padding:12px;border:1px solid #3d4f6c;background:#121c31;border-radius:18px;min-width:0;box-shadow:0 22px 70px #0004;}
.portal-hero-capture .capture-open{width:100%;border:0;background:transparent;padding:0;cursor:zoom-in;}
.portal-hero-capture img{display:block;width:100%;height:auto;border-radius:10px;}
.portal-hero-capture figcaption{margin:14px 5px 4px;font-size:10px;line-height:1.6;color:#a9b7cc;}
.portal-mobile-summary{padding:26px;border:1px solid #394d6d;border-radius:20px;background:#121d31;}
.portal-mobile-summary img{width:160px;height:auto;}
.portal-mobile-summary p,.portal-mobile-summary li{font-size:14px;line-height:1.7;color:#a8bbd5;}
.product-portal .experience-selector,.product-portal .real-tour-tabs,.product-portal .product-plan-selector{display:none;}
.product-portal[data-public-product=contable] [data-experience-panel]:not([data-experience-panel=contable]),.product-portal[data-public-product=enterprise] [data-experience-panel]:not([data-experience-panel=enterprise]),.product-portal[data-public-product=paper] [data-experience-panel]:not([data-experience-panel=paper]){display:none;}
.product-portal[data-public-product=contable] .download-product-card:not([data-product=contable]),.product-portal[data-public-product=enterprise] .download-product-card:not([data-product=enterprise]),.product-portal[data-public-product=paper] .download-product-card:not([data-product=paper]),.product-portal[data-public-product=mobile] .download-product-card:not([data-product=mobile]){display:none;}
.product-portal .download-catalog{grid-template-columns:minmax(0,1fr);}
.product-portal[data-public-product=paper] .primary-link,.product-portal[data-public-product=paper] .header-cta{background:#a96932!important;}
.product-portal[data-public-product=contable] .primary-link,.product-portal[data-public-product=contable] .header-cta,.product-portal[data-public-product=mobile] .primary-link,.product-portal[data-public-product=mobile] .header-cta{background:#325a9e!important;}
.product-portal .proof-strip strong{color:var(--portal-accent);}
@media(max-width:1080px){.public-header nav{gap:16px}.product-hero{gap:28px}.product-hero h1{font-size:48px;}}
@media(max-width:900px){
  body[data-admin-page=invoices],body[data-admin-page=portals]{min-width:0;}
  body[data-admin-page=invoices] .portal,body[data-admin-page=portals] .portal{grid-template-columns:minmax(0,1fr);}
  body[data-admin-page=invoices] .sidebar,body[data-admin-page=portals] .sidebar{position:static;height:auto;padding:14px;}
  body[data-admin-page=invoices] .server-status,body[data-admin-page=portals] .server-status{display:none;}
  .admin-sidebar .admin-navigation{display:flex!important;flex-direction:column;}
  .admin-nav-items{grid-template-columns:repeat(2,minmax(0,1fr));}
  #invoices-page,#portals-page{padding:18px;}
  .product-hero{grid-template-columns:minmax(0,1fr);min-height:0;padding-bottom:30px;}
  .product-hero h1{font-size:clamp(36px,7vw,55px);}
}
@media(max-width:680px){
  .applications-dropdown summary{padding:14px 0;}
  .applications-menu{position:static;min-width:0;margin-bottom:12px;box-shadow:none;}
  .invoice-customer{grid-template-columns:minmax(0,1fr);}
  body[data-admin-page=invoices] .admin-session>span,body[data-admin-page=portals] .admin-session>span{display:none;}
}

/* Product-menu presentation shared by the dedicated product pages. */
.public-header nav .applications-dropdown { position: relative; }
.public-header nav .applications-dropdown > summary { position: relative; display: inline-flex; align-items: center; gap: 6px; padding: 29px 0 26px; color: #b3c0d4; font-size: 11px; font-weight: 650; cursor: pointer; list-style: none; }
.public-header nav .applications-dropdown > summary::-webkit-details-marker { display: none; }
.public-header nav .applications-dropdown > summary::after { position: absolute; right: 50%; bottom: 18px; left: 50%; height: 2px; border-radius: 2px; content: ""; background: var(--cyan); transition: right .2s ease,left .2s ease; }
.public-header nav .applications-dropdown > summary:hover,
.public-header nav .applications-dropdown[open] > summary { color: #fff; }
.public-header nav .applications-dropdown > summary:hover::after,
.public-header nav .applications-dropdown[open] > summary::after { right: 0; left: 0; }
.public-header nav .applications-dropdown > summary svg { width: 13px; height: 13px; transform: rotate(90deg); transition: transform .18s ease; }
.public-header nav .applications-dropdown[open] > summary svg { transform: rotate(-90deg); }
.public-header nav .applications-menu { position: absolute; z-index: 60; top: calc(100% - 9px); left: -18px; display: grid; width: 278px; min-width: 0; gap: 2px; margin: 0; padding: 6px; border: 1px solid #31415f; border-radius: 14px; background: rgba(10,17,31,.98); box-shadow: 0 22px 55px rgba(0,0,0,.42); backdrop-filter: blur(18px); }
.public-header nav .applications-menu a { display: flex; align-items: center; gap: 10px; padding: 6px; border-radius: 9px; text-decoration: none; }
.public-header nav .applications-menu a::after { display: none; }
.public-header nav .applications-menu a:hover { color: #fff; background: #15213a; }
.applications-menu a > svg { width: 34px; height: 34px; flex: 0 0 34px; padding: 8px; border: 1px solid #354766; border-radius: 9px; color: #ad98ff; background: #111d34; }
.public-header nav .applications-menu a span { display: grid; gap: 4px; }
.public-header nav .applications-menu a strong { color: #eef3fb; font-size: 12px; }
.public-header nav .applications-menu a small { display: block; margin: 0; color: #8e9db4; font-size: 10px; }
.public-header nav .applications-menu a[aria-current="page"] { outline: 1px solid rgba(32,213,243,.4); background: rgba(32,213,243,.08); }
@media (max-width: 1120px) {
  .public-header nav .applications-dropdown > summary { font-size: 10px; }
}
@media (max-width: 900px) {
  .public-header nav .applications-dropdown > summary { display: flex; justify-content: space-between; width: 100%; padding: 13px; border-radius: 8px; font-size: 12px; }
  .public-header nav .applications-dropdown > summary::after { display: none; }
  .public-header nav .applications-dropdown > summary:hover,
  .public-header nav .applications-dropdown[open] > summary { background: #152039; }
  .public-header nav .applications-menu { position: static; width: auto; gap: 3px; margin: 2px 0 7px 10px; padding: 5px; border-color: rgba(49,65,95,.65); border-radius: 10px; background: rgba(7,13,25,.55); box-shadow: none; backdrop-filter: none; }
  .public-header nav .applications-menu a { padding: 8px; }
  .applications-menu a > svg { width: 32px; height: 32px; padding: 8px; }
}
