@layer portal-defaults{:root{--portal-primary: #7cd5c5;--portal-accent: #94b7ff;--portal-surface: #08111f;--portal-font-heading: Inter, ui-sans-serif, system-ui, sans-serif;--portal-font-body: Inter, ui-sans-serif, system-ui, sans-serif;--portal-radius: 18px;--portal-content-width: 1200px;--portal-section-gap: 56px;color-scheme:dark;--cf-text: #ebf1fb;--cf-muted: #9cadc6;--cf-surface: color-mix(in srgb, var(--portal-surface) 92%, #ffffff 8%);--cf-surface-strong: color-mix(in srgb, var(--portal-surface) 86%, #ffffff 14%);--cf-line: color-mix(in srgb, var(--portal-accent) 24%, transparent);--cf-shadow: 0 22px 48px rgba(0, 0, 0, .26)}[data-surface-mode=light]{color-scheme:light;--cf-surface: color-mix(in srgb, var(--portal-surface) 92%, #000000 2%);--cf-surface-strong: #ffffff;--cf-line: color-mix(in srgb, var(--portal-accent) 34%, transparent);--cf-text: #101827;--cf-muted: #55637a;--cf-shadow: 0 18px 40px rgba(15, 23, 42, .12)}}:root{--portal-radius-sm: 12px;--portal-radius-pill: 999px;--cf-bg: var(--portal-surface);--cf-bg-soft: color-mix(in srgb, var(--portal-surface) 88%, #ffffff);--cf-accent: var(--portal-primary);--cf-accent-strong: var(--portal-accent);--page-turn-out: .2s;--page-turn-in: 133ms;font-family:var(--portal-font-body)}html{background-color:var(--cf-bg);background-image:radial-gradient(circle at top left,color-mix(in srgb,var(--portal-primary) 14%,transparent),transparent 32%),radial-gradient(circle at bottom right,color-mix(in srgb,var(--portal-accent) 16%,transparent),transparent 28%);background-repeat:no-repeat;background-attachment:fixed}h1,h2,h3,h4{font-family:var(--portal-font-heading)}body{margin:0;min-height:100vh;color:var(--cf-text);background:transparent}*,*:before,*:after{box-sizing:border-box}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.cf-page{width:min(var(--portal-content-width),calc(100% - 32px));margin:0 auto;padding:12px 0 24px}.cf-page:has(.portal-reader-workbench){padding:6px 0 4px;width:calc(100% - 20px);max-width:2400px}.cf-surface,.cf-card{border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-surface);box-shadow:var(--cf-shadow)}.cf-card{padding:16px;background:var(--cf-surface-strong)}.portal-shell{display:flex;flex-direction:column;gap:8px;min-height:0}.portal-shell:has(.portal-reader-workbench){height:calc(100vh - 10px);overflow:hidden}.portal-masthead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;flex-shrink:0;background:radial-gradient(circle at top right,rgba(142,197,255,.14),transparent 28%),radial-gradient(circle at left center,rgba(124,213,197,.14),transparent 32%),var(--cf-surface)}.portal-brand{display:flex;align-items:center;gap:10px;min-width:0}.portal-brand-name{display:block;margin:0;font-family:var(--portal-font-heading);font-size:1.05rem;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-brand-logo{display:block;max-height:32px;width:auto}.portal-kicker,.portal-status-label{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cf-accent)}.portal-subtitle,.portal-copy,.portal-detail,.portal-empty,.portal-meta,.portal-list li{color:var(--cf-muted);line-height:1.6}.portal-nav-desktop{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.portal-nav-desktop a,.portal-action{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:5px 12px;border-radius:999px;border:1px solid var(--cf-line);background:#ffffff0a;font-size:.85rem;transition:transform .12s ease,border-color .12s ease;cursor:pointer;color:var(--cf-text)}.portal-nav-desktop a:hover,.portal-action:hover{transform:translateY(-1px);border-color:#8ec5ff66}.portal-nav-desktop a:focus-visible,.portal-action:focus-visible{outline:2px solid rgba(142,197,255,.72);outline-offset:2px}.portal-hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;padding:0;border:1px solid var(--cf-line);border-radius:8px;background:#ffffff0a;cursor:pointer}.portal-hamburger-bar{display:block;width:18px;height:2px;background:var(--cf-text);border-radius:1px}.portal-mobile-menu-backdrop,.portal-mobile-menu{display:none}.portal-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;border:1px solid var(--cf-line);background:#7cd5c514;color:var(--cf-accent);font-size:.75rem;width:fit-content}.portal-resumed-pill{margin:0 auto}.portal-section{padding:20px}.portal-section h2{margin:0}.portal-publication-list,.portal-publication-grid{display:grid;gap:14px;margin-top:16px}.portal-publication-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch;gap:18px}.portal-publication-card{display:grid;gap:12px;padding:18px;border-radius:18px;border:1px solid var(--cf-line);background:#ffffff08}.portal-library-card{padding:12px;border-color:#7cd5c547;background:radial-gradient(circle at top left,rgba(32,118,153,.34),transparent 34%),radial-gradient(circle at bottom right,rgba(91,63,180,.38),transparent 40%),linear-gradient(145deg,#050c19fa,#12122ef5);box-shadow:0 24px 52px #00000057,inset 0 0 0 1px #ffffff0a}.portal-library-card-shell{display:grid;gap:14px;min-height:100%;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#0207138a}.portal-library-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.portal-library-card-head h3{margin:.35rem 0 0;font-size:clamp(1.15rem,1.5vw,1.45rem);line-height:1.1}.portal-library-status{display:grid;gap:4px;min-width:76px;padding:9px 12px;border:1px solid rgba(124,213,197,.24);border-radius:12px;background:#0c223ac2;text-align:right}.portal-library-status span,.portal-library-meta-grid span{color:var(--cf-muted);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.portal-library-status strong,.portal-library-meta-grid strong{color:#fff;font-size:.9rem}.portal-library-cover-wrap{aspect-ratio:2 / 3;min-height:320px;overflow:hidden;border-radius:16px;background:#00000047;filter:drop-shadow(0 18px 28px rgba(0,0,0,.28))}.portal-library-cover-wrap .portal-reader-page{width:100%;height:100%;max-width:none}.portal-library-cover-wrap .portal-reader-cover-gradient{height:42%;padding:clamp(18px,3vw,34px)}.portal-library-cover-wrap .portal-reader-cover-title-block h2{font-size:clamp(2rem,4vw,3.35rem)}.portal-library-copy-panel{min-height:112px;padding:14px 16px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#01051094;color:var(--cf-text)}.portal-library-copy-panel p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;margin:0;line-height:1.65}.portal-library-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.portal-library-meta-grid div{display:grid;gap:6px;min-width:0;padding:12px 10px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:#ffffff0a;text-align:center}.portal-library-meta-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-library-actions{margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.portal-library-primary-action{border-color:#7cd5c575;background:#7cd5c51f;color:#bffcf4}.portal-library-primary-action[data-access-state=sign-in-required]{border-color:#94b7ff75;background:#94b7ff1f;color:#dbe7ff}.portal-library-primary-action[data-access-state=entitlement-required]{border-color:#facc156b;background:#facc151a;color:#fdf1c4}.portal-library-gate-note{margin:12px 0 0;font-size:13px;line-height:1.5;color:#e2e8f0b8}.portal-library-gate-note[data-access-state=entitlement-required]{color:#fdf1c4db}.portal-preview-notice{border-color:#fde04752;background:#fde0470f}.portal-library-preview-banner{margin:0 0 20px;padding:12px 16px;border:1px solid rgba(253,224,71,.32);border-radius:12px;background:#fde04714;color:#fef9c3eb;font-size:13px;line-height:1.6}.portal-publication-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center}.portal-publication-meta{display:flex;flex-wrap:wrap;gap:12px;color:var(--cf-muted);font-size:.92rem}.portal-publication-actions{display:flex;flex-wrap:wrap;gap:8px}.portal-action[aria-disabled=true]{opacity:.45;pointer-events:none}.portal-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px}.portal-stack,.portal-card-grid,.portal-list{display:grid;gap:14px}.portal-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-list{padding-left:18px;margin:0}.portal-status{display:grid;gap:12px;align-content:start}.portal-status-item{padding:14px 16px;border-radius:18px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);display:grid;gap:6px}.portal-reader-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:20px;align-items:start}.portal-cover{width:100%;border-radius:18px;border:1px solid var(--cf-line);background:#ffffff08}.portal-reader-locked{max-width:960px;margin:0 auto}.portal-gated-detail{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:28px;align-items:start}.portal-gated-cover{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 18px 40px #0206178c}.portal-gated-copy{display:flex;flex-direction:column;gap:12px}.portal-gated-copy h2{margin:0}.portal-gated-copy .portal-publication-actions{margin-top:4px}@media (max-width: 720px){.portal-gated-detail{grid-template-columns:minmax(0,1fr);gap:20px}.portal-gated-cover{max-width:240px;margin:0 auto}}.portal-reader-workbench{display:grid;grid-template-columns:260px minmax(0,1fr) 280px;grid-template-rows:minmax(0,1fr);gap:8px;flex:1 1 0;min-height:0;overflow:hidden}.portal-reader-workbench--chapters-hidden.portal-reader-workbench--chat-hidden{grid-template-columns:minmax(0,1fr)}.portal-reader-workbench--chapters-hidden:not(.portal-reader-workbench--chat-hidden){grid-template-columns:minmax(0,1fr) 280px}.portal-reader-workbench--chat-hidden:not(.portal-reader-workbench--chapters-hidden){grid-template-columns:260px minmax(0,1fr)}.portal-reader-chapters-sidebar{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:14px;background:var(--cf-surface);border:1px solid rgba(255,255,255,.05);overflow:hidden;min-height:0}.portal-reader-sidebar-head{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.portal-sidebar-close{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--cf-line);border-radius:6px;background:#ffffff0a;color:var(--cf-muted);font-size:1.1rem;cursor:pointer;line-height:1}.portal-sidebar-close:hover{color:var(--cf-text);border-color:#8ec5ff66}.portal-reader-chapter-list{display:flex;flex-direction:column;gap:1px;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;padding-right:4px}.portal-reader-chapter-item{display:flex;flex-direction:column;gap:1px;padding:5px 8px;border:0;border-radius:6px;background:transparent;color:var(--cf-muted);text-align:left;cursor:pointer;font-size:.82rem;line-height:1.35;transition:background 80ms ease;flex-shrink:0}.portal-reader-chapter-item:hover{background:#ffffff0d;color:var(--cf-text)}.portal-reader-chapter-item-active{background:#7cd5c51a;color:var(--cf-text)}.portal-reader-chapter-item-active .portal-reader-chapter-title{color:var(--cf-accent)}.portal-reader-chapter-act{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cf-accent);opacity:.7}.portal-reader-chapter-title{font-weight:600;font-size:.82rem}.portal-reader-chapter-pages{font-size:.7rem;opacity:.55}.portal-reader-main-panel{display:flex;flex-direction:column;gap:0;min-height:0;overflow:hidden;position:relative}.portal-reader-topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px;flex-shrink:0;border-radius:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.04)}.portal-reader-topbar-left,.portal-reader-topbar-right{display:flex;align-items:center;gap:4px;min-width:0}.portal-reader-topbar-center{display:flex;align-items:center;gap:6px}.portal-reader-title-compact{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.portal-reader-progress-compact{font-size:.8rem;color:var(--cf-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.portal-topbar-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--cf-line);border-radius:7px;background:#ffffff0a;color:var(--cf-muted);cursor:pointer;transition:border-color 80ms ease,color 80ms ease}.portal-topbar-btn:hover:not(:disabled){color:var(--cf-text);border-color:#8ec5ff66}.portal-topbar-btn:disabled{opacity:.3;cursor:default}.portal-topbar-btn-mobile-chat{display:none}.portal-reader-progress-bar{height:2px;background:#ffffff0f;border-radius:1px;overflow:hidden;flex-shrink:0;margin-top:2px}.portal-reader-progress-fill{height:100%;background:var(--cf-accent);border-radius:1px;transition:width .25s ease}.portal-reader-fetch-status{position:absolute;top:38px;left:0;right:0;z-index:6;pointer-events:none;font-size:.72rem;color:var(--cf-accent);text-align:center;padding:1px 0}.portal-reader-stage{flex:1 1 0;min-height:0;overflow-y:hidden;overflow-x:hidden;border-radius:12px;padding:10px;margin-top:3px;background:radial-gradient(circle at top,rgba(255,255,255,.05),transparent 40%),linear-gradient(180deg,#141d2ff5,#0a111dfa);box-shadow:inset 0 0 0 1px #8ec5ff0f;opacity:1;transition:opacity var(--page-turn-out) ease}.portal-reader-stage-turning{opacity:0;transition:opacity var(--page-turn-in) ease}.portal-reader-spread{display:flex;gap:0;justify-content:center;align-items:stretch;height:100%;min-height:0;filter:drop-shadow(0 24px 42px rgba(0,0,0,.28))}.portal-reader-spread-has-next{gap:0}.portal-reader-page{position:relative;flex:1 1 0;min-width:0;max-width:68ch;height:100%;box-sizing:border-box;overflow:hidden;padding:clamp(16px,2.5vw,40px) clamp(16px,2.5vw,44px) clamp(26px,3vw,52px);border-radius:12px;background:radial-gradient(ellipse at center,rgba(255,255,255,.36),transparent 62%),linear-gradient(180deg,#f6efe1fe,#ebe1ccfc);box-shadow:inset 0 0 0 1px #67533814,inset 0 0 32px #61492a14}.portal-reader-page-left{border-radius:12px 2px 2px 12px;box-shadow:inset 0 0 0 1px #67533814,inset 22px 0 28px -24px #170e077a,inset -30px 0 34px -28px #28190c57}.portal-reader-page-left:after{content:"";position:absolute;top:0;right:-1px;bottom:0;width:38px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(41,27,13,.25) 62%,rgba(0,0,0,.42))}.portal-reader-page-right{border-radius:2px 12px 12px 2px;box-shadow:inset 0 0 0 1px #67533814,inset -22px 0 28px -24px #170e077a,inset 30px 0 34px -28px #28190c57}.portal-reader-page-right:before{content:"";position:absolute;top:0;left:-1px;bottom:0;width:38px;pointer-events:none;background:linear-gradient(270deg,transparent,rgba(41,27,13,.25) 62%,rgba(0,0,0,.42))}.portal-reader-page-single{box-shadow:inset 0 0 0 1px #67533814,inset 20px 0 28px -24px #170e076b,inset -20px 0 28px -24px #170e076b,0 18px 36px #0003}.portal-reader-page-dark{background:radial-gradient(ellipse at center,rgba(255,255,255,.06),transparent 64%),linear-gradient(180deg,#1f2530,#151923)}.portal-reader-page-dark .portal-reader-kicker,.portal-reader-page-dark .portal-reader-act-label,.portal-reader-page-dark .portal-reader-illustration figcaption{color:#b8aa91}.portal-reader-page-dark .portal-reader-body,.portal-reader-page-dark h3{color:#eee6d7}.portal-reader-kicker,.portal-reader-act-label{color:#6f5e47;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.portal-reader-page h3{margin:10px 0 0;font-size:clamp(1.5rem,2.2vw,2.2rem);line-height:1.08;color:#2f2619;text-wrap:balance}.portal-reader-act-label{margin-top:10px;letter-spacing:.12em}.portal-reader-page-number{position:absolute;right:18px;top:16px;z-index:2;font-size:.68rem;letter-spacing:.12em;color:#ffffffb8;text-transform:uppercase}.portal-reader-page-cover{padding:0;background:#111827}.portal-reader-cover-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.portal-reader-cover-gradient{position:absolute;left:0;right:0;bottom:0;height:34%;display:flex;align-items:end;padding:clamp(22px,4vw,52px);box-sizing:border-box;background:linear-gradient(0deg,rgba(0,0,0,.82),rgba(0,0,0,.44) 34%,transparent 72%)}.portal-reader-cover-gradient-top{top:0;bottom:auto;align-items:start;background:linear-gradient(180deg,rgba(0,0,0,.78),rgba(0,0,0,.4) 34%,transparent 72%)}.portal-reader-cover-gradient-center{top:0;bottom:0;height:auto;align-items:center;background:#00000061}.portal-reader-cover-gradient-bottom{align-items:end;background:linear-gradient(0deg,rgba(0,0,0,.78),rgba(0,0,0,.46) 64%,transparent)}.portal-reader-cover-title-block{color:#fff8ea;text-shadow:0 2px 14px rgba(0,0,0,.8)}.portal-reader-cover-title-block p{margin:.35rem 0 0;font-size:clamp(.76rem,.7rem + .22vw,.95rem);letter-spacing:.18em;text-transform:uppercase}.portal-reader-cover-title-block h2{margin:.25rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,5vw,4.4rem);line-height:.95;max-width:11ch}.portal-reader-cover-text-xs p{font-size:clamp(.56rem,.5rem + .14vw,.68rem)}.portal-reader-cover-text-xs h2{font-size:clamp(1.3rem,2.8vw,2.2rem)}.portal-reader-cover-text-compact p{font-size:clamp(.68rem,.62rem + .18vw,.82rem)}.portal-reader-cover-text-compact h2{font-size:clamp(1.8rem,4vw,3.2rem)}.portal-reader-cover-text-large p{font-size:clamp(.82rem,.75rem + .28vw,1rem)}.portal-reader-cover-text-large h2{font-size:clamp(2.6rem,6vw,5.4rem)}.portal-reader-cover-text-xl p{font-size:clamp(.88rem,.82rem + .32vw,1.1rem)}.portal-reader-cover-text-xl h2{font-size:clamp(3.2rem,7.5vw,6.8rem)}.portal-reader-cover-text-2xl p{font-size:clamp(.96rem,.9rem + .38vw,1.2rem)}.portal-reader-cover-text-2xl h2{font-size:clamp(4rem,9vw,8.5rem)}.portal-reader-cover-title-block h4{margin:.45rem 0 0;font-size:clamp(1rem,1.4vw,1.45rem);font-weight:500}.portal-reader-copyright{margin-top:28px;padding-top:18px;border-top:1px solid rgba(111,94,71,.25);font-size:.72rem;line-height:1.65;color:#6f5e47;text-align:center}.portal-reader-copyright p{margin:3px 0}.portal-reader-copyright-line{font-weight:600;font-size:.78rem;margin-bottom:6px!important}.portal-reader-copyright-disclaimer{margin-top:8px!important;font-style:italic}.portal-reader-copyright-version{margin-top:8px!important;opacity:.6}.portal-reader-copyright a{color:inherit;text-decoration:underline;text-underline-offset:2px}.portal-reader-page-dark .portal-reader-copyright{border-top-color:#b8aa9140;color:#b8aa91}.portal-reader-illustration{margin:14px 0;text-align:center}.portal-reader-cover-art{margin:20px auto 18px;text-align:center}.portal-reader-cover-art img{display:block;width:min(100%,360px);max-height:68vh;margin:0 auto;border-radius:12px;box-shadow:0 16px 34px #09111f2e}.portal-reader-illustration-after{margin-top:16px}.portal-reader-illustration img{width:100%;max-width:100%;display:block;margin:0 auto;border-radius:10px;box-shadow:0 10px 20px #09111f1f}.portal-reader-illustration figcaption{margin-top:6px;color:#6f5e47;font-size:.74rem;letter-spacing:.04em}.portal-reader-body{margin-top:14px;font-family:var(--reader-font-family, Georgia, "Times New Roman", serif);font-size:var(--reader-font-size, 18px);line-height:var(--reader-line-height, 1.72);color:#2f2619;font-kerning:normal;text-rendering:optimizeLegibility}.portal-reader-body p{margin-top:0;margin-bottom:.38em;text-indent:1.15em}.portal-reader-body p:first-child{text-indent:0}.portal-reader-body p:last-child{margin-bottom:0}.portal-reader-toc{margin-top:14px;font-family:var(--reader-font-family, Georgia, "Times New Roman", serif);font-size:var(--reader-font-size, 18px);line-height:var(--reader-line-height, 1.72);color:#2f2619}.portal-reader-toc h3{margin:0 0 .7em}.portal-reader-toc-list{display:grid;gap:.45em;margin:0;padding:0 0 0 1.1em;list-style:none}.portal-reader-toc-list li{padding-left:.35em}.portal-reader-page-dark .portal-reader-toc{color:#eee6d7}.portal-reader-body-chapter-opening p:first-child:first-letter{float:left;margin-right:.08em;font-size:2.45em;line-height:.92;font-weight:600;color:#584227}.portal-reader-tools-dock{position:absolute;right:16px;bottom:14px;z-index:8;display:grid;justify-items:end;gap:8px}.portal-reader-tools-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(142,197,255,.24);border-radius:999px;background:#0d1727d6;color:#dbeafe;box-shadow:0 14px 32px #00000052;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.portal-reader-tools-panel{width:min(280px,calc(100vw - 34px));padding:12px;border-radius:16px;border:1px solid rgba(142,197,255,.18);background:#0b1323f0;box-shadow:0 18px 48px #00000061;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portal-reader-tools-head{display:flex;align-items:start;justify-content:space-between;gap:8px;margin-bottom:10px}.portal-reader-tools-head p{margin:2px 0 0;font-size:.78rem;color:var(--cf-muted)}.portal-reader-tool-field{display:grid;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:8px;margin-top:8px;font-size:.8rem;color:var(--cf-muted)}.portal-reader-tool-field select{height:32px;border:1px solid var(--cf-line);border-radius:8px;background:#ffffff0d;color:var(--cf-text);padding:0 9px}.portal-reader-tool-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.portal-reader-tool-row button{min-height:32px;border:1px solid var(--cf-line);border-radius:9px;background:#ffffff0a;color:var(--cf-text);font-size:.78rem;cursor:pointer}.portal-reader-tool-row button:hover,.portal-reader-tool-row .portal-reader-tool-active{border-color:#7cd5c573;background:#7cd5c51f}.portal-reader-mobile-nav{display:none}.portal-reader-chat-panel{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:14px;background:var(--cf-surface);border:1px solid rgba(255,255,255,.05);overflow:hidden;min-height:0}.portal-reader-chat-head{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.portal-reader-agent-picker{display:grid;gap:3px;flex-shrink:0}.portal-reader-agent-picker-label{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cf-accent)}.portal-reader-agent-picker select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:32px;padding:5px 10px;border-radius:8px;border:1px solid var(--cf-line);background:#ffffff0a;color:var(--cf-text);font-size:.8rem;line-height:1.2}.portal-reader-agent-picker select:focus-visible{outline:2px solid rgba(142,197,255,.72);outline-offset:2px}.companion-container{display:flex;flex-direction:column;flex:1;min-height:0;gap:6px}.companion-messages{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:4px 2px}.companion-msg{padding:7px 9px;border-radius:10px;font-size:.82rem;line-height:1.5;max-width:92%}.companion-msg p{margin:2px 0 0;white-space:pre-wrap}.companion-msg-user{align-self:flex-end;background:#8ec5ff1f;border:1px solid rgba(142,197,255,.2);color:var(--cf-text)}.companion-msg-assistant{align-self:flex-start;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);color:var(--cf-muted)}.companion-msg-sender{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--cf-accent);margin-bottom:1px}.companion-msg-thinking{padding:8px 12px}.companion-thinking-dots{display:flex;gap:4px}.companion-thinking-dots-center{justify-content:center;padding:12px}.companion-thinking-dots span{width:5px;height:5px;border-radius:50%;background:var(--cf-accent);opacity:.4;animation:companion-dot-pulse 1.2s infinite}.companion-thinking-dots span:nth-child(2){animation-delay:.2s}.companion-thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes companion-dot-pulse{0%,80%,to{opacity:.3;transform:scale(.85)}40%{opacity:1;transform:scale(1.1)}}.companion-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:1;min-height:60px;padding:10px}.companion-empty-hint{color:var(--cf-muted);font-size:.82rem;text-align:center;margin:0}.companion-quick-actions{display:flex;flex-direction:column;gap:5px;width:100%}.companion-quick-btn{display:block;width:100%;padding:6px 9px;border:1px solid var(--cf-line);border-radius:8px;background:#ffffff08;color:var(--cf-text);font-size:.8rem;text-align:left;cursor:pointer;transition:border-color 80ms ease,background 80ms ease}.companion-quick-btn:hover{border-color:#8ec5ff66;background:#8ec5ff0f}.companion-status{font-size:.7rem;color:var(--cf-accent);text-align:center;padding:1px 0;flex-shrink:0}.companion-input-form{display:flex;gap:5px;align-items:flex-end;flex-shrink:0}.companion-input-form textarea{flex:1;min-height:34px;max-height:72px;padding:7px 9px;border-radius:8px;border:1px solid var(--cf-line);background:#ffffff0a;color:var(--cf-text);font-size:.82rem;resize:none;line-height:1.4}.companion-input-form textarea:focus-visible{outline:2px solid rgba(142,197,255,.72);outline-offset:1px}.companion-input-form textarea:disabled{opacity:.5}.companion-send-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--cf-line);border-radius:8px;background:#7cd5c51f;color:var(--cf-accent);cursor:pointer;transition:background 80ms ease,border-color 80ms ease;flex-shrink:0}.companion-send-btn:hover:not(:disabled){background:#7cd5c538;border-color:var(--cf-accent)}.companion-send-btn:disabled{opacity:.3;cursor:default}.portal-mobile-chat-backdrop,.portal-mobile-chat-drawer{display:none}.portal-mobile-chat-drawer-head{display:flex;justify-content:space-between;align-items:start;gap:8px;flex-shrink:0}.portal-mobile-chat-drawer-head h3{margin:4px 0 0;font-size:1rem}.portal-chapter-list{display:grid;gap:12px}.portal-chapter-link{display:grid;gap:4px;padding:12px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.06);background:#ffffff08;transition:border-color .16s ease,transform .16s ease}.portal-chapter-link:hover{transform:translateY(-1px);border-color:#8ec5ff66}.portal-chapter-link-current{border-color:#7cd5c573;background:#7cd5c514}body.portal-reader-focus-mode .portal-shell{gap:4px}body.portal-reader-focus-mode .portal-masthead{padding:4px 12px;opacity:.6;background:#09101cd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .15s ease}body.portal-reader-focus-mode .portal-masthead:hover{opacity:1}body.portal-reader-focus-mode .portal-reader-workbench{grid-template-columns:minmax(0,1fr)!important}@media (max-width: 1100px){.portal-reader-workbench{grid-template-columns:220px minmax(0,1fr) 260px}.portal-reader-workbench--chapters-hidden:not(.portal-reader-workbench--chat-hidden){grid-template-columns:minmax(0,1fr) 260px}.portal-reader-workbench--chat-hidden:not(.portal-reader-workbench--chapters-hidden){grid-template-columns:220px minmax(0,1fr)}.portal-reader-spread-has-next{gap:0}.portal-reader-page-right{display:none}.portal-reader-page-left{border-radius:12px;box-shadow:0 16px 40px #05091133,inset 0 0 0 1px #67533814}.portal-reader-body{line-height:var(--reader-line-height, 1.72)}}@media (max-width: 768px){.cf-page{width:calc(100% - 12px);padding:6px 0 12px}.cf-page:has(.portal-reader-workbench){padding:4px 0 2px;width:calc(100% - 8px)}.portal-shell:has(.portal-reader-workbench){height:calc(100vh - 6px)}.portal-shell{gap:4px}.portal-nav-desktop{display:none}.portal-hamburger{display:flex}.portal-mobile-menu-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#060c1880;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;border:0;padding:0}.portal-mobile-menu{display:flex;flex-direction:column;gap:4px;position:fixed;top:0;left:0;bottom:0;width:min(280px,80vw);padding:16px;background:#0b1323f5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-right:1px solid var(--cf-line);z-index:91;animation:portal-slide-in-left .2s ease}@keyframes portal-slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}.portal-mobile-menu a{display:block;padding:10px 12px;border-radius:10px;font-size:.95rem;transition:background .1s ease}.portal-mobile-menu a:hover{background:#ffffff0f}.portal-reader-workbench,.portal-reader-workbench--chapters-hidden,.portal-reader-workbench--chat-hidden,.portal-reader-workbench--chapters-hidden.portal-reader-workbench--chat-hidden{grid-template-columns:minmax(0,1fr)!important}.portal-reader-chapters-sidebar,.portal-reader-chat-panel{display:none!important}.portal-topbar-btn-chat{display:none}.portal-topbar-btn-mobile-chat{display:flex}.portal-reader-page-right{display:none}.portal-reader-page-left{border-radius:12px;box-shadow:0 12px 32px #0509112e,inset 0 0 0 1px #67533814}.portal-mobile-chat-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#060c1880;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;border:0;padding:0}.portal-mobile-chat-drawer{display:flex;flex-direction:column;gap:8px;position:fixed;top:0;right:0;bottom:0;width:min(360px,88vw);padding:14px;background:#0b1323f5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-left:1px solid var(--cf-line);z-index:91;animation:portal-slide-in-right .2s ease}@keyframes portal-slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}.portal-reader-mobile-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0;flex-shrink:0}.portal-mobile-nav-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;border:1px solid var(--cf-line);border-radius:8px;background:#ffffff0a;color:var(--cf-text);font-size:.82rem;cursor:pointer}.portal-mobile-nav-btn:disabled{opacity:.3;cursor:default}.portal-mobile-nav-page{font-size:.8rem;color:var(--cf-muted);font-variant-numeric:tabular-nums}.portal-nav-prev,.portal-nav-next{display:none}.portal-reader-title-compact{max-width:140px;font-size:.8rem}.portal-reader-stage{padding:6px}.portal-reader-page{padding:12px 10px 16px;border-radius:10px}.portal-reader-page h3{font-size:clamp(1.3rem,4vw,1.7rem)}.portal-reader-body{line-height:var(--reader-line-height, 1.72)}.portal-reader-body-chapter-opening p:first-child:first-letter{font-size:2.1em}.portal-grid,.portal-card-grid,.portal-reader-hero{grid-template-columns:minmax(0,1fr)}.portal-masthead{padding:6px 10px;border-radius:12px}.portal-brand-name{font-size:.95rem}.cf-surface,.cf-card{border-radius:12px}.portal-action{min-height:30px;padding:5px 10px;font-size:.82rem}}@media (max-width: 480px){.cf-page{width:calc(100% - 6px);padding:3px 0 6px}.cf-page:has(.portal-reader-workbench){padding:2px 0;width:calc(100% - 4px)}.portal-shell:has(.portal-reader-workbench){height:calc(100vh - 4px)}.portal-shell{gap:3px}.portal-masthead{padding:5px 8px;border-radius:8px}.portal-brand-name{font-size:.88rem}.portal-reader-topbar{padding:3px 5px}.portal-reader-title-compact{max-width:90px;font-size:.75rem}.portal-reader-progress-compact{font-size:.72rem}.portal-topbar-btn{width:26px;height:26px}.portal-reader-stage{padding:3px;margin-top:2px;border-radius:8px}.portal-reader-page{padding:8px 7px 12px;border-radius:6px}.portal-reader-body{line-height:var(--reader-line-height, 1.72)}.portal-reader-kicker{font-size:.64rem}.portal-reader-body-chapter-opening p:first-child:first-letter{font-size:1.9em}.portal-mobile-nav-btn{padding:5px 7px;font-size:.78rem}}.portal-landing{display:flex;flex-direction:column;gap:var(--portal-section-gap);padding:8px 0 72px}.portal-block{display:flex;flex-direction:column;gap:20px}.portal-block-header{display:flex;flex-direction:column;gap:10px;max-width:62ch}.portal-block-header h1,.portal-block-header h2{margin:0;font-size:clamp(1.6rem,1.1rem + 1.8vw,2.4rem);line-height:1.18;letter-spacing:-.015em;color:var(--cf-text)}.portal-block-subheading{margin:0;font-size:1.02rem;line-height:1.7;color:var(--cf-muted)}.portal-block-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.portal-action-primary{border-color:color-mix(in srgb,var(--portal-primary) 52%,transparent);background:color-mix(in srgb,var(--portal-primary) 16%,transparent);color:color-mix(in srgb,var(--portal-primary) 72%,var(--cf-text));font-weight:600}.portal-action-primary:hover{background:color-mix(in srgb,var(--portal-primary) 26%,transparent)}.portal-hero{gap:28px;padding:clamp(28px,4vw,64px) 0 clamp(12px,2vw,24px)}.portal-hero[data-align=center][data-has-media=false] .portal-hero-copy{align-items:center;text-align:center;margin:0 auto}.portal-hero[data-has-media=true]{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center}.portal-hero-copy{display:flex;flex-direction:column;gap:18px;max-width:34ch}.portal-hero[data-align=center][data-has-media=false] .portal-hero-copy{max-width:46ch}.portal-hero-copy h1{margin:0;font-size:clamp(2.1rem,1.3rem + 3.6vw,3.8rem);line-height:1.05;letter-spacing:-.03em;color:var(--cf-text)}.portal-hero-subheading{margin:0;font-size:clamp(1.02rem,.96rem + .4vw,1.2rem);line-height:1.65;color:var(--cf-muted)}.portal-hero-media img{display:block;width:100%;height:auto;border-radius:var(--portal-radius);box-shadow:var(--cf-shadow)}.portal-stat-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;margin:0;overflow:hidden;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-line)}.portal-stat-item{padding:22px 24px;background:var(--cf-surface)}.portal-stat-item dt{margin:0;font-family:var(--portal-font-heading);font-size:1.4rem;font-weight:650;letter-spacing:-.02em;color:color-mix(in srgb,var(--portal-primary) 68%,var(--cf-text))}.portal-stat-item dd{margin:6px 0 0;font-size:.92rem;line-height:1.5;color:var(--cf-muted)}.portal-feature-items{display:grid;gap:16px}.portal-feature-items[data-columns="1"]{grid-template-columns:minmax(0,1fr)}.portal-feature-items[data-columns="2"]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.portal-feature-items[data-columns="3"]{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.portal-feature-items[data-columns="4"]{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.portal-feature-item{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-surface)}.portal-feature-item h3{margin:0;font-size:1.1rem;letter-spacing:-.01em;color:var(--cf-text)}.portal-feature-item p{margin:0;font-size:.95rem;line-height:1.65;color:var(--cf-muted)}.portal-step-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:0;padding:0;list-style:none;counter-reset:portal-step}.portal-step{display:flex;gap:16px;align-items:flex-start;padding:22px;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-surface)}.portal-step-number{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:var(--portal-radius-pill);border:1px solid color-mix(in srgb,var(--portal-primary) 44%,transparent);background:color-mix(in srgb,var(--portal-primary) 14%,transparent);font-family:var(--portal-font-heading);font-size:.95rem;font-weight:650;color:color-mix(in srgb,var(--portal-primary) 74%,var(--cf-text))}.portal-step-copy{display:flex;flex-direction:column;gap:8px}.portal-step-copy h3{margin:0;font-size:1.05rem;color:var(--cf-text)}.portal-step-copy p{margin:0;font-size:.95rem;line-height:1.65;color:var(--cf-muted)}.portal-media-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}.portal-media-split[data-media-first=false] .portal-media-split-media{order:2}.portal-media-split-media img{display:block;width:100%;height:auto;border-radius:var(--portal-radius);box-shadow:var(--cf-shadow)}.portal-media-split-copy{display:flex;flex-direction:column;gap:14px}.portal-media-split-copy h2{margin:0;font-size:clamp(1.5rem,1.1rem + 1.4vw,2.1rem);line-height:1.2;color:var(--cf-text)}.portal-testimonial-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.portal-testimonial{display:flex;flex-direction:column;gap:14px;margin:0;padding:24px;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-surface)}.portal-testimonial blockquote{margin:0;font-size:1.02rem;line-height:1.7;color:var(--cf-text)}.portal-testimonial figcaption{font-size:.88rem;color:var(--cf-muted)}.portal-logo-items{display:flex;flex-wrap:wrap;gap:14px 32px;align-items:center;margin:0;padding:0;list-style:none}.portal-logo-item img{max-height:34px;width:auto;opacity:.82}.portal-logo-item span{font-size:.95rem;color:var(--cf-muted)}.portal-library-rail-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.portal-rail-card{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-surface)}.portal-rail-cover{display:block;position:relative;overflow:hidden;border-radius:var(--portal-radius-sm);box-shadow:var(--cf-shadow)}.portal-rail-copy{display:flex;flex-direction:column;gap:10px}.portal-rail-copy h3{margin:0;font-size:1.05rem;line-height:1.3;color:var(--cf-text)}.portal-rail-copy p{margin:0;font-size:.92rem;line-height:1.6;color:var(--cf-muted);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.portal-rail-action{align-self:flex-start;margin-top:auto}.portal-pricing-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.portal-pricing-item{display:flex;flex-direction:column;gap:12px;padding:24px;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-surface)}.portal-pricing-item h3{margin:0;font-size:1.05rem;color:var(--cf-text)}.portal-pricing-item p{margin:0;font-size:.94rem;line-height:1.6;color:var(--cf-muted)}.portal-pricing-value{font-family:var(--portal-font-heading);font-size:1.8rem!important;font-weight:650;letter-spacing:-.02em;color:color-mix(in srgb,var(--portal-primary) 70%,var(--cf-text))!important}.portal-faq-items{display:flex;flex-direction:column;gap:1px;overflow:hidden;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-line)}.portal-faq-item{background:var(--cf-surface)}.portal-faq-item summary{padding:18px 22px;cursor:pointer;font-family:var(--portal-font-heading);font-size:1rem;font-weight:600;color:var(--cf-text);list-style:none}.portal-faq-item summary::-webkit-details-marker{display:none}.portal-faq-item summary:after{content:"+";float:right;color:var(--cf-muted);font-weight:400}.portal-faq-item[open] summary:after{content:"−"}.portal-faq-item summary:focus-visible{outline:2px solid var(--portal-primary);outline-offset:-2px}.portal-faq-item p{margin:0;padding:0 22px 20px;font-size:.95rem;line-height:1.7;color:var(--cf-muted)}.portal-cta-band{align-items:center;gap:16px;padding:clamp(32px,4vw,56px) 28px;text-align:center;border:1px solid color-mix(in srgb,var(--portal-primary) 30%,var(--cf-line));border-radius:var(--portal-radius);background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--portal-primary) 16%,transparent),transparent 62%),var(--cf-surface)}.portal-cta-band h2{margin:0;font-size:clamp(1.6rem,1.2rem + 1.6vw,2.3rem);line-height:1.15;letter-spacing:-.02em;color:var(--cf-text)}.portal-cta-band .portal-block-subheading{max-width:52ch}.portal-cta-band .portal-block-actions{justify-content:center}.portal-rich-text{display:flex;flex-direction:column;gap:14px;max-width:68ch;font-size:1rem;line-height:1.75;color:var(--cf-muted)}.portal-rich-text h2,.portal-rich-text h3,.portal-rich-text h4{margin:8px 0 0;color:var(--cf-text)}.portal-rich-text p{margin:0}.portal-rich-text ul,.portal-rich-text ol{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px}.portal-rich-text a{color:color-mix(in srgb,var(--portal-primary) 72%,var(--cf-text));text-decoration:underline;text-underline-offset:3px}.portal-rich-text strong{color:var(--cf-text)}.portal-rich-text code{padding:2px 6px;border-radius:6px;background:color-mix(in srgb,var(--portal-accent) 14%,transparent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.portal-inline-notice{display:flex;flex-direction:column;gap:6px;padding:16px 20px}.portal-inline-notice p{margin:0;color:var(--cf-muted)}.portal-inline-notice-error{border-color:#f8717166}.portal-post-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.portal-post-card{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-surface)}.portal-post-media img{display:block;width:100%;height:auto;border-radius:var(--portal-radius-sm)}.portal-post-copy{display:flex;flex-direction:column;gap:10px}.portal-post-copy h2{margin:0;font-size:1.15rem;line-height:1.3;color:var(--cf-text)}.portal-post-copy p{margin:0;font-size:.94rem;line-height:1.65;color:var(--cf-muted)}.portal-post-meta{font-size:.86rem;color:var(--cf-muted)}.portal-post-tags{font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--cf-muted)}.portal-post-detail{max-width:74ch}.portal-post-detail h1{margin:0;font-size:clamp(1.8rem,1.3rem + 2vw,2.6rem);line-height:1.15;color:var(--cf-text)}.portal-post-hero{width:100%;height:auto;border-radius:var(--portal-radius);box-shadow:var(--cf-shadow)}.portal-footer{display:flex;flex-wrap:wrap;gap:18px 32px;justify-content:space-between;align-items:flex-start;margin-top:auto;padding:28px 24px;border-top:1px solid var(--cf-line);color:var(--cf-muted);font-size:.9rem}.portal-footer-brand{display:flex;flex-direction:column;gap:6px;max-width:46ch}.portal-footer-brand strong{font-family:var(--portal-font-heading);color:var(--cf-text)}.portal-footer-links{display:flex;flex-wrap:wrap;gap:10px 20px}.portal-footer-links a:hover{color:var(--cf-text);text-decoration:underline;text-underline-offset:3px}.portal-diagnostics{display:grid;gap:1px;margin:0;overflow:hidden;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-line)}.portal-diagnostic-row{display:grid;grid-template-columns:minmax(140px,220px) minmax(0,1fr);gap:16px;padding:16px 20px;background:var(--cf-surface)}.portal-diagnostic-row[data-warn=true]{background:#f8717114}.portal-diagnostic-row dt{font-size:.86rem;letter-spacing:.06em;text-transform:uppercase;color:var(--cf-muted)}.portal-diagnostic-row dd{display:flex;flex-direction:column;gap:6px;margin:0}.portal-diagnostic-row dd .portal-pill{align-self:flex-start;word-break:break-all}@media (max-width: 900px){.portal-hero[data-has-media=true],.portal-media-split{grid-template-columns:minmax(0,1fr);gap:24px}.portal-media-split[data-media-first=false] .portal-media-split-media{order:0}.portal-diagnostic-row{grid-template-columns:minmax(0,1fr);gap:8px}}@media (max-width: 640px){.portal-landing{gap:40px;padding-bottom:48px}.portal-hero{padding-top:16px}.portal-stat-items{grid-template-columns:minmax(0,1fr)}.portal-hero-copy{max-width:none}.portal-block-actions .portal-action{flex:1 1 auto;text-align:center}.portal-cta-band{padding:28px 18px}.portal-footer{flex-direction:column;padding:24px 16px}}.portal-admin{display:flex;flex-direction:column;gap:20px;padding:8px 0 64px}.portal-admin-header{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:16px 20px}.portal-admin-identity{margin:6px 0 0;font-family:var(--portal-font-heading);font-size:1.05rem;color:var(--cf-text)}.portal-admin-nav{display:flex;flex-wrap:wrap;gap:8px;padding:8px;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-surface)}.portal-admin-nav a{padding:8px 14px;border:1px solid transparent;border-radius:var(--portal-radius-pill);font-size:.9rem;color:var(--cf-muted)}.portal-admin-nav a:hover{color:var(--cf-text)}.portal-admin-nav a[aria-current=page]{border-color:color-mix(in srgb,var(--portal-primary) 46%,transparent);background:color-mix(in srgb,var(--portal-primary) 14%,transparent);color:color-mix(in srgb,var(--portal-primary) 74%,var(--cf-text))}.portal-admin-body{display:flex;flex-direction:column;gap:20px}.portal-admin-section{display:flex;flex-direction:column;gap:14px;padding:20px;border:1px solid var(--cf-line);border-radius:var(--portal-radius);background:var(--cf-surface)}.portal-admin-section h1{margin:0;font-size:1.5rem;color:var(--cf-text)}.portal-admin-section h2{margin:0;font-size:1.15rem;color:var(--cf-text)}.portal-admin-hint{margin:0;font-size:.92rem;line-height:1.6;color:var(--cf-muted)}.portal-admin-hint code,.portal-admin-steps code{padding:1px 5px;border-radius:5px;background:color-mix(in srgb,var(--portal-accent) 14%,transparent);font-size:.9em}.portal-admin-title-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.portal-admin-error,.portal-admin-success{margin:0;padding:12px 16px;border-radius:var(--portal-radius-sm);font-size:.92rem}.portal-admin-error{border:1px solid rgba(248,113,113,.4);background:#f871711a;color:#fecaca}.portal-admin-success{border:1px solid color-mix(in srgb,var(--portal-primary) 40%,transparent);background:color-mix(in srgb,var(--portal-primary) 10%,transparent);color:color-mix(in srgb,var(--portal-primary) 76%,var(--cf-text))}.portal-admin-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.portal-admin-tile{display:flex;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--cf-line);border-radius:var(--portal-radius-sm);background:var(--cf-surface-strong)}.portal-admin-tile:hover{border-color:color-mix(in srgb,var(--portal-primary) 40%,transparent)}.portal-admin-tile-value{font-family:var(--portal-font-heading);font-size:1.7rem;font-weight:650;color:color-mix(in srgb,var(--portal-primary) 70%,var(--cf-text))}.portal-admin-tile-label{font-size:.85rem;color:var(--cf-muted)}.portal-admin-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.portal-admin-list a{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid var(--cf-line);border-radius:var(--portal-radius-sm)}.portal-admin-list a:hover{border-color:color-mix(in srgb,var(--portal-primary) 40%,transparent)}.portal-admin-list-title{font-weight:600;color:var(--cf-text)}.portal-admin-list-meta{font-size:.82rem;color:var(--cf-muted)}.portal-admin-steps{display:flex;flex-direction:column;gap:8px;margin:0;padding-left:20px;font-size:.92rem;line-height:1.6;color:var(--cf-muted)}.portal-admin-steps strong{color:var(--cf-text)}.portal-admin-records{display:flex;flex-direction:column;gap:10px}.portal-admin-record{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:flex-start;padding:16px;border:1px solid var(--cf-line);border-radius:var(--portal-radius-sm);background:var(--cf-surface-strong)}.portal-admin-record-main{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1 1 320px}.portal-admin-record-title{font-family:var(--portal-font-heading);font-size:1.05rem;font-weight:600;color:var(--cf-text)}.portal-admin-record-title:hover{text-decoration:underline;text-underline-offset:3px}.portal-admin-record-meta{display:flex;flex-wrap:wrap;gap:10px;margin:0;font-size:.82rem;color:var(--cf-muted)}.portal-admin-record-summary{margin:0;font-size:.9rem;line-height:1.55;color:var(--cf-muted)}.portal-admin-record-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.portal-admin-record-actions form{display:contents}.portal-admin-status{padding:3px 10px;border-radius:var(--portal-radius-pill);border:1px solid var(--cf-line);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--cf-muted)}.portal-admin-status[data-status=published]{border-color:color-mix(in srgb,var(--portal-primary) 46%,transparent);background:color-mix(in srgb,var(--portal-primary) 12%,transparent);color:color-mix(in srgb,var(--portal-primary) 74%,var(--cf-text))}.portal-admin-status[data-status=draft]{border-color:#facc156b;background:#facc151a;color:#fdf1c4}.portal-admin-form{display:flex;flex-direction:column;gap:14px}.portal-admin-inline-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:16px;border:1px solid var(--cf-line);border-radius:var(--portal-radius-sm);background:var(--cf-surface-strong)}.portal-admin-inline-form label{display:flex;flex-direction:column;gap:6px;flex:1 1 200px;font-size:.85rem;color:var(--cf-muted)}.portal-admin-field{display:flex;flex-direction:column;gap:6px;min-width:0}.portal-admin-field>span{font-size:.85rem;color:var(--cf-muted)}.portal-admin-field small{font-size:.78rem;line-height:1.5;color:var(--cf-muted);opacity:.85}.portal-admin-field-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.portal-admin input[type=text],.portal-admin input:not([type]),.portal-admin input[type=file],.portal-admin textarea,.portal-admin select{width:100%;padding:9px 12px;border:1px solid var(--cf-line);border-radius:var(--portal-radius-sm);background:color-mix(in srgb,var(--portal-surface) 82%,#ffffff 6%);color:var(--cf-text);font-size:.92rem}.portal-admin textarea{resize:vertical;line-height:1.6;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88rem}.portal-admin input:focus-visible,.portal-admin textarea:focus-visible,.portal-admin select:focus-visible{outline:2px solid var(--portal-primary);outline-offset:1px}.portal-admin-checkbox{display:flex;gap:10px;align-items:center;font-size:.9rem;color:var(--cf-muted)}.portal-admin-checkbox input{width:auto}.portal-action-danger{border-color:#f8717161;color:#fecaca}.portal-action-danger:hover{background:#f871711f}.portal-admin button[disabled]{opacity:.4;cursor:not-allowed}.portal-admin-swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.portal-admin-swatch{display:flex;gap:10px;align-items:center}.portal-admin-swatch input[type=color]{width:46px;height:38px;padding:2px;cursor:pointer}.portal-admin-blocks{display:flex;flex-direction:column;gap:10px}.portal-admin-block{border:1px solid var(--cf-line);border-radius:var(--portal-radius-sm);background:var(--cf-surface-strong);overflow:hidden}.portal-admin-block-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:12px 16px}.portal-admin-block-toggle{display:flex;flex-direction:column;gap:3px;flex:1 1 220px;padding:0;border:0;background:none;text-align:left;cursor:pointer}.portal-admin-block-kind{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb,var(--portal-primary) 70%,var(--cf-text))}.portal-admin-block-summary{font-family:var(--portal-font-heading);font-size:1rem;color:var(--cf-text)}.portal-admin-block-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.portal-admin-block-controls form{display:contents}.portal-admin-block-form{display:flex;flex-direction:column;gap:14px;padding:16px;border-top:1px solid var(--cf-line);background:color-mix(in srgb,var(--portal-surface) 92%,#ffffff 3%)}.portal-admin-block-save{display:flex;gap:10px}.portal-admin-repeater{display:flex;flex-direction:column;gap:12px;margin:0;padding:14px;border:1px solid var(--cf-line);border-radius:var(--portal-radius-sm)}.portal-admin-repeater legend{padding:0 6px;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cf-muted)}.portal-admin-repeater-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) auto;gap:12px;align-items:end;padding-bottom:12px;border-bottom:1px dashed var(--cf-line)}.portal-admin-repeater-row:last-of-type{border-bottom:0;padding-bottom:0}.portal-admin-nav-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;align-items:end}.portal-admin-editor-head{display:flex;gap:12px;align-items:center;justify-content:space-between;font-size:.85rem;color:var(--cf-muted)}.portal-admin-editor{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.portal-admin-editor[data-preview=true]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.portal-admin-preview{padding:16px;border:1px solid var(--cf-line);border-radius:var(--portal-radius-sm);background:color-mix(in srgb,var(--portal-surface) 88%,#ffffff 4%);max-height:460px;overflow-y:auto}.portal-admin-media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.portal-admin-media-item{display:flex;flex-direction:column;gap:10px;margin:0;padding:12px;border:1px solid var(--cf-line);border-radius:var(--portal-radius-sm);background:var(--cf-surface-strong)}.portal-admin-media-item img{width:100%;height:120px;object-fit:cover;border-radius:var(--portal-radius-sm)}.portal-admin-media-placeholder{display:grid;place-items:center;height:120px;border:1px dashed var(--cf-line);border-radius:var(--portal-radius-sm);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cf-muted)}.portal-admin-media-item figcaption{display:flex;flex-direction:column;gap:3px;min-width:0}.portal-admin-media-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;color:var(--cf-text)}.portal-admin-media-meta{font-size:.78rem;color:var(--cf-muted)}.portal-preview-banner{margin:8px 0 0;padding:12px 18px;border:1px solid rgba(250,204,21,.44);border-radius:var(--portal-radius-sm);background:#facc151f;color:#fdf1c4;font-size:.9rem;letter-spacing:.02em}@media (max-width: 860px){.portal-admin-editor[data-preview=true],.portal-admin-repeater-row{grid-template-columns:minmax(0,1fr)}.portal-admin-record{flex-direction:column}}
