/* IDA Studio V33 — high-fidelity navigation, spectrum across ALL themes,
 * subtle silk-light reflections and genuinely compact messenger.
 * All decorative layers use absolute positioning and never claim layout space.
 */
html[data-theme] .ida-v32-spectrum-host>.ida-v32-spectrum-line,
html[data-ida-universe] .ida-v32-spectrum-host>.ida-v32-spectrum-line{
 padding:.46px!important;visibility:visible!important;opacity:.91!important;
 animation:ida-v32-wire-rotate 2.5s linear infinite,ida-v32-wire-colors 3s linear infinite!important
}
html[data-theme] .ida-v32-spectrum-host:hover>.ida-v32-spectrum-line,
html[data-theme] .ida-v32-spectrum-host:focus-within>.ida-v32-spectrum-line{
 opacity:1!important;animation-duration:1.35s,1.65s!important
}
@media(prefers-reduced-motion:reduce){
 html[data-theme] .ida-v32-spectrum-line{animation:none!important;filter:none!important}
}
html[data-ida-motion-off="true"] .ida-v32-spectrum-line{animation-play-state:paused!important}
/* A second, silk-like caustic light over decorative window surfaces. */
.ida-v33-silk-host{position:relative}
.ida-v33-silk-host>.ida-v33-silk{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 margin:0!important;padding:0!important;z-index:0!important;
 overflow:hidden!important;pointer-events:none!important;border-radius:inherit;
 background:linear-gradient(109deg,transparent 0%,transparent 29%,rgba(142,218,255,.055) 39%,rgba(222,152,246,.075) 44%,transparent 53%,transparent 100%);
 background-size:260% 100%;background-position:140% 0;
 opacity:.8;animation:ida-v33-silk-drift 11s ease-in-out infinite alternate;
}
html[data-theme="ivory"] .ida-v33-silk{background-image:linear-gradient(109deg,transparent 0%,transparent 31%,rgba(70,140,195,.045) 41%,rgba(193,111,183,.075) 46%,transparent 57%)}
@keyframes ida-v33-silk-drift{from{background-position:130% 0}to{background-position:-85% 0}}
@media(prefers-reduced-motion:reduce){.ida-v33-silk{animation:none!important}}
html[data-ida-motion-off="true"] .ida-v33-silk{animation-play-state:paused!important}
/* Every mobile menu tile begins in the previously hover-only premium state. */
.mobile-nav:not([hidden]) a{
 position:relative;overflow:hidden;isolation:isolate;
 border:1px solid rgba(var(--accent-rgb),.48)!important;border-radius:12px;
 color:var(--text)!important;
 background:linear-gradient(145deg,rgba(var(--accent-rgb),.095),rgba(var(--accent-rgb),.035) 65%,rgba(177,138,243,.065))!important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.075),0 0 0 .3px rgba(var(--accent-rgb),.17),0 8px 26px rgba(var(--accent-rgb),.035);
 font-weight:520;opacity:1!important;transition:box-shadow .3s,border-color .3s,transform .3s,background .3s!important;
}
.mobile-nav:not([hidden]) a::after{
 content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
 background:linear-gradient(115deg,transparent 25%,rgba(var(--accent-rgb),.25) 48%,transparent 70%);
 transform:translateX(-165%);opacity:0
}
.mobile-nav:not([hidden]) a:hover,.mobile-nav:not([hidden]) a:focus-visible{
 border-color:rgba(var(--accent-rgb),.85)!important;
 background:linear-gradient(130deg,rgba(var(--accent-rgb),.18),rgba(var(--accent-rgb),.055))!important;
 box-shadow:0 0 20px rgba(var(--accent-rgb),.13),inset 0 1px rgba(255,255,255,.12);
 transform:translateY(-2px)
}
.mobile-nav:not([hidden]) a.ida-v33-pressed{
 transform:scale(.974)!important;
 border-color:var(--accent2)!important;
 box-shadow:inset 0 0 18px rgba(var(--accent-rgb),.24),0 0 28px rgba(var(--accent-rgb),.3)!important
}
.mobile-nav:not([hidden]) a.ida-v33-pressed::after{opacity:1;animation:ida-v33-menu-sweep .26s ease-out both}
@keyframes ida-v33-menu-sweep{from{transform:translateX(-150%)}to{transform:translateX(150%)}}
.desktop-nav a{border-radius:10px;padding:6px 8px;transition:background .25s,box-shadow .25s,transform .25s}
.desktop-nav a:hover,.desktop-nav a:focus-visible{background:rgba(var(--accent-rgb),.12);box-shadow:inset 0 0 0 .5px rgba(var(--accent-rgb),.35)}
/* Compact IDA PRO concepts, no legal-sector claims or fixed large heights. */
.pro-grid.ida-v33-sectors{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pro-grid.ida-v33-sectors .pro-card{
 padding:17px 16px!important;min-height:0!important;height:auto!important;
 border-radius:13px;display:flex!important;flex-direction:column!important
}
.pro-grid.ida-v33-sectors .pro-card h3{margin:9px 0 6px!important;font-size:17px;line-height:1.25}
.pro-grid.ida-v33-sectors .pro-card p{margin:0 0 10px;font-size:11.5px;line-height:1.55}
.pro-grid.ida-v33-sectors .pro-card .dev-status{margin-top:auto;padding-top:5px;font-size:9px}
.pro-grid.ida-v33-sectors .pro-card .text-link{margin-top:9px!important}
@media(max-width:950px){.pro-grid.ida-v33-sectors{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.pro-grid.ida-v33-sectors{gap:9px}.pro-grid.ida-v33-sectors .pro-card{padding:14px 12px!important}.pro-grid.ida-v33-sectors .pro-card h3{font-size:15px}.pro-grid.ida-v33-sectors .pro-card p{font-size:11px}}
/* Penrose is again a reliable interactive launcher. */
.ida-penrose-assistant.ida-guide-launch{position:relative;z-index:102;cursor:pointer;touch-action:manipulation}
.ida-penrose-assistant.ida-guide-launch svg,.ida-penrose-assistant.ida-guide-launch .penrose-mark{pointer-events:none}
.ida-guide-panel[hidden]{display:none!important}
.ida-guide-panel.ida-v33-messenger{
 position:fixed!important;z-index:500!important;
 top:calc(76px + env(safe-area-inset-top))!important;right:13px!important;
 bottom:auto!important;width:min(405px,calc(100vw - 26px))!important;
 max-height:min(680px,calc(100dvh - 95px - env(safe-area-inset-top)))!important;
 display:flex;flex-direction:column;gap:9px;
 padding:13px!important;overflow-y:auto;
 border-radius:22px;border-color:rgba(var(--accent-rgb),.35);
 box-shadow:0 20px 75px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.11)
}
.ida-v33-messenger .ida-guide-panel-head{
 display:flex;align-items:center;gap:8px;
 padding:7px 8px 9px;border-bottom:1px solid var(--line);margin:0!important
}
.ida-v33-messenger .ida-guide-panel-head .ida-guide-eyebrow{
 letter-spacing:.11em;font-size:9px;font-weight:700
}
.ida-v33-messenger .ida-guide-panel-head h2{font-size:17px!important;margin:3px 0!important;font-weight:550}
.ida-v33-messenger .ida-guide-panel-head p:not(.ida-guide-eyebrow){font-size:10px!important;margin:0!important;line-height:1.3!important;max-width:280px}
.ida-v33-messenger .ida-guide-close{flex-shrink:0;width:31px;height:31px;border-radius:50%;font-size:19px}
.ida-v33-minimize{flex-shrink:0;width:31px;height:31px;border-radius:50%;border:1px solid var(--line);background:var(--glass);color:var(--text);font-size:18px}
.ida-v33-status{font:600 9px/1.4 system-ui,sans-serif;color:var(--accent2);letter-spacing:.06em}
.ida-v33-status::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px;background:#67ca9f;box-shadow:0 0 9px rgba(81,188,144,.6)}
.ida-v33-messenger .ida-v30-conversation{
 flex:1 1 auto;min-height:140px;max-height:245px;
 border:0;background:rgba(var(--accent-rgb),.025);border-radius:15px;
 padding:13px 9px;gap:12px;scroll-behavior:smooth
}
.ida-v33-messenger .ida-v30-message{max-width:96%}
.ida-v33-messenger .ida-v30-avatar{width:25px;height:25px;border-radius:50%}
.ida-v33-messenger .ida-v30-avatar svg{width:21px;height:21px}
.ida-v33-messenger .ida-v30-bubble{
 padding:10px 12px!important;font-size:12px!important;line-height:1.5!important;
 border-radius:15px 15px 15px 4px!important;
 box-shadow:0 2px 10px rgba(0,0,0,.07)
}
.ida-v33-messenger .ida-v30-message.user .ida-v30-bubble{
 background:linear-gradient(135deg,rgba(var(--accent-rgb),.27),rgba(var(--accent-rgb),.16))!important;
 border-radius:15px 15px 4px 15px!important
}
.ida-v33-messenger .ida-guide-options{order:3;gap:6px;margin:2px 0!important;max-height:105px;overflow-y:auto}
.ida-v33-messenger .ida-guide-options button{
 font-size:10px;padding:7px 10px;border-radius:20px;
 background:var(--glass);border:1px solid var(--strong-line)
}
.ida-v33-messenger .ida-v29-chat{order:2;margin:0!important;display:grid;grid-template-columns:1fr auto;gap:5px}
.ida-v33-messenger .ida-v29-chat label{grid-column:1/-1;font-size:10px;color:var(--soft)}
.ida-v33-messenger .ida-v29-chat textarea{
 grid-column:1;min-height:43px;height:43px;max-height:80px;resize:vertical;
 border-radius:15px;font-size:12px
}
.ida-v33-messenger .ida-v29-chat button{
 grid-column:2;grid-row:2;border-radius:15px;align-self:stretch;
 min-height:43px;font-size:11px;padding:5px 11px
}
.ida-v33-messenger .ida-v29-chat .ida-v29-count{grid-column:1/-1;font-size:9px;margin:0}
.ida-v33-messenger .ida-guide-fineprint{order:5;margin:2px 0!important;font-size:9px!important;line-height:1.4!important}
.ida-v33-messenger>.btn{order:4}
.ida-v33-messenger .ida-v30-conversation{order:1}
.ida-v33-messenger .ida-guide-panel-head{order:0}
@media(max-width:600px){
 .ida-guide-panel.ida-v33-messenger{
  top:calc(69px + env(safe-area-inset-top))!important;
  left:10px!important;right:10px!important;
  width:calc(100vw - 20px)!important;
  max-height:min(640px,calc(100dvh - 83px - env(safe-area-inset-top)))!important;
 }
 .ida-v33-messenger .ida-v30-conversation{min-height:125px;max-height:min(34dvh,225px)}
}
/* No-cost request to call back: email draft only, no unapproved send. */
.ida-v33-callback{max-width:430px;margin-top:22px;padding:17px!important;border-radius:17px}
.ida-v33-callback h3{font-size:20px;margin:0 0 7px}
.ida-v33-callback>p{font-size:11px!important;line-height:1.65!important;margin:0 0 14px}
.ida-v33-callback form{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ida-v33-callback label{display:grid;gap:5px;color:var(--muted);font-size:10px}
.ida-v33-callback label.ida-v33-full{grid-column:1/-1}
.ida-v33-callback input,.ida-v33-callback select{
 width:100%;min-width:0;border-radius:10px;background:var(--panel);color:var(--text);
 border:1px solid var(--strong-line);padding:11px 10px;font:12px/1.4 system-ui,sans-serif
}
.ida-v33-callback button{grid-column:1/-1;justify-content:center;width:100%}
.ida-v33-callback .ida-v33-notice{font-size:10px!important;line-height:1.6!important;margin:9px 0 0}
.ida-v33-callback .ida-v33-call-note{font-size:10px!important;color:var(--soft)}
@media(max-width:430px){.ida-v33-callback form{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
 .mobile-nav:not([hidden]) a,.ida-v33-silk,.ida-v33-messenger .ida-v30-message{animation:none!important;transition:none!important}
}
