/* Only the dedicated private review document; theme templates are unchanged. */
body.qicp-review-document{margin:0;padding:0;background:#f8f8f8}
.qicp{width:100%;margin:0;overflow-wrap:anywhere;font-size:16px;line-height:1.85;color:var(--c-text)}
.qicp *, .qicp *::before,.qicp *::after{box-sizing:border-box}
.qicp h1,.qicp h2,.qicp h3,.qicp p{font-family:inherit;letter-spacing:normal}
.qicp a{color:inherit}
.qicp .skip-link{position:absolute;left:16px;top:8px;z-index:1000;background:white;padding:12px;transform:translateY(-200%)}
.qicp .skip-link:focus{transform:none}
.qicp .site-header{position:relative;background:var(--c-bg)}
.qicp .header-inner{position:relative}
.qicp .hero{background-image:url('city.jpg')}
.qicp .hero-actions>a:not(.btn){color:white;text-decoration:underline}
.qicp .section-heading{text-align:center;margin-bottom:32px}
.qicp .section-heading h2::after{content:"";display:block;width:44px;height:3px;background:var(--c-accent);margin:20px auto 0}
.qicp .research-hook{margin:0 auto 32px}
.qicp .research-hook .meta{font-size:13px}
.qicp .research-card p{margin-bottom:0}
.qicp .member-disclosure{display:block;min-width:0;align-self:start}
.qicp .member-disclosure summary{cursor:pointer;list-style:none;min-width:0}
.qicp .member-disclosure summary::-webkit-details-marker{display:none}
.qicp .member-disclosure[open]{border-color:var(--c-accent)}
.qicp .member-disclosure .card-body{display:flex;flex-direction:column;min-width:0}
.qicp .member-disclosure .meta,.qicp .member-disclosure .more{font-size:13px}
.qicp .member-disclosure .more{text-decoration:underline}
.qicp .member-bio{padding:0 24px 24px;border-top:1px solid var(--c-border)}
.qicp .member-bio p{padding-top:20px}
.qicp .publication-year{font-size:19px;font-weight:700;color:var(--c-text-sub)}
.qicp .result-item{max-width:var(--w-text);margin:auto}
.qicp .result-item p{font-size:16px}
.qicp .news-card h3{display:block;overflow:visible;-webkit-line-clamp:unset}
.qicp .news-card p{font-size:14px}
.qicp .news-meta{font-size:13px!important}
.qicp .news-blank{display:grid;place-items:center;font-size:13px;color:var(--c-text-sub)}
.qicp .news-card .card-body{display:block}
.qicp .news-card .card-body a{font-size:14px;text-decoration:underline}
.qicp .note{max-width:var(--w-text);margin:0 auto 24px;padding:16px;border-left:3px solid var(--c-accent);background:white;font-size:14px}
.qicp section[id]{scroll-margin-top:24px}
.qicp :is(a,button,summary):focus-visible{outline:2px solid var(--c-dark);outline-offset:3px}
.qicp .hero a:focus-visible{outline-color:white}
.qicp .footer-main a{color:white}
.qicp .main-nav a{min-height:44px;display:flex;align-items:center}
.qicp .language a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:1199px){.qicp .nav-area{position:static;flex-basis:100%;padding:16px 0;border:0}.qicp .header-inner{flex-wrap:wrap}.qicp .nav-area.open{display:block}.qicp .brand{min-width:0;flex:1}.qicp .brand span{min-width:0}.qicp .language{padding-top:8px}}
/* Open mobile navigation is a scrollable panel below the actual brand/admin bar. */
@media(max-width:1199px){
 .qicp .site-header .nav-area.open{max-height:var(--qicp-nav-max-height,calc(100vh - var(--qicp-header-compact) - var(--qicp-sticky-top) - 8px));max-height:var(--qicp-nav-max-height,calc(100dvh - var(--qicp-header-compact) - var(--qicp-sticky-top) - 8px));overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-gutter:stable;touch-action:pan-y}
}
@media(max-width:599px){.qicp .brand small{max-width:180px}.qicp .brand strong{font-size:18px}.qicp .news-card{grid-template-columns:56px minmax(0,1fr);gap:12px}.qicp .news-card>.news-blank{width:56px;height:56px}.qicp .section-heading{margin-bottom:24px}.qicp .result-item p{font-size:14px}}
.qicp:not(.qicp-ready) .nav-area{display:block}
.qicp:not(.qicp-ready) .menu-toggle{display:none}
.qicp .notice{grid-column:1/-1}
.qicp .member-grid>.note{grid-column:1/-1}
.qicp .news-meta,.qicp .research-tags,.qicp .research-hook>.meta,.qicp .member-card .meta,.qicp .member-card .more{font-size:13px!important}
.qicp #qicp-language-notice{margin-top:16px}
.qicp .member-detail>.avatar{width:112px;height:112px}
.qicp .member-detail .avatar .portrait{width:100%;height:100%;object-fit:contain}

/* Height belongs to this padding-free grid item; focus outlines stay visible at rest. */
.qicp .member-motion { grid-column: 1 / -1; min-width: 0; }

/* The sticky shell keeps the expanded flow height; only its painted header shrinks. */
.qicp { --qicp-sticky-top: 0px; --qicp-header-expanded: 130px; --qicp-header-compact: 96px; }
body.qicp-review-document.admin-bar .qicp { --qicp-sticky-top: 32px; }
.qicp .site-header { position: sticky; top: var(--qicp-sticky-top); z-index: 90; height: var(--qicp-header-flow, auto); min-height: var(--qicp-header-expanded); pointer-events: none; background: transparent; }
.qicp .site-header .header-band { position: relative; width: 100%; pointer-events: auto; background: var(--c-bg); box-shadow: none; transition: box-shadow 220ms cubic-bezier(.2,0,0,1); }
.qicp .site-header .header-inner { min-height: var(--qicp-header-expanded); transition: min-height 220ms cubic-bezier(.2,0,0,1), gap 220ms cubic-bezier(.2,0,0,1); }
.qicp .site-header .brand, .qicp .site-header .brand img, .qicp .site-header .brand strong, .qicp .site-header .brand small, .qicp .site-header .language { transition-duration: 220ms; transition-timing-function: cubic-bezier(.2,0,0,1); }
.qicp .site-header .brand { transition-property: gap; }
.qicp .site-header .brand img { transition-property: width, height; }
.qicp .site-header .brand strong { transition-property: font-size; }
.qicp .site-header .brand small { max-height: var(--qicp-affiliation-height, none); overflow: hidden; transition-property: opacity, max-height, margin; }
.qicp .site-header .language { transition-property: margin, font-size; }
@media(min-width:1200px) {
  .qicp .site-header .nav-area { min-width: 0; }
  .qicp .site-header .main-nav { flex-wrap: wrap; justify-content: flex-end; }
}
.qicp .site-header.is-compact .header-band { box-shadow: 0 3px 12px rgba(0,0,0,.10); }
.qicp .site-header.is-compact .header-inner { min-height: var(--qicp-header-compact); gap: 18px; }
.qicp .site-header.is-compact .brand { gap: 10px; }
.qicp .site-header.is-compact .brand img { width: 56px; height: 46px; }
.qicp .site-header.is-compact .brand strong { font-size: 18px; }
.qicp .site-header.is-compact .brand small { opacity: 0; max-height: 0; margin: 0; }
.qicp .site-header.is-compact .language { margin-top: 4px; font-size: 12px; }
.qicp section[id], .qicp h2[id], .qicp #contact, .qicp main, .qicp [tabindex="-1"] { scroll-margin-top: calc(var(--qicp-sticky-top) + var(--qicp-header-flow, var(--qicp-header-expanded)) + 24px); }
@media(max-width:1199px) {
  .qicp { --qicp-header-expanded: 116px; --qicp-header-compact: 72px; }
  .qicp .site-header.is-compact .header-inner { gap: 12px; }
}
@media(max-width:782px) { body.qicp-review-document.admin-bar .qicp { --qicp-sticky-top: 46px; } }
@media(max-width:600px) { body.qicp-review-document.admin-bar .qicp { --qicp-sticky-top: 0px; } }
@media(max-width:599px) {
  .qicp { --qicp-header-expanded: 100px; --qicp-header-compact: 64px; }
  .qicp .site-header.is-compact .brand img { width: 48px; height: 42px; }
  .qicp .site-header.is-compact .brand strong { font-size: 17px; }
}
@media(prefers-reduced-motion:reduce) {
  .qicp .site-header .header-band, .qicp .site-header .header-inner, .qicp .site-header .brand, .qicp .site-header .brand img, .qicp .site-header .brand strong, .qicp .site-header .brand small, .qicp .site-header .language { transition: none; }
}

/* Landing-only decorative Bloch sphere. It never captures pointer input or changes layout. */
.qicp .qicp-home{position:relative;isolation:isolate;min-width:0}
.qicp .qicp-home-content{position:relative;z-index:1}
.qicp .qicp-bloch-layer{position:absolute;inset:0;z-index:0;overflow:hidden;overflow:clip;pointer-events:none!important;user-select:none}
.qicp .qicp-bloch-viewport{position:sticky;top:calc(var(--qicp-sticky-top) + var(--qicp-header-compact));width:100%;height:calc(100vh - var(--qicp-sticky-top) - var(--qicp-header-compact));pointer-events:none!important}
.qicp .qicp-bloch-viewport>canvas,.qicp .qicp-bloch-static{display:block;width:100%;height:100%;max-width:none!important;pointer-events:none!important}
.qicp .qicp-bloch-toggle{position:absolute;z-index:2;top:496px;right:max(var(--gutter),calc((100% - var(--w-content))/2));min-height:44px;padding:8px 14px;border-color:rgba(28,49,76,.18);border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 1px 4px rgba(0,0,0,.06);font-size:12px;line-height:1.4;backdrop-filter:blur(5px)}
.qicp .qicp-bloch-toggle:hover{background:white}
@media(max-width:599px){.qicp .qicp-bloch-toggle{top:372px;right:var(--gutter);font-size:11px}}
@media(prefers-reduced-motion:reduce){.qicp .qicp-bloch-toggle{opacity:.72}}
@media print{.qicp .qicp-bloch-layer,.qicp .qicp-bloch-toggle{display:none!important}}
