@font-face{font-family:Teimur;src:url('./assets/fonts/teimur-adornada-v5.woff2') format('woff2');font-display:swap}
:root{--paper:#fffdf8;--ivory:#f4efe2;--gold:#92774d;--gold-dark:#775a2e;--ink:#203d43;--body:#536467;--line:#ded4bd;--light:#eee8db;--danger:#963c2b;--radius:5px;--shadow:0 15px 45px #5842220b}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-size:16px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);padding:10px 18px;transition:background .2s,border-color .2s,transform .2s}button:hover{background:var(--ivory);border-color:var(--gold)}button:disabled{cursor:not-allowed;opacity:.55}button.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}button.primary:hover{background:#315358}button.gold{background:var(--gold-dark);color:white;border-color:var(--gold-dark)}button.selected{background:var(--ivory);border-color:var(--gold-dark);box-shadow:inset 0 0 0 1px var(--gold-dark)}a{color:var(--gold-dark);text-underline-offset:4px}a:hover{color:var(--ink)}:focus-visible{outline:3px solid #a37e35;outline-offset:4px}h1,h2,h3{font-family:Teimur,Georgia,serif;font-weight:400;line-height:1.25;margin:0 0 20px;color:var(--ink)}h1{font-size:clamp(42px,4.5vw,67px)}h2{font-size:clamp(31px,3vw,43px)}h3{font-size:29px}h4{font-size:18px;margin:20px 0 9px;color:var(--gold-dark)}p{margin:0 0 15px}strong{font-weight:700}small,.small{font-size:13px}.muted{color:var(--body)}.eyebrow{font-family:Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:2.5px;line-height:1.5;color:var(--gold-dark);display:block;margin-bottom:10px}.section-intro{font-size:18px;color:var(--body);max-width:750px;margin-bottom:26px}.skip{position:fixed;top:-80px;left:20px;background:var(--paper);padding:10px;z-index:100}.skip:focus{top:12px}.masthead{max-width:1480px;margin:auto;min-height:112px;padding:16px 44px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand img{width:178px;height:80px;object-fit:contain}.brand{line-height:0}.masthead-title{display:flex;flex-direction:column;margin-right:auto;padding-left:25px;border-left:1px solid var(--line);line-height:1.2;font-size:17px}.masthead-title .eyebrow{margin-bottom:6px;font-size:9px}.header-actions{display:flex;align-items:center;gap:22px}.header-actions #save-status{font-family:Arial,sans-serif;font-size:10px;color:var(--body);max-width:180px;text-align:right;line-height:1.5}.text-button{border:0;background:none;padding:7px 0;border-bottom:1px solid var(--line);border-radius:0;font-size:13px;color:var(--gold-dark)}.steps-wrap{position:sticky;top:0;z-index:30;background:#fffdf8f5;backdrop-filter:blur(12px);border-block:1px solid var(--line)}.steps{display:flex;list-style:none;justify-content:center;gap:10px;margin:0 auto;padding:10px 24px;max-width:1400px;overflow:auto}.steps li{flex:1}.steps button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;white-space:nowrap;border:0;padding:10px 7px;font-size:13px;background:transparent;color:var(--body)}.steps button b{font-size:11px;border:1px solid var(--line);width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-weight:400}.steps [aria-current="step"]{color:var(--gold-dark);background:var(--ivory)}.steps [aria-current="step"] b{background:var(--gold-dark);border-color:var(--gold-dark);color:white}.steps .done b{background:var(--ink);color:white;border-color:var(--ink)}.progress-track{height:2px;background:var(--light)}#progress{height:100%;background:var(--gold);transition:width .35s}.loading{text-align:center;padding:100px 20px;min-height:60vh}.sigil{font-size:45px;color:var(--gold)}.hero{max-width:1360px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;padding:50px 45px 18px;min-height:460px;position:relative}.hero-copy{position:relative;z-index:1;padding:0 0 30px}.hero h1{max-width:700px;margin-bottom:24px}.hero h1 em{font-style:normal;color:var(--gold-dark);display:block}.hero .section-intro{max-width:530px;font-size:18px}.hero-art{width:118%;max-height:540px;object-fit:contain;margin-left:-6%;filter:drop-shadow(0 15px 25px #6d512411);pointer-events:none;align-self:center}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:25px}.hero-note{font-family:Arial,sans-serif;color:var(--body);font-size:11px;line-height:1.6;max-width:180px}.start-section{padding:35px 45px 60px;max-width:1360px;margin:auto;border-top:1px solid var(--line)}.start-section .section-head{display:flex;justify-content:space-between;gap:25px;align-items:center}.start-section h2{margin-bottom:6px}.identity-row{display:grid;grid-template-columns:2fr 1.4fr .6fr;gap:20px;margin:25px 0 32px;max-width:100%}label.field{display:flex;flex-direction:column;gap:7px;font-size:13px;color:var(--ink)}input,select,textarea{background:#fffefb;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:10px 12px;min-width:0;max-width:100%}input[type="checkbox"]{accent-color:var(--gold-dark);width:18px;height:18px;flex:0 0 18px}input[type="number"]{width:100%}textarea{resize:vertical;min-height:110px;line-height:1.65}input::placeholder,textarea::placeholder{color:#8a8e89}.identity-row input{border-width:0 0 1px;background:transparent;border-radius:0;padding-inline:0;font-size:19px}.start-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.start-choice{padding:22px 25px;text-align:left;display:flex;gap:20px;align-items:center;box-shadow:var(--shadow);background:linear-gradient(130deg,#f4efe3aa,#fffdf8)}.start-choice .number{font-size:31px;color:var(--gold);font-family:Teimur}.start-choice h3{font-size:28px;margin:0 0 5px}.start-choice p{font-size:13px;margin:0;color:var(--body)}.start-choice .arrow{margin-left:auto;color:var(--gold);font-size:23px}.workspace{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:42px;padding:44px 42px 0}.workspace-main{min-width:0;padding-bottom:30px}.step-title{margin-bottom:14px}.section-top{display:flex;justify-content:space-between;gap:20px;align-items:start}.section-top p{max-width:690px}.search{width:min(100%,330px);padding-left:15px;margin:0 0 22px}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.choice-card{position:relative;display:flex;flex-direction:column;min-width:0;border-bottom:1px solid var(--line);padding:0 12px 20px;transition:background .25s,box-shadow .25s;isolation:isolate}.choice-card:nth-child(3n+2) .card-art{transform:translateY(8px)}.choice-card.is-selected{background:linear-gradient(#f5eedf70,#f5eedf90);box-shadow:0 0 0 1px var(--line);border-radius:5px}.card-art{width:100%;height:210px;object-fit:contain;object-position:center;transition:transform .3s;margin-bottom:10px}.choice-card:hover .card-art{transform:translateY(-4px)}.choice-card h3{font-size:30px;margin:7px 0}.choice-card .card-description{color:var(--body);font-size:14px;line-height:1.65;flex:1;margin:8px 0 16px}.card-tags{font-family:Arial,sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:.6px;line-height:1.7;color:var(--gold-dark)}.card-buttons{display:flex;gap:8px;align-items:center;margin-top:auto}.card-buttons button{font-size:12px;padding:9px 11px;flex:1}.selected-mark{position:absolute;top:8px;right:8px;background:var(--gold-dark);color:#fff;padding:3px 8px;border-radius:3px;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.6px;z-index:2}.summary{position:sticky;top:100px;align-self:start;margin-top:8px;padding:0 0 28px;border-left:1px solid var(--line);padding-left:26px}.summary .summary-art{width:100%;height:185px;object-fit:contain;display:block;margin-top:-15px}.summary h2{font-size:30px;margin:8px 0 3px;overflow-wrap:anywhere}.summary .summary-line{font-size:12px;color:var(--body);margin-bottom:20px}.summary dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.summary dl>div{border-bottom:1px solid var(--line);padding-bottom:9px}.summary dt{font-family:Arial,sans-serif;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--body)}.summary dd{font-size:24px;margin:1px 0 0;line-height:1.3}.summary .summary-attrs{display:flex;flex-wrap:wrap;gap:6px;padding:15px 0}.summary-attrs span{width:calc((100% - 18px)/4);text-align:center;border:1px solid var(--line);font-size:14px;padding:4px 2px}.summary-attrs small{display:block;font:8px Arial,sans-serif;color:var(--body);padding-top:2px}.summary .summary-edit{display:flex;gap:6px;flex-wrap:wrap}.summary-edit button{font-size:10px;padding:5px 8px}.notice{border-left:3px solid var(--gold);background:var(--ivory);padding:15px 18px;margin:20px 0;color:#555b4e;font-size:14px;line-height:1.65}.notice.error{border-color:var(--danger);background:#fbf0ea;color:#713525}.notice ul{margin:7px 0;padding-left:20px}.notice p:last-child{margin-bottom:0}.choice-panel{margin-top:32px;padding:25px;border:1px solid var(--line);background:#fffefa;border-radius:5px}.choice-panel h3{font-size:31px}.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.check-option{display:flex;align-items:center;gap:9px;font-size:14px;padding:9px 11px;border:1px solid var(--line);border-radius:4px;line-height:1.4}.check-option:has(input:checked){border-color:var(--gold);background:var(--ivory)}.check-option:has(input:disabled){opacity:.65}.check-option small{display:block;font-size:11px;color:var(--body)}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.field-grid .wide{grid-column:1/-1}.button-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.segmented{display:flex;flex-wrap:wrap;gap:6px;margin:20px 0 25px}.segmented button{font-size:13px;padding:10px 15px}.budget{font-size:20px;color:var(--gold-dark);border-bottom:1px solid var(--line);padding:5px 0 16px;margin-bottom:20px}.attributes-table{width:100%;border-collapse:collapse;font-size:14px}.attributes-table th{font:10px Arial,sans-serif;color:var(--body);text-transform:uppercase;letter-spacing:.7px;text-align:center;border-bottom:1px solid var(--line);padding:10px}.attributes-table th:first-child{text-align:left}.attributes-table td{border-bottom:1px solid var(--light);text-align:center;padding:12px 7px}.attributes-table td:first-child{text-align:left}.attribute-name{font-family:Teimur;font-size:26px}.attribute-code{font:10px Arial,sans-serif;color:var(--gold-dark);display:block}.attribute-input{display:flex;gap:8px;justify-content:center;align-items:center}.attribute-input button{padding:3px 10px;font-size:20px;min-height:36px}.attribute-input input{width:52px;text-align:center;padding:6px}.attribute-total{font-size:24px}.racial-controls{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:18px}.racial-controls .field{flex:1}.subnav{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.subnav button{font-size:12px;padding:8px 13px}.locked{opacity:.7;background:#eeeae1}.lock-reason{font-size:12px;color:#735943;margin:10px 0}.option-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.option-box{padding:18px;border:1px solid var(--line);border-radius:4px;min-width:0}.option-box h3{font-size:27px;margin-bottom:10px}.option-box p{font-size:14px;color:var(--body)}.option-box.is-selected{background:var(--ivory);border-color:var(--gold)}.option-box button{font-size:12px}.option-box .button-row{margin-top:15px}.count-chip{display:inline-block;border:1px solid var(--line);border-radius:20px;padding:3px 12px;font-family:Arial,sans-serif;font-size:11px;color:var(--gold-dark);margin:0 8px 10px 0}.depth-header{display:flex;justify-content:space-between;align-items:center;margin:28px 0 14px;gap:15px}.depth-header h3{margin:0}.kit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.kit{border:1px solid var(--line);border-radius:5px;padding:20px 16px;display:flex;flex-direction:column;background:linear-gradient(#f6f1e7aa,transparent)}.kit h3{font-size:28px}.kit p,.kit li{font-size:13px;color:var(--body)}.kit ul{padding-left:19px;flex:1}.kit button{margin-top:auto;font-size:12px}.kit.is-selected{border:2px solid var(--gold);padding:19px 15px}.kit-icon{font-size:28px;color:var(--gold);margin-bottom:8px}.equipment-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.equipment-grid label{margin-bottom:14px}.equipment-table{width:100%;border-collapse:collapse;font-size:12px}.equipment-table th{text-align:left;font:10px Arial,sans-serif;color:var(--gold-dark);letter-spacing:.5px;padding:10px 8px;border-bottom:1px solid var(--line)}.equipment-table td{padding:10px 8px;border-bottom:1px solid var(--light);vertical-align:top}.equipment-table small{display:block;color:var(--body);font-size:10px}.equipment-table input,.equipment-table select{padding:5px 6px;font-size:12px;width:72px}.equipment-table .destination{min-width:115px;width:100%}.equipment-table input.destination{margin-top:6px}.table-scroll{overflow:auto}.wallet{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:15px 0}.wallet label{font-size:11px}.money-panel{background:var(--ivory);border:1px solid var(--line);padding:20px 25px;margin:25px 0}.money-panel .balance{font-size:25px;color:var(--gold-dark)}.load-meter{height:7px;border-radius:10px;background:var(--line);overflow:hidden;margin:14px 0}.load-meter div{height:100%;background:var(--gold)}.load-meter .overload{background:var(--danger)}.purchase-row{display:grid;grid-template-columns:minmax(150px,1fr) 80px auto;gap:10px;align-items:end}.review-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:25px 0}.review-stat{border-top:1px solid var(--gold);padding:15px 10px;background:var(--ivory)}.review-stat small{font:10px Arial,sans-serif;color:var(--body);letter-spacing:.7px}.review-stat strong{display:block;font-size:27px;font-weight:400}.review-section{border-bottom:1px solid var(--line);padding:22px 0}.review-section h3{margin-bottom:13px}.review-section .review-top{display:flex;justify-content:space-between;gap:15px}.review-section p{font-size:14px}.review-attrs{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:22px 0}.review-attrs div{text-align:center;border:1px solid var(--line);padding:10px 2px}.review-attrs span{display:block;font-family:Arial,sans-serif;font-size:10px;color:var(--body)}.review-attrs strong{font-size:25px;font-weight:400}.review-attrs small{display:block;color:var(--gold-dark);font-size:12px}.export-panel{padding:30px;background:var(--ivory);border:1px solid var(--line);margin:25px 0}.export-panel button{font-size:17px;padding:14px 24px}.export-panel p{font-size:13px;max-width:650px}.bottom-nav{grid-column:1/-1;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:24px 0 35px;gap:15px}.bottom-nav span{font-size:12px;color:var(--body)}.site-footer{border-top:1px solid var(--line);margin-top:35px;padding:35px 42px;display:flex;gap:25px;align-items:center;justify-content:center;font-size:11px;color:var(--body)}.site-footer>span:first-child{font-family:Teimur;font-size:25px;color:var(--gold-dark)}.site-footer p{margin:0}.site-footer>span:last-child{margin-left:auto}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--ink);color:var(--paper);border-radius:5px;padding:13px 23px;box-shadow:0 10px 35px #0002;z-index:150;max-width:min(90vw,650px);font-size:13px;transition:opacity .2s,transform .2s}.toast.show{opacity:1;transform:translate(-50%,0)}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:0;border-radius:8px;box-shadow:0 20px 100px #172a3240}dialog::backdrop{background:#172c35a8;backdrop-filter:blur(4px)}.detail-dialog{width:min(1180px,94vw);max-height:91dvh}.detail-layout{display:grid;grid-template-columns:38% minmax(0,1fr);position:relative}.detail-visual{position:sticky;top:0;align-self:start;height:min(680px,79dvh);display:flex;flex-direction:column;justify-content:center;padding:25px 10px 25px 20px;background:radial-gradient(ellipse,#ede1c844,transparent 72%)}.detail-visual img{width:100%;max-height:580px;object-fit:contain}.detail-visual small{text-align:center;color:var(--body);font-size:10px}.detail-copy{padding:45px 40px 30px;min-width:0;max-height:78dvh;overflow:auto}.detail-copy h2{font-size:48px;margin-bottom:12px}.detail-copy .source-text{font-size:15px;line-height:1.9;color:#3f5355}.source-text p{margin-bottom:16px;white-space:pre-line}.source-text .source-table{width:100%;font-size:12px;border-collapse:collapse;margin:18px 0}.source-table th,.source-table td{border:1px solid var(--line);padding:7px;text-align:left}.source-table th{background:var(--ivory)}.source-text h4{font-family:Teimur;font-size:28px;margin-top:30px}.detail-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:16px 30px;background:var(--paper);position:sticky;bottom:0;gap:15px}.detail-footer small{font-size:11px;color:var(--body)}.dialog-close{position:absolute;right:14px;top:10px;z-index:4;border:0;background:var(--paper);width:37px;height:37px;border-radius:50%;padding:0;font-size:25px}.confirm-dialog{padding:30px;max-width:490px;width:90vw}.confirm-dialog h2{font-size:35px}.confirm-dialog p{font-size:15px}.portrait-preview{height:150px;max-width:160px;object-fit:contain;display:block;margin-top:10px}.privacy{font-family:Arial,sans-serif;font-size:10px;color:var(--body);line-height:1.6}.reveal{animation:reveal .45s ease both}@keyframes reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.dice-area{background:radial-gradient(ellipse at 50% 60%,#eee3ca 0%,#f7f3e8 42%,#fffdf8 74%);border:1px solid var(--line);border-radius:7px;padding:22px;margin-bottom:25px}.dice-stage{display:flex;justify-content:center;gap:26px;perspective:750px;padding:36px 10px 45px;min-height:130px}.die-space{width:52px;height:52px;perspective:450px}.die{width:52px;height:52px;position:relative;transform-style:preserve-3d;transform:rotateX(-20deg) rotateY(22deg);transition:transform 1.2s cubic-bezier(.2,.6,.3,1)}.die-face{position:absolute;width:52px;height:52px;border:1px solid #ae8b47;border-radius:8px;background:linear-gradient(135deg,#fffefb,#f5edda);backface-visibility:hidden;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:9px;box-shadow:inset 0 0 8px #ae8b4738}.pip{width:7px;height:7px;border-radius:50%;background:#a17b30;box-shadow:0 0 1px #735526}.die-face[data-face="1"]{transform:translateZ(26px)}.die-face[data-face="6"]{transform:rotateY(180deg) translateZ(26px)}.die-face[data-face="2"]{transform:rotateY(90deg) translateZ(26px)}.die-face[data-face="5"]{transform:rotateY(-90deg) translateZ(26px)}.die-face[data-face="3"]{transform:rotateX(90deg) translateZ(26px)}.die-face[data-face="4"]{transform:rotateX(-90deg) translateZ(26px)}.dice-shadow{width:45px;height:8px;border-radius:50%;background:#7b622633;filter:blur(5px);margin:17px auto 0}.dice-summary{text-align:center;font-size:14px}.rolls{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:20px 0}.roll-result{background:#fffdf8;border:1px solid var(--line);text-align:center;border-radius:4px;padding:10px 3px;font-family:Arial,sans-serif}.roll-result strong{display:block;font-size:22px;color:var(--gold-dark)}.roll-result small{font-size:10px}.roll-result s{color:var(--danger);text-decoration-thickness:2px}.roll-result button{font:10px Arial,sans-serif;padding:4px 5px;margin-top:5px;border:0}.dice-area .button-row{justify-content:center}.rolling .die{animation:tumble 1.1s ease both}@keyframes tumble{0%{transform:translateY(0) rotateX(0) rotateY(0)}30%{transform:translateY(-30px) rotateX(280deg) rotateY(150deg)}65%{transform:translateY(-7px) rotateX(550deg) rotateY(430deg)}100%{transform:translateY(0) rotateX(720deg) rotateY(720deg)}}
@media(min-width:1600px){.workspace{max-width:1550px;grid-template-columns:minmax(0,1fr) 310px;gap:55px}.catalog-grid{gap:30px}.card-art{height:245px}.hero{max-width:1460px}.hero-art{max-height:570px}}
@media(max-width:1150px){.masthead{padding-inline:28px}.workspace{padding-inline:28px;gap:25px;grid-template-columns:minmax(0,1fr) 235px}.summary{padding-left:20px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding-inline:30px}.hero-art{width:110%}.start-section{padding-inline:30px}.start-choice{padding:18px 15px;gap:12px}.steps{gap:2px;padding-inline:12px}.steps button{font-size:12px;gap:5px}.steps button b{width:22px;height:22px}.kit-grid{grid-template-columns:1fr}.kit{display:grid;grid-template-columns:1fr 1.3fr;gap:0 20px}.kit .kit-icon{display:none}.kit h3{margin-bottom:6px}.kit ul{grid-column:2;grid-row:1/4;margin:0}.kit button{justify-self:start}.equipment-grid{grid-template-columns:1fr}}
@media(max-width:800px){.masthead{padding:12px 20px;min-height:89px;gap:12px}.brand img{width:135px;height:60px}.masthead-title{font-size:13px;padding-left:14px}.masthead-title .eyebrow{font-size:8px;letter-spacing:1.5px}.header-actions #save-status{display:none}.header-actions{gap:0}.header-actions .text-button{font-size:11px}.steps{justify-content:flex-start;padding:7px 12px;scrollbar-width:thin}.steps li{flex:0 0 auto}.steps button{padding:8px 9px}.workspace{grid-template-columns:1fr;padding:28px 22px 0;gap:0}.summary{display:none}.hero{padding:35px 25px 5px;min-height:0}.hero h1{font-size:48px}.hero .section-intro{font-size:16px}.hero-art{width:125%;margin-left:-15%;max-height:360px}.hero-actions{flex-wrap:wrap;gap:13px}.hero-note{max-width:210px}.start-section{padding:25px 24px 40px}.start-choices{gap:12px}.start-choice{padding:18px 13px}.start-choice .number{display:none}.start-choice h3{font-size:25px}.start-choice .arrow{display:none}.start-choice p{font-size:12px}.start-section .section-head{display:block}.detail-dialog{width:96vw}.detail-layout{grid-template-columns:30% 1fr}.detail-copy{padding:40px 24px 20px}.detail-copy h2{font-size:40px}.detail-visual{padding-inline:5px}.detail-footer{padding:14px 20px}.site-footer{flex-wrap:wrap;padding:25px;gap:12px 22px;justify-content:flex-start}.site-footer>span:last-child{margin-left:0;flex:1 1 100%}.review-overview{gap:8px}.review-stat{padding:12px 8px}.review-stat strong{font-size:24px}}
@media(max-width:540px){body{font-size:15px}.masthead-title{display:none}.brand img{width:140px}.header-actions{margin-left:auto}.hero{display:flex;flex-direction:column;padding:34px 22px 0;overflow:hidden}.hero-copy{padding-bottom:0;align-self:stretch}.hero h1{font-size:44px;margin-bottom:18px}.hero h1 em{display:inline}.hero-art{height:290px;width:110%;margin:-5px -5% -12px;object-position:center}.hero-actions{margin-top:20px}.hero .section-intro{max-width:100%;margin-bottom:12px}.hero-note{font-size:10px;max-width:175px}.hero-actions button{padding:11px 18px;font-size:14px}.start-section{padding:24px 20px 30px}.start-section h2{font-size:30px}.identity-row{grid-template-columns:1fr 80px;gap:18px;margin:23px 0}.identity-row .field:first-child{grid-column:1/-1}.identity-row input{font-size:17px}.start-choices{grid-template-columns:1fr;gap:10px}.start-choice{display:flex;padding:16px 18px}.start-choice h3{font-size:27px;margin:0 0 3px}.start-choice .number{display:block;font-size:28px}.start-choice .arrow{display:block}.workspace{padding:27px 18px 0}.section-intro{font-size:15px}.catalog-grid{gap:20px 10px}.choice-card{padding:0 7px 16px}.card-art{height:175px}.choice-card h3{font-size:27px}.choice-card .card-description{font-size:12px;margin-bottom:13px}.card-tags{font-size:9px}.card-buttons{flex-direction:column;gap:5px}.card-buttons button{width:100%;padding:8px;font-size:11px}.choice-panel{padding:20px 15px}.checkbox-grid,.field-grid,.option-list{grid-template-columns:1fr}.check-option{font-size:13px}.attributes-table td{padding:10px 2px}.attributes-table th{font-size:8px;padding:8px 2px}.attribute-name{font-size:23px}.attribute-input{gap:4px}.attribute-input button{padding:0 7px}.attribute-input input{width:40px;padding:5px 2px;font-size:13px}.attribute-total{font-size:21px}.racial-controls{gap:9px}.racial-controls .field{flex-basis:120px}.segmented button{font-size:12px;padding:9px 11px}.detail-layout{display:block}.detail-visual{position:relative;height:210px;padding:20px 15px 0}.detail-visual img{height:190px}.detail-visual small{display:none}.detail-copy{max-height:none;overflow:visible;padding:18px 22px 25px}.detail-dialog{max-height:94dvh}.detail-copy h2{font-size:39px}.detail-copy .source-text{font-size:14px}.detail-footer{position:sticky;bottom:0;padding:12px 18px}.detail-footer small{max-width:135px;font-size:10px}.detail-footer button{font-size:13px;padding:10px 14px}.kit{display:flex;padding:20px}.kit.is-selected{padding:19px}.kit ul{margin:0 0 18px}.kit h3{font-size:30px}.kit p{margin-bottom:10px}.wallet{gap:6px}.wallet input{padding:8px 5px;text-align:center}.wallet label{font-size:9px}.money-panel{padding:18px 15px}.purchase-row{grid-template-columns:1fr 70px}.purchase-row button{grid-column:1/-1}.review-attrs{gap:4px}.review-attrs strong{font-size:20px}.review-attrs span{font-size:9px}.review-attrs small{font-size:10px}.review-stat small{font-size:9px}.review-stat strong{font-size:22px}.export-panel{padding:23px 18px}.export-panel button{font-size:15px;width:100%}.bottom-nav{padding:20px 0 25px}.bottom-nav>span{display:none}.bottom-nav button{padding:10px 17px;font-size:13px}.dice-stage{gap:19px;padding-block:32px}.rolls{grid-template-columns:repeat(4,1fr)}.dice-area{padding:18px 12px}.dice-summary{font-size:12px}.step-title{font-size:37px}.notice{font-size:13px}.site-footer{font-size:10px}.review-section h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-art,.choice-card:hover .card-art{transform:none}}

/* Keep the organic hero within its responsive canvas. */
.hero{overflow:hidden}.identity-row .field{min-width:0}[hidden]{display:none!important}

.die.discarded .die-face{background:#eee8dc;border-color:#947a58}.die.discarded .pip{background:#b9ab91}
