@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cinzel-latin-ext-400-normal-XQK_CSAr.woff2) format("woff2"),url(/assets/cinzel-latin-ext-400-normal-DJ0Lq8y-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cinzel-latin-400-normal-DnUIPmzd.woff2) format("woff2"),url(/assets/cinzel-latin-400-normal-C8jUSQqm.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-latin-ext-700-normal-C24KFjuG.woff2) format("woff2"),url(/assets/cinzel-latin-ext-700-normal-CORa-yIv.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-latin-700-normal-Dkw14w9r.woff2) format("woff2"),url(/assets/cinzel-latin-700-normal-C-gK7hA8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel Decorative;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-decorative-latin-ext-700-normal-Dul5pKgq.woff2) format("woff2"),url(/assets/cinzel-decorative-latin-ext-700-normal-BaOC-94C.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel Decorative;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cinzel-decorative-latin-700-normal-CnX1aK6s.woff2) format("woff2"),url(/assets/cinzel-decorative-latin-700-normal-ov6XPGpn.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-cyrillic-ext-400-normal-DN8azYTI.woff2) format("woff2"),url(/assets/alegreya-cyrillic-ext-400-normal-Cj1kF6KR.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-cyrillic-400-normal-72Io3whm.woff2) format("woff2"),url(/assets/alegreya-cyrillic-400-normal-VT77nruV.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-greek-ext-400-normal-ueNFnE5s.woff2) format("woff2"),url(/assets/alegreya-greek-ext-400-normal-UcF-MPys.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-greek-400-normal-BI7tMDVB.woff2) format("woff2"),url(/assets/alegreya-greek-400-normal-BTnTTGc4.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-vietnamese-400-normal-D8CgJdBg.woff2) format("woff2"),url(/assets/alegreya-vietnamese-400-normal-D-Jsyxvv.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-latin-ext-400-normal-BJ1luULk.woff2) format("woff2"),url(/assets/alegreya-latin-ext-400-normal-I24-Fo_X.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-latin-400-normal-BLlBRtDv.woff2) format("woff2"),url(/assets/alegreya-latin-400-normal-BuQWlRPA.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-cyrillic-ext-400-italic-CJ53xJ73.woff2) format("woff2"),url(/assets/alegreya-cyrillic-ext-400-italic-281qz-PX.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Alegreya;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-cyrillic-400-italic-CzOFVsaV.woff2) format("woff2"),url(/assets/alegreya-cyrillic-400-italic-DSxbt1-2.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-greek-ext-400-italic-BqZ1xVE4.woff2) format("woff2"),url(/assets/alegreya-greek-ext-400-italic-EKR1I7m6.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Alegreya;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-greek-400-italic-DpcfyKEk.woff2) format("woff2"),url(/assets/alegreya-greek-400-italic-D9g29fJh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Alegreya;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-vietnamese-400-italic-CJsk7YCA.woff2) format("woff2"),url(/assets/alegreya-vietnamese-400-italic-DD2hiUnx.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Alegreya;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-latin-ext-400-italic-Cf8WgXZg.woff2) format("woff2"),url(/assets/alegreya-latin-ext-400-italic-BQgzjtbe.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-latin-400-italic-BXpar-rJ.woff2) format("woff2"),url(/assets/alegreya-latin-400-italic-CJvUQvZT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-cyrillic-ext-700-normal-Dx8o6fqX.woff2) format("woff2"),url(/assets/alegreya-cyrillic-ext-700-normal-A6q6xEOT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-cyrillic-700-normal-Bftrb-m-.woff2) format("woff2"),url(/assets/alegreya-cyrillic-700-normal-_o_NBoYw.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-greek-ext-700-normal-DzPShcR4.woff2) format("woff2"),url(/assets/alegreya-greek-ext-700-normal-DQPzd-kK.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-greek-700-normal-ByoPpMZf.woff2) format("woff2"),url(/assets/alegreya-greek-700-normal-mWQ2Ne64.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-vietnamese-700-normal-CvM8am9u.woff2) format("woff2"),url(/assets/alegreya-vietnamese-700-normal-CdvEC7Dz.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-latin-ext-700-normal-CEFih5UF.woff2) format("woff2"),url(/assets/alegreya-latin-ext-700-normal-B6bzkdlx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-latin-700-normal-Vpz_43wJ.woff2) format("woff2"),url(/assets/alegreya-latin-700-normal-BS7r-qZs.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Marcellus;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/marcellus-latin-ext-400-normal-DkjSXVBo.woff2) format("woff2"),url(/assets/marcellus-latin-ext-400-normal-D06jIo1e.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Marcellus;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/marcellus-latin-400-normal-86dSXJnk.woff2) format("woff2"),url(/assets/marcellus-latin-400-normal-AvMY561b.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--void: #07060a;--stone-1: #16130f;--stone-2: #1f1a14;--frame-fill: rgba(12, 10, 8, .92);--gold: #ffd100;--gold-2: #c9a24a;--gold-3: #7a5a1e;--bronze: #5a4220;--text: #f1e6cf;--text-dim: #a89a80;--parch-1: #efe0b9;--parch-2: #dcc796;--ink: #3b2412;--ink-dim: #6f5236;--q0: #9d9d9d;--q1: #ffffff;--q2: #1eff00;--q3: #0070dd;--q4: #a335ee;--q5: #ff8000;--q6: #e6cc80;--q7: #00ccff;--cls-warrior: #c69b6d;--cls-paladin: #f48cba;--cls-hunter: #aad372;--cls-rogue: #fff468;--cls-priest: #ffffff;--cls-shaman: #0070dd;--cls-mage: #3fc7eb;--cls-warlock: #8788ee;--cls-druid: #ff7c0a;--horde: #b30f0f;--alliance: #1c4fa8;--title: "Cinzel", "Trajan Pro", Georgia, serif;--display: "Cinzel Decorative", "Cinzel", Georgia, serif;--body: "Alegreya", "Iowan Old Style", Georgia, serif;--tip: "Marcellus", "Friz Quadrata", Georgia, serif;color-scheme:dark}*{box-sizing:border-box}html{background:var(--void)}body{margin:0;min-height:100vh;color:var(--text);font:17px/1.5 var(--body);background:radial-gradient(ellipse 120% 70% at 50% -10%,rgba(255,196,92,.13),transparent 60%),radial-gradient(ellipse 90% 60% at 50% 120%,rgba(110,20,10,.25),transparent 70%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),linear-gradient(180deg,var(--stone-2),var(--stone-1) 40%,var(--void));background-attachment:fixed}a{color:var(--gold);text-decoration-color:var(--gold-3);text-underline-offset:3px}a:hover{text-shadow:0 0 8px rgba(255,209,0,.5)}button,input,select{font:inherit;color:inherit}::selection{background:#ffd1004d}.wrap{max-width:1040px;margin:0 auto;padding:22px 22px 80px;display:flex;flex-direction:column;gap:26px}.notice{padding:64px;text-align:center;color:var(--text-dim);font-family:var(--title);letter-spacing:.08em}.label{font-family:var(--title);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-2)}.muted{color:var(--text-dim)}.tnum{font-variant-numeric:tabular-nums lining-nums}.mono{font-family:var(--tip);letter-spacing:.04em}.error{color:#ff5a3c;font-style:italic}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.grow{flex:1;min-width:0}.panel{position:relative;padding:22px 24px;background:linear-gradient(180deg,rgba(255,220,140,.05),transparent 30%),var(--frame-fill);border:1px solid var(--gold-2);outline:1px solid var(--gold-3);outline-offset:3px;box-shadow:0 0 0 4px #000000d9,0 14px 40px #0009,inset 0 0 40px #0009;border-radius:2px}.topbar{display:flex;justify-content:space-between;align-items:center}.brand{font-family:var(--display);font-size:22px;font-weight:700;color:var(--text);text-decoration:none;letter-spacing:.04em}.brand b{color:var(--gold);text-shadow:0 0 12px rgba(255,209,0,.35)}.brand small{font-family:var(--title);font-size:15px;font-weight:400;color:var(--text-dim);letter-spacing:.06em}.topbar a:not(.brand){font-family:var(--title);font-size:13px;letter-spacing:.14em;text-transform:uppercase}.hero{text-align:center;padding:46px 0 6px;animation:rise .7s ease-out both}.hero h1{font-family:var(--display);font-weight:700;font-size:clamp(34px,6vw,58px);line-height:1.08;margin:0 0 4px;background:linear-gradient(180deg,#fff6c8,#ffd34d 45%,#b97a17);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 #2a1600) drop-shadow(0 0 18px rgba(255,170,40,.25))}.hero h1 em{font-style:normal}.ornament{display:flex;align-items:center;justify-content:center;gap:12px;margin:14px auto 18px;color:var(--gold-2)}.ornament:before,.ornament:after{content:"";height:1px;width:min(160px,25vw);background:linear-gradient(90deg,transparent,var(--gold-2),transparent)}.ornament span{width:8px;height:8px;transform:rotate(45deg);background:var(--gold-2);box-shadow:0 0 8px #ffd10080}.hero p{color:var(--text-dim);max-width:640px;margin:0 auto;font-size:19px;font-style:italic}.form{display:flex;flex-direction:column;gap:18px;animation:rise .7s .12s ease-out both}.field{display:flex;flex-direction:column;gap:6px}.input,.select{width:100%;padding:10px 12px;color:var(--text);font-family:var(--body);font-size:17px;background:linear-gradient(180deg,#050403,#110e0a);border:1px solid var(--bronze);border-radius:2px;box-shadow:inset 0 2px 6px #000c}.input::placeholder{color:#6a5d48;font-style:italic}.input:focus,.select:focus{outline:none;border-color:var(--gold-2);box-shadow:inset 0 2px 6px #000c,0 0 10px #ffd10040}.select option,.select optgroup{background:#120f0b;color:var(--text)}.char-row{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:12px;align-items:end}.btn{cursor:pointer;padding:9px 20px;border-radius:3px;font-family:var(--title);font-weight:700;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);text-shadow:0 1px 0 #000;background:linear-gradient(180deg,#7e1610,#5b0d08 48%,#3a0603 52%,#4f0a06);border:1px solid #c9a24a;box-shadow:0 0 0 1px #000,inset 0 1px #ffbe7859,inset 0 -2px 4px #00000080}.btn:hover{background:linear-gradient(180deg,#a01e15,#74110a 48%,#4c0805 52%,#651009);color:#fff2a8}.btn:active{transform:translateY(1px);box-shadow:0 0 0 1px #000,inset 0 2px 6px #0009}.btn:disabled{filter:grayscale(.7) brightness(.7);cursor:default}.btn.primary{padding:11px 28px;font-size:15px}.btn.subtle{color:var(--text);background:linear-gradient(180deg,#2c241a,#16120d);border-color:var(--bronze)}.btn.subtle:hover{color:var(--gold);border-color:var(--gold-2)}.recent{display:flex;flex-direction:column;margin-top:4px}.recent a{display:flex;justify-content:space-between;gap:12px;padding:10px 2px;border-top:1px solid rgba(201,162,74,.2);text-decoration:none;color:var(--text)}.recent a:first-child{border-top:0}.recent-name{font-family:var(--title);font-weight:700;letter-spacing:.03em}.recent a:hover .recent-name{color:var(--gold)}.example{text-align:center;color:var(--text-dim);font-style:italic;animation:rise .7s .24s ease-out both}.plan-head{align-items:flex-start;gap:24px;animation:rise .6s ease-out both}.plan-head h1{font-family:var(--display);font-weight:700;font-size:clamp(30px,5vw,46px);margin:6px 0 8px;line-height:1.1;color:var(--gold);text-shadow:0 2px 0 #2a1600,0 0 22px rgba(255,170,40,.25)}.plan-head .lead{font-style:italic;color:var(--text-dim);margin:0;max-width:520px}.crest{display:inline-flex;align-items:center;gap:6px;padding:2px 12px 2px 10px;margin-right:8px;font-family:var(--title);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#fff;clip-path:polygon(0 0,100% 0,calc(100% - 8px) 50%,100% 100%,0 100%);box-shadow:inset 0 0 0 1px #00000080}.crest.horde{background:linear-gradient(180deg,#d0241a,var(--horde) 60%,#5e0505)}.crest.alliance{background:linear-gradient(180deg,#3672d8,var(--alliance) 60%,#0b2152)}.share{width:380px;max-width:100%;display:flex;flex-direction:column;gap:8px}.share code{font-family:var(--tip);font-size:14px;color:var(--text);padding:6px 10px;background:linear-gradient(180deg,#050403,#110e0a);border:1px solid var(--bronze);box-shadow:inset 0 2px 5px #000}.share .btn{padding:6px 12px;font-size:12px}.share-actions{justify-content:flex-end}.chars{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px}.char{--cls: var(--gold);animation:rise .6s .1s ease-out both}.char:nth-child(2){animation-delay:.18s}.char-head{display:flex;align-items:center;gap:14px}.sigil{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:50%;font-family:var(--display);font-weight:700;font-size:20px;color:#000;background:radial-gradient(circle at 35% 30%,#fff,var(--cls) 45%,color-mix(in srgb,var(--cls) 45%,#000));box-shadow:0 0 0 2px #000,0 0 0 3px var(--gold-2),0 0 14px color-mix(in srgb,var(--cls) 50%,transparent)}.char h2{font-family:var(--title);font-weight:700;font-size:25px;margin:0;color:var(--cls);text-shadow:0 2px 0 #000;line-height:1.1}.char .race{font-style:italic;color:var(--text-dim)}.char dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:16px 0 0}.char dt{font-family:var(--title);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-2);padding-top:3px}.char dd{margin:0}.offline{margin:0;padding:10px 16px;border:1px solid #8a2a12;border-radius:2px;background:#781e0a59;color:#ffcfb8;font-family:var(--title);letter-spacing:.04em}.quest{position:relative;max-width:620px;padding:0 12px 12px;background:linear-gradient(180deg,#2a2520,#15120f);border:2px solid #4b4033;box-shadow:0 0 0 1px #0b0907,0 0 0 3px var(--gold-3),0 16px 40px #000000b3;border-radius:3px;animation:rise .6s ease-out both}.quest-bar{display:flex;align-items:center;justify-content:center;height:34px;padding-left:52px}.quest-giver{font-family:var(--title);font-size:14px;letter-spacing:.08em;color:var(--gold);text-shadow:0 1px 0 #000}.quest-portrait{position:absolute;left:-14px;top:-16px;width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 40% 35%,#3a2c14,#0d0905 70%);border:3px solid #b78a2e;box-shadow:0 0 0 2px #1a1209,0 4px 12px #000000b3;font-family:var(--display);font-weight:700;font-size:40px;line-height:1;color:var(--gold);text-shadow:0 0 12px rgba(255,209,0,.9),0 0 26px rgba(255,160,0,.6),0 2px 0 #7a4a00;animation:quest-glow 2.4s ease-in-out infinite}@keyframes quest-glow{50%{text-shadow:0 0 18px rgba(255,209,0,1),0 0 38px rgba(255,160,0,.8),0 2px 0 #7a4a00}}.quest-page{padding:18px 22px 20px;color:var(--ink);background:radial-gradient(ellipse at 20% 0%,rgba(255,255,255,.35),transparent 50%),radial-gradient(ellipse at 100% 100%,rgba(120,70,20,.25),transparent 55%),linear-gradient(180deg,var(--parch-1),var(--parch-2));border:1px solid #6b4a22;box-shadow:inset 0 0 40px #6e421459}.quest-title{font-family:var(--title);font-weight:700;font-size:22px;color:#3a1d06;margin:0 0 8px}.quest-section{font-family:var(--title);font-weight:700;font-size:19px;color:#3a1d06;margin:16px 0 4px}.quest-text{display:block;margin:0 0 8px;color:#2b1607}.quest-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:4px 0 6px}.quest-choice{display:flex;align-items:center;gap:10px;padding:4px;text-align:left;cursor:pointer;background:linear-gradient(90deg,#281c0ed9,#46321c8c);border:1px solid #4a3219;border-radius:2px;color:#f1e6cf}.quest-choice:hover{border-color:#b78a2e}.quest-choice.chosen{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),0 0 12px #ffd1008c}.quest-icon{flex:none;width:42px;height:42px;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#4a3a22,#120d07);border:2px solid #8a6a2e;border-radius:2px;font-family:var(--tip);font-size:18px;color:var(--gold)}.quest-choice.chosen .quest-icon{border-color:var(--gold)}.quest-choice-name{font-family:var(--title);font-size:15px;letter-spacing:.02em}.quest-steps{margin:0;padding-left:22px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.quest-steps li{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;min-width:0}.quest-steps li::marker{font-family:var(--title);font-weight:700;color:#3a1d06}.quest-step-label{font-family:var(--title);font-weight:700;font-size:14px;color:#4a2a0c}.quest-page code{color:#2b1607;background:#5a37141f;border:1px solid rgba(90,55,20,.3);border-radius:2px;padding:4px 8px;min-width:0;overflow-wrap:anywhere}.quest-page .row{flex-wrap:nowrap}.quest-page .secret{color:#b3120f;font-weight:700}.quest-page .row>.btn{flex:none}.quest-download{justify-self:start;text-decoration:none}.block{position:relative;padding:26px 30px 22px;color:var(--ink);background:radial-gradient(ellipse at 20% 0%,rgba(255,255,255,.35),transparent 50%),radial-gradient(ellipse at 100% 100%,rgba(120,70,20,.25),transparent 55%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='p'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.6' numOctaves='4'/%3E%3CfeColorMatrix values='0 0 0 0 .35  0 0 0 0 .22  0 0 0 0 .08  0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23p)'/%3E%3C/svg%3E"),linear-gradient(180deg,var(--parch-1),var(--parch-2));border:1px solid #6b4a22;box-shadow:0 0 0 3px #1a1209,0 0 0 4px var(--gold-3),0 16px 36px #000000b3,inset 0 0 50px #6e421459;border-radius:2px;animation:rise .6s ease-out both}.block:nth-of-type(3){animation-delay:.06s}.block:nth-of-type(4){animation-delay:.12s}.block:nth-of-type(5){animation-delay:.18s}.block:nth-of-type(6){animation-delay:.24s}.block-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap;padding-bottom:10px;margin-bottom:6px;border-bottom:1px solid rgba(90,55,20,.35)}.block-head h3{font-family:var(--title);font-weight:700;font-size:22px;margin:0;color:#4a2a0c;letter-spacing:.02em}.levels{display:inline-block;margin-right:10px;padding:0 10px;border-radius:2px;font-family:var(--title);font-weight:700;font-size:15px;letter-spacing:.06em;color:var(--gold);background:linear-gradient(180deg,#3a2410,#1d1006);box-shadow:inset 0 0 0 1px var(--gold-3);vertical-align:3px}.block-zones{font-style:italic;color:var(--ink-dim)}.block-notes{font-style:italic;color:var(--ink-dim);margin:4px 0 0}.places{display:flex;flex-direction:column}.places>.targets+.place,.place+.place{margin-top:10px}.place{border-top:1px solid rgba(90,55,20,.35);padding-top:8px}.places>.place:first-child{border-top:0;padding-top:4px}.place>.targets{margin-left:14px;padding-left:14px;border-left:2px solid rgba(122,90,30,.35)}.place-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.place-mark{flex:none;width:10px;height:10px;transform:rotate(45deg) translateY(-1px);align-self:center;background:linear-gradient(135deg,#e7c45a,#8a5a12);box-shadow:0 0 0 1px #3b2412,0 0 6px #ffbe3c73}.place-name{font-family:var(--title);font-size:17px;letter-spacing:.03em}.block .place-name .ref{color:#4a2a0c}.place-levels{padding:0 8px;border-radius:2px;font-family:var(--title);font-weight:700;font-size:12.5px;letter-spacing:.06em;color:#6a3d0c;background:#7a5a1e24;box-shadow:inset 0 0 0 1px #7a5a1e73}.place-state{margin-left:auto;font-family:var(--title);font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8a5a22}.place.done .place-head{cursor:pointer}.place.done .place-mark{background:linear-gradient(135deg,#8fd36a,#2f7a12);box-shadow:0 0 0 1px #1d3b0c,0 0 6px #50b42866}.place.done .place-state{color:#2f7a12}.place.done .place-head:hover .place-state,.place.done .place-head:focus-visible .place-state{text-decoration:underline}.place.done .place-head:focus-visible{outline:1px dotted #6a3d0c;outline-offset:2px}.place.folded .place-name .ref{color:#7a6448}.place-fold{font-size:12px;color:#8a5a22}.targets{list-style:none;margin:4px 0 0;padding:0}.target{display:grid;grid-template-columns:24px 1fr auto;gap:12px;align-items:start;padding:9px 0;border-top:1px dashed rgba(90,55,20,.28)}.target:first-child{border-top:0}.tick{width:17px;height:17px;margin-top:4px;position:relative;border-radius:2px;background:linear-gradient(180deg,#f6ebcc,#d2bb86);border:1px solid #6b4a22;box-shadow:inset 0 1px 2px #00000059}button.tick{padding:0;cursor:pointer}button.tick:hover{border-color:#2f7a12}button.tick:focus-visible{outline:1px dotted #6a3d0c;outline-offset:2px}.tick.done:after{content:"";position:absolute;left:4px;top:-3px;width:7px;height:14px;transform:rotate(40deg);border:solid #2f7a12;border-width:0 3px 3px 0;filter:drop-shadow(0 1px 0 #f6ebcc)}.target-title{font-weight:700;color:#2b1607}.target.done .target-title{color:#7a6448;text-decoration:line-through;text-decoration-color:#3c1e0a80}.target-meta{font-size:15px;color:var(--ink-dim);display:flex;gap:10px;flex-wrap:wrap;align-items:baseline;margin-top:1px}.editable{cursor:text;border-radius:2px}.editable:hover,.editable:focus-visible{text-decoration:underline dotted rgba(90,55,20,.55);text-underline-offset:3px;outline:none}.kind{font-family:var(--title);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#8a5a22}.badges{display:flex;gap:5px;justify-content:flex-end;flex-wrap:wrap;padding-top:2px}.badge{--cls: #6f5236;font-family:var(--title);font-size:11.5px;font-weight:700;letter-spacing:.06em;white-space:nowrap;padding:1px 9px;border-radius:2px;color:#fff;text-shadow:0 1px 0 #000;background:linear-gradient(180deg,color-mix(in srgb,var(--cls) 80%,#000),color-mix(in srgb,var(--cls) 45%,#000));box-shadow:inset 0 0 0 1px #00000073}.badge.both{--cls: #8a6a24}.ref{position:relative;display:inline;cursor:help;border-bottom:1px dotted currentColor}.ref:focus{outline:none;text-shadow:0 0 6px rgba(255,209,0,.6)}.q0{color:var(--q0)}.q1{color:var(--q1)}.q2{color:var(--q2)}.q3{color:var(--q3)}.q4{color:var(--q4)}.q5{color:var(--q5)}.q6{color:var(--q6)}.q7{color:var(--q7)}.block .ref{color:#6a3d0c;font-weight:700}.block .ref.q0{color:#6e6e6e}.block .ref.q1{color:#3b2412}.block .ref.q2{color:#1a7d00}.block .ref.q3{color:#0050a8}.block .ref.q4{color:#7726b0}.block .ref.q5{color:#b85500}.char .ref{color:var(--gold)}.card{position:fixed;z-index:1000;width:300px;padding:10px 12px;font:400 13.5px/1.45 var(--tip);color:#fff;text-align:left;letter-spacing:.01em;text-decoration:none;text-shadow:0 1px 1px #000;pointer-events:none;background:linear-gradient(180deg,#0a0a1cf5,#02020af5);border:2px solid #8f96a6;border-radius:5px;box-shadow:inset 0 0 0 1px #000,0 0 0 1px #000,0 10px 28px #000000b3}.card>*{display:block}.card .t-name{font-size:15.5px}.card .split{display:flex;justify-content:space-between;gap:8px}.card .green{color:#1eff00}.card .gold{color:#ffd100}.card .dim{color:#9d9d9d}.card .flavor{color:#ffd100}.cls-warrior{--cls: var(--cls-warrior)}.cls-paladin{--cls: var(--cls-paladin)}.cls-hunter{--cls: var(--cls-hunter)}.cls-rogue{--cls: var(--cls-rogue)}.cls-priest{--cls: var(--cls-priest)}.cls-shaman{--cls: var(--cls-shaman)}.cls-mage{--cls: var(--cls-mage)}.cls-warlock{--cls: var(--cls-warlock)}.cls-druid{--cls: var(--cls-druid)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}@media(max-width:640px){.char-row{grid-template-columns:1fr}.share{width:100%}}
