/* Burgundy theatre: decorative headings, quiet reading surfaces. */
:root{--paper:#f6efe5;--ink:#302326;--muted:#66545a;--green:#741e36;--line:#d4c3b5;--soft:#eee0d4;--white:#fffaf3;--gold:#d6b78c;--night:#180d12;font-family:'Segoe UI',Arial,sans-serif;font-size:17px;line-height:1.8;color-scheme:light}
body{background:radial-gradient(ellipse at 12% 0,#6a182b 0,transparent 45%),radial-gradient(ellipse at 90% 45%,#411324 0,transparent 45%),#180d12;color:var(--ink)}
h1,h2,h3,.brand,.paper-note{font-family:Georgia,'Times New Roman',serif}h1{font-weight:400}h2{font-size:2.1rem}h3{font-size:1.5rem}a{color:#741e36}.header{max-width:1360px;border-bottom:1px solid #745345;padding:28px 38px;color:#fff4e5}.header a{color:#f7eadb}.brand{font-size:1.45rem}.brand i{color:#e2c8ad}.brand-icon{color:var(--gold)}nav{gap:26px;font-size:14px}nav a{padding:10px 0}nav a[aria-current=page]{border-color:#e8c899;color:#ffe4b9}.header a:hover{color:#fff}.wrap{max-width:1240px;margin:38px auto 0;padding:50px 56px;background:var(--paper);border:1px solid #bba187;box-shadow:0 24px 70px #0003;border-radius:3px}.page-title{max-width:960px}.page-title h1{font-size:clamp(2.5rem,4.5vw,4rem);color:#64182d}.page-title>p{font-size:1.03rem}.eyebrow{color:#741e36;font-size:12px;letter-spacing:.17em;font-weight:600}.article{max-width:790px;font-size:1rem;line-height:1.85}.article h2{font-size:1.85rem;margin-top:38px}.article b,.article strong{font-weight:650}.article li{padding-bottom:19px}.layout{grid-template-columns:225px minmax(0,1fr);gap:35px}.sidebar a[aria-current=step]{background:#761e37;color:#fff4e5}.sidebar a:hover{background:#e5d4c7}.sidebar a[aria-current=step]:hover{background:#64172e}.sidebar .small{font-size:11px;letter-spacing:.07em}.btn{background:#761e37;border-color:#761e37;color:#fff7ed;border-radius:2px;padding:14px 24px;transition:background .15s,transform .15s}.btn:hover{background:#561025;transform:translateY(-1px)}.btn.secondary{color:#741e36}.platforms a{border-radius:2px;padding:11px 16px}.platforms a[aria-current=page]{background:#741e36;color:#fff7ed}.callout{background:#eee0d4;border-left-color:#8d3a4c}.callout.warning{background:#f4e4ca;border-color:#906126}.tag{border-radius:2px;background:#ead9cc;color:#642135}.small,figcaption{color:#66545a}.image-button{background:#e4d6ca;border-color:#bba797;border-radius:3px;padding:12px}.image-button:hover{border-color:#741e36}.image-button img{border-radius:1px}details{border-color:#ccb7a8}summary{color:#641c31;font-weight:600;font-size:1rem}pre{background:#25181f;color:#fff2e2;border:1px solid #775665;border-radius:3px;line-height:1.8}.copy{color:#641c31;border-color:#bba797;padding:9px 15px}.example{background:#fffaf3;border-color:#d1bda9}.empty{background:#eee0d4;border:1px solid #d6bdab;border-radius:3px}.overview-guide{background:#e9d5c5;border:1px solid #ae7a79}.overview-guide summary{color:#62192e}.overview-guide summary:hover{background:#dfc5b3}.next{border-color:#ccb7a8}.section-head h2{font-size:2.3rem}.card{border-radius:2px}.card:hover{border-color:#ae7a79}.close{color:#641c31}.skip{color:#641c31}footer{max-width:1240px;border-color:#745345;color:#dfc9b8;padding:28px 15px;margin-top:35px}footer a{color:#f0d8b9}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b17744;outline-offset:5px}
body[data-page=home] .wrap{background:transparent;box-shadow:none;border:0;padding:22px 35px 35px;margin-top:20px;color:#f9eee1;max-width:1300px}body[data-page=home] .hero{grid-template-columns:1.08fr 1fr;gap:50px;padding:25px 0 70px;position:relative}body[data-page=home] .hero h1{font-size:clamp(3.3rem,6.2vw,5.6rem);line-height:1.08;letter-spacing:-.045em;color:#fff4e5}body[data-page=home] .hero h1 em{color:#e6bf99;font-weight:400}body[data-page=home] .hero p{font-size:1rem;line-height:1.85;color:#efdfd1;max-width:510px}body[data-page=home] .eyebrow{color:#e9c697}body[data-page=home] .small{color:#d9bfad}body[data-page=home] .actions>a:not(.btn){color:#f5dec5}body[data-page=home] .btn{background:#f2dfc5;color:#521429;border-color:#f2dfc5}body[data-page=home] .btn:hover{background:#fff2df}body[data-page=home] .section-head{border-top:1px solid #8b6357;padding-top:38px}body[data-page=home] .section-head h2{color:#f7e7d3}body[data-page=home] .card{background:linear-gradient(140deg,#35131e,#211018);border:1px solid #926456;color:#fce8d4;padding:30px}body[data-page=home] .card p{color:#e2c8b7;font-size:.92rem}body[data-page=home] .step-no{color:#d2ad87;letter-spacing:.08em}body[data-page=home] .card:hover{background:#471627;border-color:#d4b18a}body[data-page=home] .cards{gap:18px}
.portrait-stage{position:relative;min-height:590px;padding:35px 25px 30px;display:flex;align-items:stretch;justify-content:center;isolation:isolate}.portrait-stage:before{content:'';position:absolute;inset:0 -12px;background:radial-gradient(ellipse at 50% 40%,#ae536833,transparent 65%);z-index:-1}.portrait-frame{position:relative;width:100%;border:1px solid #c3a17a;border-radius:48% 48% 4px 4px;box-shadow:inset 0 0 0 7px #28101a,inset 0 0 0 8px #a57c5c,0 25px 65px #0004;background:radial-gradient(ellipse at 48% 40%,#692237,#260e1a 70%);display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:530px}.portrait-frame:before{content:'';position:absolute;inset:30px;border:1px solid #c5a87e66;border-radius:48% 48% 2px 2px}.portrait-frame:after{content:'';position:absolute;width:270px;height:270px;border-radius:50%;border:1px solid #b5917355;box-shadow:0 0 0 20px #af806408,0 0 0 55px #af806408;top:85px}.portrait-placeholder{z-index:1;text-align:center;color:#e6cbb1;padding:45px;max-width:310px}.portrait-placeholder .portrait-star{display:block;font-family:Georgia,serif;font-size:68px;color:#e8c79c;margin-bottom:20px}.portrait-placeholder p{font-family:Georgia,serif;font-size:1.65rem!important;line-height:1.4!important;color:#f2dbc0!important}.portrait-placeholder small{display:block;font-size:12px;line-height:1.6;color:#dac0b1}.portrait-ornament{position:absolute;top:0;left:0;width:100%;text-align:center;font-family:Georgia,serif;font-size:35px;color:#e5c296;letter-spacing:15px}.portrait-caption{position:absolute;bottom:4px;left:0;width:100%;text-align:center;font-family:Georgia,serif;color:#ebcbab;font-style:italic;letter-spacing:.03em}.portrait-image{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;object-position:center bottom}.hero:after{content:'✦';position:absolute;right:12px;top:14px;font-size:28px;color:#ead0aa}.hero .actions{margin:30px 0 22px}
@media(max-width:1000px){.wrap{margin:25px 20px 0;padding:35px 30px}.header{padding:24px 30px}.portrait-stage{min-height:480px;padding-inline:10px}.portrait-frame{min-height:430px}body[data-page=home] .hero{gap:25px}.layout{grid-template-columns:190px minmax(0,1fr);gap:25px}nav{gap:12px 22px}}
@media(max-width:700px){.header{padding:20px}.wrap{margin:18px 12px 0;padding:28px 20px}.layout{display:block}.sidebar{position:static;display:flex;overflow:auto}.sidebar a{border-radius:2px}.article{font-size:16px}.page-title h1{font-size:2.65rem}.article h2{font-size:1.65rem}.platforms{gap:7px}.platforms a{font-size:13px;padding:10px}.cards{grid-template-columns:1fr}.section-head h2{font-size:1.9rem}body[data-page=home] .wrap{padding:20px 22px;margin:0}body[data-page=home] .hero{grid-template-columns:1fr;gap:25px;padding:15px 0 45px}body[data-page=home] .hero h1{font-size:3.8rem}body[data-page=home] .hero p{font-size:16px}.portrait-stage{width:min(100%,420px);justify-self:center;min-height:410px}.portrait-frame{min-height:370px}.portrait-placeholder{padding:40px}.portrait-placeholder .portrait-star{font-size:45px;margin-bottom:10px}.portrait-frame:after{width:200px;height:200px;top:65px}.hero:after{display:none}body[data-page=home] .card{padding:25px}.image-button{padding:6px}nav{font-size:13px}.overview-guide summary{font-size:14px;padding:16px}.overview-guide .screenshot{margin:10px}footer{margin-inline:20px}pre{font-size:12px}body[data-page=home] .section-head{padding-top:28px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Jewelled details stay outside the reading surface. */
body:before{content:'';position:fixed;inset:0;background:url('assets/starfield.svg') repeat;pointer-events:none;z-index:-1;opacity:.8}body{isolation:isolate}.header{position:relative}.header:after{content:'◇';position:absolute;bottom:-13px;left:50%;color:#ffe3ae;background:#30111c;padding:0 10px;font-size:18px;line-height:24px}.wrap{position:relative}.wrap:before{content:'';position:absolute;inset:8px;border:1px solid #b58b5545;pointer-events:none}body[data-page=home] .wrap:before{display:none}.portrait-stage{filter:drop-shadow(0 0 16px #cf96521a)}.portrait-frame{box-shadow:inset 0 0 0 5px #4d2931,inset 0 0 0 7px #e4c18c,inset 0 0 0 10px #3e1a28,inset 0 0 0 11px #ad7f49,0 0 0 3px #b58c6266,0 20px 65px #0006}.portrait-ornament{font-size:39px;text-shadow:0 0 16px #f0c77c66}.portrait-caption{bottom:-5px}.section-head{position:relative}body[data-page=home] .section-head:before{content:'';position:absolute;top:-29px;left:50%;transform:translateX(-50%);width:min(420px,80%);height:58px;background:url('assets/ornament.svg') center/contain no-repeat}.card{position:relative}.card:after{content:'✧';position:absolute;right:16px;top:16px;color:#d6b78c;font-size:22px}.screenshot{padding:11px 0;position:relative}.image-button{position:relative;border:1px solid #8c5c33;border-radius:5px;padding:16px;background:linear-gradient(135deg,#5b332c,#d8b47a 8%,#6c3d31 14%,#b98c55 45%,#f0d7a3 50%,#8b5a37 56%,#43252a);box-shadow:0 8px 23px #442a2526,inset 0 0 0 3px #ead2a0,inset 0 0 0 5px #513328}.image-button img{border:2px solid #442b27;box-shadow:0 0 0 2px #ead1a488}.image-button:before,.image-button:after{content:'◆';position:absolute;font-size:16px;line-height:20px;color:#fff0c9;text-shadow:1px 1px 0 #86562b,0 0 8px #ffefb1;pointer-events:none;z-index:1}.image-button:before{top:0;left:2px}.image-button:after{bottom:0;right:2px}figcaption{padding:4px 8px}.recommend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:25px 0 35px}.recommend-card{position:relative;padding:30px 28px;background:linear-gradient(145deg,#fffaf2,#f0e2d2);border:1px solid #b99566;box-shadow:inset 0 0 0 5px #fff9ef,inset 0 0 0 6px #ddc6a2,0 9px 22px #492d1e0c;display:flex;flex-direction:column;min-width:0}.recommend-card h3{color:#651a30;font-size:1.8rem;margin-bottom:16px}.recommend-card p{font-size:.94rem;line-height:1.8}.recommend-card .byline{font:12px/1.6 'Segoe UI',sans-serif;letter-spacing:.025em;color:#765745;margin:0 22px 13px 0}.card-gem{position:absolute;right:17px;top:12px;font-size:25px;color:#9a7137}.source-link{margin-top:auto;padding-top:8px;font-size:14px;font-weight:600}.collection-section{scroll-margin-top:25px;margin:48px 0}.collection-section>h2{border-bottom:1px solid #c9a77c;padding-bottom:18px;font-size:2rem}.collection-section>h2 span{font-size:20px;color:#a5763c;vertical-align:middle;margin-right:7px}.collection-jumps{display:flex;gap:10px;flex-wrap:wrap}.collection-jumps button{background:#fff7e9;color:#692039;border:1px solid #b79467;padding:9px 14px;font-size:13px;border-radius:2px}.collection-jumps button:hover{background:#ead6bc}.preset-picks ul{margin:0;padding-left:18px}.preset-picks li{padding-bottom:9px}.table-scroll{overflow-x:auto}.guide-table{width:100%;border-collapse:collapse;margin:20px 0;background:#fffaf2;font-size:15px}.guide-table th,.guide-table td{border:1px solid #d4ba97;padding:16px;text-align:left}.guide-table th{background:#ebd6bd;color:#631d32}.menu-guides{grid-template-columns:1fr}.menu-symbol{font-size:30px;color:#9b713a;margin-bottom:10px}.menu-guides ul{padding-left:20px}.menu-guides li{font-size:15px;padding-bottom:12px}footer{position:relative}footer:before{content:'';width:210px;height:40px;position:absolute;top:-22px;left:50%;transform:translateX(-50%);background:url('assets/ornament.svg') center/contain no-repeat}
@media(max-width:700px){.recommend-grid{grid-template-columns:1fr;gap:18px}.recommend-card{padding:25px}.collection-section>h2{font-size:1.75rem}.collection-jumps{gap:7px}.collection-jumps button{font-size:12px;padding:8px 10px}.image-button{padding:11px}.image-button:before,.image-button:after{font-size:12px}.guide-table{font-size:13px}.guide-table td,.guide-table th{padding:12px}.collection-page.wrap{padding-inline:20px}.collection-section{margin:35px 0}.wrap:before{inset:5px}body:before{opacity:.55}}
