/* PiCraft shared styles: footer, skip link, focus ring, Miju, policy pages */
:root{--pc-midnight:#1F3064;--pc-indigo:#5146E5;--pc-teal:#149783;--pc-canvas:#F7F8FC;--pc-border:#DCE3F0}
.skipL{position:absolute;left:12px;top:-70px;z-index:300;background:#fff;color:#101B35;padding:10px 16px;border-radius:10px;font-weight:700;box-shadow:0 6px 20px rgba(0,0,0,.25);text-decoration:none}.skipL:focus{top:10px}
:where(a,button,summary,input,select,textarea):focus-visible{outline:3px solid #5146E5;outline-offset:3px;border-radius:6px}
.pav,.tpi{border-radius:50%;object-fit:cover}
.tabbar .tpi{width:27px;height:27px;background:none;box-shadow:0 3px 10px rgba(123,77,224,.35)}
/* footer */
.pcFt{background:#1F3064;color:#c9d1e8;padding:42px 0 30px;font:15px/1.6 "Segoe UI",system-ui,-apple-system,Roboto,sans-serif;text-align:left}
.pcFw{max-width:1060px;margin:0 auto;padding:0 20px}
.pcFg{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.25fr;gap:28px}
.pcFt a{color:#fff;text-decoration:none}.pcFt a:hover{text-decoration:underline}
.pcFt nav a{display:block;padding:3px 0;color:#d9defa}
.pcFt h2{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#9aa6d6;margin:0 0 8px}
.pcFl{display:inline-flex;align-items:center;gap:8px;font:800 21px/1 "Outfit","Segoe UI",sans-serif;margin-bottom:10px}.pcFl img{border-radius:9px}.pcFl b{color:#8f86ff}
.pcFb p{margin:0;max-width:340px;color:#b5bedf}
.pcFb .pcFq{font:700 17px/1.4 "Outfit","Segoe UI",sans-serif;color:#fff;margin:0 0 6px}
.pcFb .pcFq2{font-size:14.5px;line-height:1.55}
.pcFa{display:block;padding:3px 0;color:#b5bedf}
.pcFt nav a[href^="mailto"]{overflow-wrap:anywhere}
.pcFc{margin:26px 0 4px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);font-size:14px}
.pcFn{margin:0;font-size:13px;color:#98a3cf}
@media(max-width:980px){.pcFg{grid-template-columns:1fr 1fr 1fr}.pcFb{grid-column:1/-1}}
@media(max-width:620px){.pcFg{grid-template-columns:1fr 1fr}}
/* policy / info pages */
.pcDoc{max-width:800px;margin:0 auto;padding:8px 0 40px}
.pcDoc h2{font-size:22px;margin:30px 0 8px;line-height:1.3}
.pcDoc p,.pcDoc li{font-size:16.5px;line-height:1.7}
.pcDoc ul{padding-left:22px}
.pcDoc .pcUp{display:inline-block;background:#eef0ff;color:#3a30c9;border-radius:99px;padding:3px 12px;font-size:13px;font-weight:700}
.pcDoc details{background:#fff;border:1px solid #dce3f0;border-radius:14px;padding:14px 16px;margin:10px 0}
.pcDoc summary{cursor:pointer;font-weight:700}
.pcDoc details p{margin:8px 0 0}
.pcCt{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:18px 0}
.pcCt a{display:block;background:#fff;border:1px solid #dce3f0;border-radius:16px;padding:16px;text-decoration:none;color:#1c2333}
.pcCt a b{display:block;font-size:17px}.pcCt a span{color:#5b6580;font-size:14.5px}
/* landing: hero, paths, Miju, how it works */
.ldHero{background:radial-gradient(900px 400px at 85% -10%,rgba(255,255,255,.14),transparent),linear-gradient(135deg,#1F3064,#3A3FA6 58%,#5E55EE)}
.ldHg{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:center}
.ldHero h1{max-width:640px}
.ldCtaRow{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 26px}
.ldB1,.ldB2{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:14px;font-weight:800;font-size:16px;text-decoration:none!important;transition:transform .15s,box-shadow .15s;border:0;cursor:pointer;font-family:inherit}
.ldB1{background:#fff;color:#3a30c9!important;box-shadow:0 10px 26px rgba(0,0,0,.22)}
.ldB2{border:2px solid rgba(255,255,255,.75);color:#fff!important;background:rgba(255,255,255,.08)}
.ldB1:hover,.ldB2:hover{transform:translateY(-2px)}
#landing .ldHero a:focus-visible,#landing .ldHero button:focus-visible{outline-color:#FFD54A}
.ldEv{list-style:none;display:flex;flex-wrap:wrap;gap:10px 26px;margin:0;padding:0}
.ldEv li{display:flex;flex-direction:column;font-size:13.5px;opacity:.95}.ldEv b{font:800 26px/1.1 var(--display,"Outfit",sans-serif)}
.mjCard{background:rgba(255,255,255,.97);color:#1c2333;border-radius:24px;padding:20px;box-shadow:0 24px 50px rgba(0,0,0,.28);max-width:380px;margin-left:auto}
.mjTop{display:flex;align-items:center;gap:14px}.mjTop img{width:64px;height:64px;border-radius:18px}
.mjTop b{display:block;font:800 24px/1.1 var(--display,"Outfit",sans-serif)}.mjTop span{font-size:14px;color:#5b6580}
.ldHero .mjChat p{font-size:15px;line-height:1.45;margin:10px 0 0;padding:10px 14px;border-radius:16px;max-width:92%;opacity:1}
.mjChat .u{background:#e8edff;color:#27307a;margin-left:auto!important}
.mjChat .a{background:#f3efff;color:#33265f}
.mjTags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0}
.mjTags li{font-size:12.5px;font-weight:700;background:#eef0ff;color:#3a30c9;border-radius:99px;padding:4px 11px}
#ldPaths .ldHc{box-shadow:0 14px 32px rgba(28,35,51,.18)}
.mjW{display:grid;grid-template-columns:1fr 1.1fr;gap:34px;align-items:center}
.mjF{list-style:none;margin:18px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mjF li{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--pc-border);border-radius:14px;padding:10px 12px;font-weight:600;font-size:15px;line-height:1.35}.mjF i{font-style:normal;font-size:20px}
.mjFig{margin:0}.mjFig img{width:100%;height:auto;border-radius:24px;box-shadow:0 18px 44px rgba(81,70,229,.22);display:block}
.mjB{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.mjB .ldB1{background:linear-gradient(135deg,#5146E5,#7C3AED);color:#fff!important;box-shadow:0 10px 24px rgba(81,70,229,.35)}
.mjL{font-weight:800;color:var(--pc-indigo)}
.hwL{list-style:none;counter-reset:hw;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.hwL li{counter-increment:hw;background:#fff;border:1px solid var(--pc-border);border-radius:18px;padding:18px 16px}
.hwL li:before{content:counter(hw);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--pc-indigo);color:#fff;font-weight:800;margin-bottom:10px}
.hwL b{display:block;font-size:17px;margin-bottom:4px}.hwL span{color:#5b6580;font-size:14.5px;line-height:1.5}
.evNote{font-size:14px;color:#44506b;background:#fff;border:1px solid var(--pc-border);border-left:4px solid var(--pc-teal);border-radius:12px;padding:10px 14px;margin:0 0 20px}
.aiNote{font-size:12px;color:#5b6580;padding:6px 14px 0;line-height:1.4}
@media(max-width:980px){.hwL{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.ldHg,.mjW{grid-template-columns:1fr}.mjCard{margin:0;max-width:none}.mjF{grid-template-columns:1fr}.mjFig{order:-1}}
@media(max-width:560px){.hwL{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.ldB1,.ldB2{transition:none}}

/* wide tables scroll inside themselves instead of the page */
@media(max-width:700px){main table,#main table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}

/* Miju strip (auto-scrolling cards) */
.tmWrap{overflow:hidden;margin-top:22px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.tmTrack{display:flex;gap:18px;width:max-content;padding:6px 16px;animation:tmRun 70s linear infinite}
@keyframes tmRun{to{transform:translateX(calc(-50% - 9px))}}
.hmC{margin:0;position:relative;width:min(300px,76vw);aspect-ratio:720/900;flex:none;border-radius:22px;overflow:hidden;container-type:inline-size;box-shadow:0 12px 28px rgba(66,85,255,.16);background:#eef0ff}
.hmC img{display:block;width:100%;height:100%;object-fit:cover}
.hmC figcaption{position:absolute;left:11%;right:25%;top:33%;height:33%;display:flex;flex-direction:column;justify-content:center;gap:3.2cqw;color:#1b2160;text-align:left}
.hmTag{align-self:flex-start;font:800 3.5cqw/1 system-ui,sans-serif;letter-spacing:.07em;text-transform:uppercase;color:#4255FF;background:#eceeff;padding:1.4cqw 3cqw;border-radius:99px}
.hmC p{margin:0;font:700 5.6cqw/1.32 system-ui,sans-serif}
@media(prefers-reduced-motion:reduce){.tmTrack{animation:none;overflow-x:auto;width:auto}.hmC[aria-hidden]{display:none}.tmWrap{overflow-x:auto}}

/* light / dark switch button */
.thBtn{flex:none;width:38px;height:38px;border-radius:12px;border:1.5px solid #e3e6f0;background:#fff;color:#1c2333;display:inline-grid;place-items:center;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}
.thBtn .thSun{display:none}
html.dk .thBtn .thSun{display:block}
html.dk .thBtn .thMoon{display:none}
.topbar .thBtn{margin-left:2px}
@media(max-width:430px){.topbar .thBtn{width:34px;height:34px;border-radius:10px}}
