:root{color:#17231f;background:#e9e2d1;font-family:Georgia,Times New Roman,serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-height:100vh;margin:0;background:radial-gradient(circle at 15% 0%,rgba(255,255,255,.72),transparent 34rem),linear-gradient(135deg,#eee7d8,#ddd2bd)}body[data-screen=blank],body[data-screen=creed]{min-height:100vh;background:#090a09;color:#eee7d8}body[data-screen=blank]:before,body[data-screen=creed]:before{display:none}body[data-screen=blank] #app,body[data-screen=creed] #app{width:100%;margin:0;padding:0}.intro{position:relative;display:grid;min-height:100vh;place-items:center;overflow:hidden;padding:5rem clamp(1.25rem,9vw,9rem);background:#090a09;color:#eee7d8}.intro--blank{display:block;padding:0}.intro--leaving{opacity:0;transition:opacity .5s ease}.creed{width:min(100%,64rem);margin:auto}.creed__line{margin:0;color:#eee7d8;font-size:clamp(1rem,2.5vh,1.55rem);line-height:1.5;opacity:0;filter:blur(10px);transform:translateY(.2rem);transition:opacity .9s ease,filter .9s ease,transform .9s ease}.creed__line--visible{opacity:1;filter:blur(0);transform:none}.intro .button--skip{position:absolute;top:1rem;right:1rem;border-color:#eee7d880;color:#eee7d8;text-transform:none}.intro .button--skip:hover{background:#eee7d8;color:#090a09}.intro--static{align-content:center;gap:2rem;overflow:auto}.intro--static .creed__line{opacity:1;filter:none;transform:none}.intro .intro__continue{justify-self:center;border-color:#eee7d8;color:#eee7d8}.intro .intro__continue:hover{background:#eee7d8;color:#090a09}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.journey__header{width:min(100% - 2rem,72rem);margin:0 auto 2rem;padding-top:4rem}.journey__header h1{max-width:none;font-size:clamp(2.4rem,7vw,5rem)}.paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;width:min(100% - 2rem,72rem);margin:0 auto}.path-card{display:grid;gap:1rem;min-height:13rem;align-content:start;padding:1.5rem;border:1px solid rgba(23,35,31,.4);background:#f9f5ebd1;color:#17231f;text-align:left;font:1rem/1.6 Georgia,Times New Roman,serif;cursor:pointer}.path-card:hover,.path-card:focus-visible{border-color:#6c2e26;box-shadow:0 0 0 3px #6c2e2629}.path-card__title{font-size:1.55rem}.resume,.storage-warning{width:min(100% - 2rem,72rem);margin:1.5rem auto 0}.resume{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem 1.5rem;border:1px solid rgba(23,35,31,.28);background:#f9f5eb8c}.resume__name{margin:.4rem 0 .2rem;font-size:1.2rem}.resume__date{margin:0;color:#52615b;font:.8rem/1.4 system-ui,sans-serif}.storage-warning{padding:.8rem 1rem;border-left:3px solid #8a3a2c;background:#6c2e2614;color:#6c2e26;font:.9rem/1.5 system-ui,sans-serif}.secondary-actions{width:min(100% - 2rem,72rem);margin:1.25rem auto 0}.text-button{border:0;padding:.5rem 0;background:none;color:#6c2e26;font:.9rem/1.4 system-ui,sans-serif;text-decoration:underline;cursor:pointer}.journey__header+.paths+.storage-warning{margin-top:1.5rem}.journey__header~footer{width:min(100% - 2rem,72rem);margin:1.5rem auto 0;padding-bottom:2rem}body[data-screen=editor]{background:linear-gradient(135deg,#eee7d8,#ddd2bd);color:#17231f}body:before{position:fixed;inset:0;pointer-events:none;content:"";opacity:.12;background-image:repeating-linear-gradient(0deg,#17231f 0,#17231f 1px,transparent 1px,transparent 4px)}#app{position:relative;width:min(100% - 2rem,72rem);margin:0 auto;padding:4rem 0 2rem}.hero{max-width:52rem;margin-bottom:2.5rem}.eyebrow{margin:0 0 .55rem;color:#6c2e26;font:700 .75rem/1.2 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}h1,h2{margin:0;font-weight:500;letter-spacing:-.035em}h1{max-width:14ch;font-size:clamp(2.8rem,8vw,6.6rem);line-height:.92}h2{font-size:2rem}.lead{max-width:44rem;margin:1.5rem 0 0;font-size:1.12rem;line-height:1.65}.workspace{border:1px solid rgba(23,35,31,.4);background:#f9f5ebd1;box-shadow:0 1.5rem 4rem #17231f24}.workspace__header{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding:1.5rem;border-bottom:1px solid rgba(23,35,31,.25)}.status{margin:0;color:#4d5c55;font:.85rem/1.4 system-ui,sans-serif}.character-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;padding:1.5rem}.field{display:grid;gap:.5rem;font:700 .78rem/1.2 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase}.field:nth-child(n+4){grid-column:1 / -1}input,textarea{width:100%;border:1px solid #8d8b7f;border-radius:0;background:#ffffff8c;color:inherit;font:1rem/1.45 system-ui,sans-serif;padding:.8rem .9rem}textarea{resize:vertical}input:focus,textarea:focus{outline:3px solid rgba(108,46,38,.2);border-color:#6c2e26}.actions{grid-column:1 / -1;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.5rem}.button{border:1px solid #17231f;background:transparent;color:#17231f;cursor:pointer;font:700 .78rem/1 system-ui,sans-serif;letter-spacing:.06em;padding:.8rem 1rem;text-transform:uppercase}.button:hover{background:#17231f;color:#f5f0e5}.confirm-dialog{width:min(100% - 2rem,32rem);padding:1.75rem;border:1px solid rgba(23,35,31,.5);background:#f4efe3;color:#17231f;box-shadow:0 1.5rem 5rem #00000059}.confirm-dialog::backdrop{background:#080a09b8}.confirm-dialog h2{font-size:1.65rem}.confirm-dialog p{margin:1rem 0 1.5rem;font:1rem/1.55 system-ui,sans-serif}.confirm-dialog__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.65rem}.button--danger{border-color:#7b2c22;background:#7b2c22;color:#fff8ec}.button--danger:hover{background:#5c2019;color:#fff8ec}.classic-flow{width:min(100% - 2rem,72rem);margin:0 auto;padding:3rem 0 2rem}.classic-header{margin-bottom:1.25rem}.classic-header h1{max-width:none;font-size:clamp(2.4rem,7vw,4.8rem)}.classic-header .lead{margin-top:.8rem}.classic-save-status{margin:.5rem 0 0;color:#4d5c55;font:.82rem/1.4 system-ui,sans-serif}.classic-summary,.legacy-classic-fields{margin:1rem 0;padding:.85rem 1rem;border:1px solid rgba(23,35,31,.2);background:#f9f5eb9e}.classic-summary>summary,.legacy-classic-fields>summary{cursor:pointer;font:700 .82rem/1.4 system-ui,sans-serif}.classic-summary__list{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.35rem 1rem;margin:.75rem 0 0;font:.86rem/1.45 system-ui,sans-serif}.classic-summary__list dt{color:#52615b}.classic-summary__list dd{margin:0;overflow-wrap:anywhere}.legacy-classic-fields dd{white-space:pre-wrap}.classic-step,.classic-future{margin-top:1.5rem}.classic-step h2,.classic-future h2{margin-bottom:.55rem}.classic-help,.classic-current-archetype{color:#52615b;font:1rem/1.5 system-ui,sans-serif}.archetype-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:1.25rem 0}.archetype-card{display:grid;gap:.45rem;padding:1rem;border:1px solid rgba(23,35,31,.35);background:#f9f5ebcc;color:#17231f;text-align:left;font:1rem/1.45 system-ui,sans-serif;cursor:pointer}.archetype-card:hover,.archetype-card:focus-visible,.archetype-card--selected{border-color:#6c2e26;box-shadow:0 0 0 2px #6c2e2624}.archetype-card--selected{background:#fffaf0}.archetype-card__name{font:1.25rem/1.2 Georgia,Times New Roman,serif}.archetype-card__resources{font-weight:700}.archetype-card__talents{color:#52615b;font-size:.8rem}.archetype-detail,.classic-budget{margin-top:1.25rem;padding:1rem 1.25rem;border:1px solid rgba(23,35,31,.22);background:#f9f5eb8f}.archetype-detail h3{margin:0 0 .7rem;font-size:1.35rem;font-weight:500}.archetype-detail h4{margin:1rem 0 .35rem;font:700 .82rem/1.4 system-ui,sans-serif}.archetype-detail__line,.archetype-detail__talents,.archetype-detail__examples{font:1rem/1.55 system-ui,sans-serif}.archetype-detail__talents,.archetype-detail__examples{display:grid;gap:.55rem;margin:0;padding-left:1.25rem}.archetype-literature{margin-top:1rem;font:1rem/1.55 system-ui,sans-serif}.archetype-literature summary{cursor:pointer;color:#6c2e26}.archetype-literature p{margin:.65rem 0 0;white-space:pre-wrap}.age-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.25rem 0;border:0;padding:0}.age-groups legend{margin-bottom:.55rem;font:700 .85rem/1.4 system-ui,sans-serif}.age-choice{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.3rem .65rem;padding:.8rem;border:1px solid rgba(23,35,31,.3);background:#f9f5ebb3;cursor:pointer}.age-choice input{width:auto;padding:0}.age-choice--selected{border-color:#6c2e26;box-shadow:0 0 0 2px #6c2e2624}.age-choice__title{font-weight:700}.age-choice__range,.age-choice__budget{grid-column:2;color:#52615b;font:1rem/1.4 system-ui,sans-serif}.classic-budget{margin:0 0 1.25rem}.classic-budget p{margin:.3rem 0;font:.9rem/1.5 system-ui,sans-serif}.classic-budget__title{font-weight:700!important}.classic-name-field{max-width:40rem;margin-bottom:1rem}.classic-exact-age-field{max-width:20rem}.field-error{min-height:1.25em;margin:.25rem 0 0;color:#8a2d20;font:.8rem/1.4 system-ui,sans-serif}.field-count{justify-self:end;color:#52615b;font:.75rem/1.4 system-ui,sans-serif}.classic-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.classic-actions .button--primary{margin-left:auto}.classic-actions button:disabled{opacity:.45;cursor:not-allowed}.classic-future{max-width:52rem;padding:1.25rem;border-left:3px solid #6c2e26;background:#f9f5ebad}.classic-future p{font:1rem/1.55 system-ui,sans-serif}.attribute-budget{margin:1rem 0;padding:.9rem 1rem;border-left:3px solid #6c2e26;background:#f9f5ebc7}.attribute-budget p{margin:.25rem 0;font:1rem/1.5 system-ui,sans-serif}.attribute-list{display:grid;gap:.7rem;max-width:44rem}.attribute-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem 1rem;padding:.85rem 1rem;border:1px solid rgba(23,35,31,.25);background:#f9f5ebb8}.attribute-row__label h3{margin:0;font:700 1.1rem/1.3 system-ui,sans-serif}.attribute-row__label p{margin:.2rem 0 0;color:#52615b;font:1rem/1.4 system-ui,sans-serif}.attribute-row__controls{display:flex;align-items:center;gap:.55rem}.attribute-stepper{min-width:2.75rem;min-height:2.75rem;padding:.4rem;font:700 1.2rem/1 system-ui,sans-serif}.attribute-stepper:disabled{opacity:.42;color:#52615b;background:#d9d5ca;border-color:#aaa69b;cursor:not-allowed}.attribute-stepper:disabled:hover{color:#52615b;background:#d9d5ca}.attribute-row__value{min-width:2rem;text-align:center;font:700 1.2rem/1.3 system-ui,sans-serif}.attribute-row .field-error{grid-column:1 / -1;font-size:1rem}.skill-budget{max-width:48rem}.resource-allocation{display:grid;gap:.3rem;max-width:48rem;margin:1rem 0 1.5rem;padding:1rem;border:1px solid rgba(23,35,31,.3);background:#f9f5ebbf}.resource-allocation__label{font:700 1.15rem/1.35 system-ui,sans-serif}.resource-allocation p{margin:0;font:1rem/1.5 system-ui,sans-serif}.resource-cost-note{color:#6c2e26;font-weight:700!important}.resource-allocation .field-error{font-size:1rem}.skill-groups{display:grid;gap:1rem}.skill-group{margin:0;padding:1rem;border:1px solid rgba(23,35,31,.22);background:#f9f5eb75}.skill-group>h3{margin:0 0 .65rem;font:700 1.25rem/1.35 Georgia,Times New Roman,serif}.skill-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.skill-row{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.35rem;padding:.7rem;border:1px solid rgba(23,35,31,.18);background:#fffaf0e0}.skill-row .attribute-row__controls{justify-self:start}.skill-row__label h4{margin:0;font:700 1rem/1.35 system-ui,sans-serif;overflow-wrap:anywhere}.skill-row__label p{margin:.15rem 0 0;color:#6c2e26;font:1rem/1.35 system-ui,sans-serif}.skill-row .attribute-row__controls{gap:.25rem}.skill-row .attribute-stepper{min-width:2.5rem;min-height:2.75rem}.skill-row .field-error{grid-column:1 / -1;font-size:1rem}footer{max-width:48rem;margin:1.5rem 0 0;color:#52615b;font:.78rem/1.5 system-ui,sans-serif}@media(max-width:640px){#app{padding-top:2.5rem}.workspace__header{align-items:start;flex-direction:column}.character-form{grid-template-columns:1fr}.field,.field:nth-child(n+4){grid-column:1}.paths{grid-template-columns:1fr}.path-card{min-height:0}.resume{align-items:stretch;flex-direction:column}.archetype-grid,.age-groups{grid-template-columns:1fr}.attribute-row{grid-template-columns:minmax(0,1fr);padding:.75rem;gap:.45rem}.attribute-row__controls{justify-self:start}.attribute-row__controls{gap:.35rem}.skill-list,.skill-row{grid-template-columns:minmax(0,1fr)}.skill-row .attribute-row__controls{justify-self:start}.classic-actions .button--primary{margin-left:0}.classic-summary{display:block}body[data-screen=creed] #app{overflow:hidden}.intro:not(.intro--static){place-items:start center;padding:5rem 1.25rem 2rem}.creed__line{display:none;font-size:clamp(1.2rem,5vw,1.6rem);line-height:1.5}.creed[data-stanza="0"] [data-line="0"],.creed[data-stanza="0"] [data-line="1"],.creed[data-stanza="0"] [data-line="2"],.creed[data-stanza="1"] [data-line="3"],.creed[data-stanza="1"] [data-line="4"],.creed[data-stanza="1"] [data-line="5"],.creed[data-stanza="1"] [data-line="6"],.creed[data-stanza="2"] [data-line="7"],.creed[data-stanza="2"] [data-line="8"],.creed[data-stanza="2"] [data-line="9"],.creed[data-stanza="2"] [data-line="10"],.creed[data-stanza="3"] [data-line="11"],.creed[data-stanza="3"] [data-line="12"],.creed[data-stanza="3"] [data-line="13"],.intro--static .creed__line{display:block}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media(max-height:600px)and (min-width:641px){body[data-screen=creed] #app{overflow:hidden}.intro:not(.intro--static){place-items:start center;padding:3rem 1.25rem 1.5rem}.creed__line{display:none;font-size:clamp(1rem,3vh,1.3rem);line-height:1.35}.creed[data-stanza="0"] [data-line="0"],.creed[data-stanza="0"] [data-line="1"],.creed[data-stanza="0"] [data-line="2"],.creed[data-stanza="1"] [data-line="3"],.creed[data-stanza="1"] [data-line="4"],.creed[data-stanza="1"] [data-line="5"],.creed[data-stanza="1"] [data-line="6"],.creed[data-stanza="2"] [data-line="7"],.creed[data-stanza="2"] [data-line="8"],.creed[data-stanza="2"] [data-line="9"],.creed[data-stanza="2"] [data-line="10"],.creed[data-stanza="3"] [data-line="11"],.creed[data-stanza="3"] [data-line="12"],.creed[data-stanza="3"] [data-line="13"],.intro--static .creed__line{display:block}}
