.portrait-image{display:block;max-width:100%;width:100%;height:100%;object-fit:contain}.portrait-upload{display:flex;align-items:center;gap:20px;margin:24px 0;padding:20px;border:1px dashed var(--line);border-radius:12px;background:var(--soft)}.uploaded-preview{width:100px;height:115px;flex-shrink:0;display:grid;place-items:center;border-radius:10px;background:var(--surface);overflow:hidden;color:var(--muted);text-align:center;font-size:12px}.portrait-upload-label{position:relative;overflow:hidden;cursor:pointer}.portrait-upload-label input{position:absolute;width:100%;height:100%;inset:0;opacity:0;cursor:pointer}.portrait-upload-label:focus-within{outline:2px solid var(--green);outline-offset:3px}.portrait-upload p{margin:8px 0 0}.preview-portrait .portrait-image{height:210px}.card-portrait .portrait-image{height:140px}.character-identity>.portrait-image{height:260px}.bs-portrait{height:190px;margin:0 auto 20px;display:grid;place-items:center}.bs-portrait>svg{height:110px}.dossier-card>.portrait-image{height:160px;margin-bottom:18px}.panel>.portrait-image{max-width:220px;max-height:230px;margin:0 0 18px}
.portal-hero{display:grid;grid-template-columns:1fr 1fr;min-height:530px;position:relative;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:linear-gradient(135deg,var(--mint),var(--surface) 65%);margin-bottom:28px;isolation:isolate}.portal-hero-copy{padding:50px 0 36px 38px;z-index:2;min-width:0;display:flex;flex-direction:column;justify-content:center}.portal-hero .eyebrow{font-size:10px;letter-spacing:.16em;min-height:26px;margin:0 0 18px}.portal-hero h1{font:600 clamp(30px,3vw,46px)/1.16 Georgia,serif!important;letter-spacing:-.035em;min-height:115px;margin:0 0 18px}.portal-hero-description{max-width:380px;min-height:82px;margin:0 0 24px;color:var(--muted);font-size:15px}.portal-hero .button-row{gap:9px}.portal-hero .btn{font-size:12px;padding:11px 13px}.portal-hero-hint{font-size:10px;color:var(--muted);margin:35px 0 0}.portal-hero-hint span{display:block;letter-spacing:.13em;font-size:8px;margin-bottom:4px}.portal-stage{position:relative;display:grid;place-items:center;min-width:0;min-height:530px;isolation:isolate}.portal-stage-halo{position:absolute;width:85%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--green) 16%,transparent),transparent 68%);border:1px solid color-mix(in srgb,var(--green) 12%,transparent);z-index:-1}.portal-stage:after{content:'';position:absolute;bottom:66px;width:65%;height:20px;background:#1112;filter:blur(10px);border-radius:50%;z-index:-1}.portal-mascot{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;view-transition-name:portal-mascot;align-self:center;transform:translateY(-5px)}.portal-caption{position:absolute;bottom:24px;font-size:8px;letter-spacing:.2em;text-align:center;color:var(--muted);border:1px solid var(--line);padding:6px 12px;border-radius:30px;background:var(--surface)}body[data-game=blacksad] .portal-hero{background:repeating-linear-gradient(165deg,transparent 0 39px,#00000018 40px 55px),linear-gradient(135deg,#2b2925,#141b1b);border-radius:5px}body[data-game=vampire] .portal-hero{background:radial-gradient(ellipse at 78% 40%,#631e3a66,transparent 65%),linear-gradient(135deg,#28111d,#170f17);border-radius:9px}body[data-game=vampire] .portal-stage-halo{border-color:#b3637e44;background:radial-gradient(circle,#a42d5525,transparent 70%)}::view-transition-group(portal-mascot){animation-duration:.65s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}::view-transition-old(portal-mascot){animation:mascot-out .5s ease both;mix-blend-mode:normal}::view-transition-new(portal-mascot){animation:mascot-in .65s ease both;mix-blend-mode:normal}@keyframes mascot-out{to{opacity:0;filter:blur(7px)}}@keyframes mascot-in{from{opacity:0;filter:blur(7px)}to{opacity:1;filter:blur(0)}}
.edition-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.edition-card{display:flex;gap:20px;padding:30px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);transition:transform .2s,border-color .2s}.edition-card:hover{transform:translateY(-3px);border-color:var(--green);text-decoration:none}.edition-number{font:44px/1.1 Georgia,serif;color:var(--green);min-width:70px}.edition-card h2{margin:8px 0}.edition-card p{color:var(--muted);font-size:13px}.edition-switch{display:flex;gap:6px;padding:5px;border:1px solid var(--line);border-radius:8px;width:max-content;margin-bottom:28px}.edition-switch a{padding:8px 28px;color:var(--muted);border-radius:4px}.edition-switch a[aria-current]{background:var(--green);color:var(--paper)}.vtm-stat-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.vtm-stat-columns h3{font-size:13px;padding-bottom:12px;border-bottom:1px solid var(--line)}.vtm-stat-row{display:flex;gap:8px;align-items:center;justify-content:space-between;min-width:0;font-size:12px;margin:8px 0}.vtm-stat-row>span{overflow-wrap:anywhere}.vtm-stat-row .control{width:58px;flex-shrink:0;padding:6px}.vtm-stat-row b{white-space:nowrap;font-size:12px;color:var(--green);letter-spacing:1px}.vtm-discipline-row{display:grid;grid-template-columns:1fr 95px;gap:15px}.vtm-preview{align-self:start;position:sticky;top:calc(var(--header) + 20px)}.vtm-preview-portrait{height:210px;display:grid;place-items:center;background:radial-gradient(ellipse,#74224233,transparent)}.vtm-monogram{font:120px/1 Georgia,serif;color:var(--green);opacity:.3}.vtm-preview h2{overflow-wrap:anywhere;margin:12px 0}.vtm-preview-numbers{display:grid;grid-template-columns:1fr;gap:8px}.vtm-preview-numbers span{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:8px 0;font-size:13px}.vtm-preview-numbers b{color:var(--green)}.vtm-checklist{list-style:none;padding:0}.vtm-checklist li{padding:10px 0;border-bottom:1px solid var(--line)}.vtm-card-art{height:210px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse,#74224222,transparent);margin-bottom:20px}.vtm-identity{display:grid;grid-template-columns:200px 1fr;gap:30px;margin:22px 0}.vtm-identity .vtm-card-art{margin:0}.vtm-identity+.panel{margin-top:20px}#vtm-root>section.panel{margin:20px 0}.vtm-tag-list{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.vtm-tag-list span{padding:6px 12px;border:1px solid var(--line);border-radius:4px;font-size:13px}
body[data-page=play] .main-content{max-width:1480px}.play-topline{display:flex;align-items:center;gap:18px;margin-bottom:24px}.play-topline>label{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.play-topline select{max-width:320px}.play-local{font-size:11px;color:var(--muted);white-space:nowrap}.play-local i{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:5px}.play-layout{display:grid;grid-template-columns:200px minmax(0,1fr) 250px;gap:20px;align-items:start}.play-layout .panel{padding:22px}.play-sidebar{position:sticky;top:calc(var(--header) + 16px)}.play-portrait{height:145px;display:grid;place-items:center;margin-bottom:20px}.play-portrait>svg{width:110px;height:120px}.play-sidebar h2{font-size:21px;overflow-wrap:anywhere;margin:0 0 6px}.play-sidebar p{font-size:12px}.play-counters{display:grid;grid-template-columns:1fr 1fr;gap:12px 9px;margin-top:20px}.play-counters label{font-size:10px;color:var(--muted);display:grid;gap:5px}.play-counters input{padding:7px;width:100%;min-width:0;text-align:center;font-size:18px;font-weight:600}.play-counters label span{min-height:30px;display:flex;align-items:end}.play-main{display:grid;gap:20px;min-width:0}.play-main h2,.play-journal h2{font-size:23px;margin-bottom:20px}.play-main .section-heading,.play-journal .section-heading{margin:0}.play-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;align-items:end}.play-form-grid .field{min-width:0}.play-form-grid .btn{margin-bottom:18px}.play-form-grid .control{min-width:0;width:100%}.play-checks{display:grid;gap:9px;margin:5px 0 20px;font-size:13px}.play-advanced{padding:12px;border:1px solid var(--line);border-radius:8px;margin-bottom:18px}.play-advanced summary{font-size:12px;cursor:pointer}.play-advanced[open] summary{margin-bottom:15px}.play-advanced .field{margin-top:14px}.play-pool{font-size:13px;padding:14px;background:var(--soft);border-radius:8px;color:var(--green);font-variant-numeric:tabular-nums}.play-roll-button{width:100%;justify-content:center;min-height:50px}.play-no-roll{padding:36px 12px;text-align:center;color:var(--muted);font-size:14px}.play-no-roll small{font-size:12px}.play-result-heading{margin:24px 0 16px}.play-result-heading .eyebrow{font-size:9px;margin-bottom:8px}.play-result-heading h2{margin:0 0 6px;font-size:26px}.play-result-heading>span{color:var(--muted);font-size:13px}.play-dice{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.play-die{width:48px;height:50px;display:grid;place-items:center;border:2px solid var(--line);border-radius:9px;background:var(--soft);color:var(--ink);font-size:24px;font-weight:700;box-shadow:0 3px 0 var(--line);position:relative}.play-die.white{background:#f6f2e9;color:#282929;border-color:#c5bfb3}.play-die.black{background:#11191b;color:#f8f4e9;border-color:#737b7b}.play-die.red{background:#8d2435;color:#fff2f2;border-color:#c95564}.play-die:disabled{opacity:1;cursor:default}.play-die.selected{outline:3px solid var(--green);outline-offset:3px;transform:translateY(-4px)}.play-die.cancelled:after{content:'';position:absolute;left:4px;right:4px;top:22px;height:2px;background:currentColor;transform:rotate(-40deg)}.just-rolled .play-die{animation:die-appear .3s ease-out}@keyframes die-appear{from{opacity:0;transform:translateY(-12px) rotate(-8deg)}to{opacity:1;transform:none}}.play-trait{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.play-action-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.play-action-grid .btn{font-size:12px}.play-track{margin:20px 0}.play-track>span{display:flex;justify-content:space-between;font-size:11px;margin-bottom:7px}.play-track>div{display:flex;flex-wrap:wrap;gap:4px}.track-box{height:16px;width:16px;border:1px solid var(--muted);display:grid;place-items:center;font-size:15px;line-height:1}.track-box.aggravated{color:#f79ca4;background:#672534}.hunger-track span{color:var(--line);font-size:22px}.hunger-track .filled{color:#d7667d}.play-events{max-height:900px;overflow-y:auto;margin-top:20px}.play-event{padding:14px 0;border-top:1px solid var(--line);font-size:12px}.play-event>div{display:flex;gap:10px;justify-content:space-between}.play-event strong{font-weight:600;overflow-wrap:anywhere}.play-event time{color:var(--muted);font-size:10px}.play-event p{font-size:11px;color:var(--muted);margin:8px 0 0;overflow-wrap:anywhere}.play-journal .field{margin-bottom:10px}.play-journal .control{font-size:12px}.play-main details>summary{cursor:pointer;font-weight:600}.play-main details[open]>summary{margin-bottom:20px}#play-root[aria-busy=true] button{pointer-events:none}
.original-sheet-stack{width:100%;max-width:850px;margin:20px auto;color:#161a1c}.original-sheet{position:relative;container-type:inline-size;width:100%;margin:0 auto 26px;background:white;box-shadow:0 5px 24px #0002;break-inside:avoid;overflow:hidden}.original-sheet-art{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:0}.sheet-entry{position:absolute;z-index:2;font:1.8cqw/1.17 'Segoe UI',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;overflow:hidden;color:#162d37;padding:0;display:block}.sheet-number{text-align:center;font-weight:700;display:grid;place-items:center;line-height:1}.sheet-mark{position:absolute;display:flex;align-items:center;justify-content:center;color:#122833;z-index:3;font:700 2.5cqw/1 Arial,sans-serif}.original-v5 .sheet-entry,.original-v20 .sheet-entry,.original-blacksad .sheet-entry{color:#141414}.original-v5 .sheet-mark,.original-v20 .sheet-mark{color:#111;font-size:1.3cqw}.original-blacksad .sheet-mark{color:#111;font-size:1.4cqw}.sheet-die-highlight{position:absolute;border:2px solid #111;border-radius:3px;z-index:2}.sheet-kitty-portrait,.sheet-bs-portrait{position:absolute;overflow:hidden;z-index:1}.sheet-kitty-portrait{border-radius:35% 0 45% 35%}.sheet-appendix{background:white;padding:35px;color:#1e2528;break-before:page;border:1px solid #ddd;margin:26px 0;overflow-wrap:anywhere}.sheet-appendix h2{color:#1e2528!important;font:24px/1.3 Georgia,serif!important}.sheet-appendix h3{color:#1e2528!important;font-size:13px;margin:20px 0 6px}.sheet-appendix p{white-space:pre-wrap;line-height:1.5;font-size:12px;color:#1e2528!important}.sheet-appendix section{break-inside:avoid}.sheet-appendix-portrait{width:190px;height:220px;margin:20px 0}.sheet-credit{font-size:10px;color:var(--muted);text-align:center}.sheet-style-options{display:flex;gap:12px;margin:15px 0 25px;flex-wrap:wrap}
@media(min-width:1650px){.portal-hero{min-height:580px}.portal-stage{min-height:580px}.portal-hero h1{font-size:51px!important}.portal-hero-copy{padding-left:48px}}
@media(max-width:1280px){.play-layout{grid-template-columns:190px minmax(0,1fr)}.play-journal{grid-column:1/-1}.play-events{max-height:400px}.edition-card{padding:24px;gap:14px}.edition-number{font-size:35px;min-width:55px}.portal-hero-copy{padding-left:26px}.portal-hero h1{font-size:34px!important}.portal-hero-description{font-size:14px}.portal-stage{min-height:510px}.portal-hero{min-height:510px}}
@media(max-width:950px){.vtm-stat-columns{grid-template-columns:1fr}.vtm-stat-row{font-size:13px}.vtm-preview{position:static}.edition-cards{grid-template-columns:1fr}.portal-hero .btn{font-size:11px;padding:10px}.portal-hero h1{font-size:32px!important}.portal-hero-description{min-height:105px}.portal-hero-copy{padding-left:25px}.play-topline{flex-wrap:wrap}.play-local{margin-left:auto}}
@media(max-width:650px){.portrait-upload{padding:15px;gap:12px;align-items:start}.uploaded-preview{width:65px;height:85px}.portrait-upload .btn{font-size:11px;padding:9px}.portrait-upload .field-help{font-size:10px}.vtm-preview{display:none}.vtm-stat-columns{gap:14px}.vtm-identity{grid-template-columns:1fr;gap:16px}.vtm-identity .vtm-card-art{height:220px}.edition-card{padding:22px}.play-topline{gap:12px}.play-topline>label{flex-basis:100%}.play-topline>label select{max-width:none}.play-local{margin-left:0;flex:1}.play-layout{grid-template-columns:1fr;gap:16px}.play-sidebar{position:static;display:grid;grid-template-columns:95px minmax(0,1fr);gap:0 20px}.play-portrait{grid-row:1/4;height:110px;margin:0}.play-portrait>svg{width:80px;height:100px}.play-sidebar h2{font-size:22px}.play-sidebar>.small{margin:0}.play-counters,#play-status{grid-column:1/-1}.play-counters{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.play-counters label{font-size:9px}.play-sidebar>.field-help,.play-sidebar>.text-link{grid-column:1/-1}.play-journal{grid-column:auto}.play-layout .panel{padding:20px}.play-die{width:42px;height:44px;font-size:22px}.play-form-grid{gap:0 12px}.play-form-grid .field>span{font-size:12px}.portal-hero{grid-template-columns:1fr;min-height:0}.portal-hero-copy{padding:30px 25px 0}.portal-hero h1{font-size:34px!important;min-height:85px;margin-bottom:12px}.portal-hero .eyebrow{font-size:8px;min-height:15px;margin-bottom:15px}.portal-hero-description{min-height:70px;max-width:400px;font-size:13px;margin-bottom:16px}.portal-hero-hint{margin-top:20px}.portal-stage{min-height:0;height:330px;max-width:380px;width:100%;margin:0 auto}.portal-mascot{height:330px;width:330px;max-width:100%;transform:none}.portal-caption{bottom:7px;font-size:7px}.portal-stage:after{bottom:26px}.portal-stage-halo{width:76%}.portal-hero .btn{font-size:12px;padding:11px}.sheet-appendix{padding:20px}.sheet-entry{font-size:1.8cqw}.original-sheet{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){::view-transition-group(portal-mascot),::view-transition-new(portal-mascot),::view-transition-old(portal-mascot){animation:none!important}.just-rolled .play-die,.edition-card{animation:none;transition:none}}
@media print{@page{size:A4;margin:10mm}html:has(.original-sheet-stack),body:has(.original-sheet-stack){background:white!important;color:black!important}body:has(.original-sheet-stack) .game-switcher,body:has(.original-sheet-stack) .topbar,body:has(.original-sheet-stack) .sidebar,body:has(.original-sheet-stack) .site-footer,body:has(.original-sheet-stack) .breadcrumbs,body:has(.original-sheet-stack) .page-heading,body:has(.original-sheet-stack) .print-toolbar,body:has(.original-sheet-stack) .print-help,body:has(.original-sheet-stack) .sheet-style-options,body:has(.original-sheet-stack) .sheet-credit,body:has(.original-sheet-stack) .toast,body:has(.original-sheet-stack) .skip-link{display:none!important}body:has(.original-sheet-stack) .page-shell,body:has(.original-sheet-stack) .main-content{display:block!important;margin:0!important;padding:0!important;max-width:none!important;width:100%!important}.original-sheet-stack{margin:0;max-width:none;width:100%}.original-sheet{box-shadow:none;border:none;margin:0 auto;break-after:page;break-inside:avoid;page-break-after:always;width:190mm;print-color-adjust:exact;-webkit-print-color-adjust:exact}.original-kitties{width:185mm}.original-sheet:last-child{break-after:auto}.sheet-appendix{margin:0;padding:5mm 0;border:none;break-before:page;box-decoration-break:clone}.sheet-appendix section{break-inside:auto}.sheet-appendix h3{break-after:avoid}.sheet-appendix p{orphans:3;widows:3}.sheet-entry{color:#111!important}.sheet-appendix-portrait{height:55mm;width:45mm}body:has(.original-sheet-stack) a:after{content:none!important}}

.sheet-local-label{position:absolute;z-index:1;background:#fff;color:#111;white-space:nowrap;overflow:hidden;font-family:Georgia,"Times New Roman",serif;font-weight:600;line-height:1.1;display:flex;align-items:center;justify-content:inherit}.sheet-local-label span{display:inline-block;transform-origin:left center;flex-shrink:0;min-width:max-content}.sheet-local-label[style*="text-align:center"]{justify-content:center}.sheet-local-label[style*="text-align:center"] span{transform-origin:center center}.portrait-upload>div:last-child{min-width:0;overflow-wrap:anywhere}.portrait-upload-label{white-space:normal;max-width:100%}.editor-panel{min-width:0}

.stepper li{min-width:0}.stepper button{overflow-wrap:anywhere}@media(max-width:600px){.stepper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));row-gap:6px}}
