@font-face{font-family:Cinzel;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzel/v26/8vIJ7ww63mVu7gt7-GT7LEc.woff2) format("woff2");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-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzel/v26/8vIJ7ww63mVu7gt79mT7.woff2) format("woff2");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-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzel/v26/8vIJ7ww63mVu7gt7-GT7LEc.woff2) format("woff2");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-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzel/v26/8vIJ7ww63mVu7gt79mT7.woff2) format("woff2");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-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzel/v26/8vIJ7ww63mVu7gt7-GT7LEc.woff2) format("woff2");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-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzel/v26/8vIJ7ww63mVu7gt79mT7.woff2) format("woff2");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-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzeldecorative/v19/daaCSScvJGqLYhG8nNt8KPPswUAPni7dTMx7aA.woff2) format("woff2");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-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzeldecorative/v19/daaCSScvJGqLYhG8nNt8KPPswUAPni7TTMw.woff2) format("woff2");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-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzeldecorative/v19/daaHSScvJGqLYhG8nNt8KPPswUAPniZoadlKSTG7lQ.woff2) format("woff2");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-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/cinzeldecorative/v19/daaHSScvJGqLYhG8nNt8KPPswUAPniZoadlESTE.woff2) format("woff2");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:Crimson Text;font-style:italic;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfajheK_Zt3Q.woff2) format("woff2");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:Crimson Text;font-style:italic;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfajhfK_Zt3Q.woff2) format("woff2");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:Crimson Text;font-style:italic;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlpogwHKFkZgtmSR3NB0oRJfajhRK_Y.woff2) format("woff2");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:Crimson Text;font-style:italic;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajCOD-Nd_LV_fg.woff2) format("woff2");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:Crimson Text;font-style:italic;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajCOD-Nc_LV_fg.woff2) format("woff2");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:Crimson Text;font-style:italic;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlprgwHKFkZgtmSR3NB0oRJfajCOD-NS_LU.woff2) format("woff2");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:Crimson Text;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJfYAhTM_I.woff2) format("woff2");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:Crimson Text;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJfYQhTM_I.woff2) format("woff2");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:Crimson Text;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJfbwhT.woff2) format("woff2");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:Crimson Text;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJXsCxGA9NQ5LE.woff2) format("woff2");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:Crimson Text;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJXsCxGAtNQ5LE.woff2) format("woff2");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:Crimson Text;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJXsCxGDNNQ.woff2) format("woff2");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:IM Fell English;font-style:italic;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/imfellenglish/v14/Ktk3ALSLW8zDe0rthJysWrnLsAzHFZOafYs.woff2) format("woff2");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:IM Fell English;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/imfellenglish/v14/Ktk1ALSLW8zDe0rthJysWrnLsAzHEKOY.woff2) format("woff2");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:Special Elite;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/specialelite/v20/XLYgIZbkc4JPUL5CVArUVL0ntn4OSEFt.woff2) format("woff2");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:Special Elite;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/specialelite/v20/XLYgIZbkc4JPUL5CVArUVL0ntnAOSA.woff2) format("woff2");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}.page-title{font-family:Cinzel,serif;font-size:20px;font-weight:600;color:#2a1804;letter-spacing:.04em;margin:0 0 14px}.section-label{font-family:Cinzel,serif;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.3em;color:#48300e}.pnum{font-family:Special Elite,cursive;font-size:8.5px;letter-spacing:.22em;text-transform:uppercase;color:#48300e}.wbl{font-family:Cinzel,serif;font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:#48300e}.wbd{font-family:Crimson Text,serif;font-size:12px;font-style:italic;color:#48300e;line-height:1.5}.fi-label{display:block;font-family:Cinzel,serif;font-size:7.5px;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:#48300e;margin-bottom:2px}@keyframes pageFlipOut{0%{transform:rotateY(0)}to{transform:rotateY(-90deg)}}@keyframes pageFlipIn{0%{transform:rotateY(90deg)}to{transform:rotateY(0)}}.page-flip-container{perspective:2000px;width:100%;height:100%}.page-leaving{animation:pageFlipOut .7s cubic-bezier(.55,.06,.45,.94) forwards;transform-origin:left center}.page-entering{animation:pageFlipIn .7s cubic-bezier(.55,.06,.45,.94) forwards;transform-origin:left center}.lib-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .52s cubic-bezier(.4,0,.2,1);cursor:pointer}.lib-card-inner.flipped{transform:rotateY(180deg)}.lib-card-front,.lib-card-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:4px;overflow:hidden}.lib-card-back{transform:rotateY(180deg);overflow-y:auto}.lib-card-inner:not(.flipped) .lib-card-back{overflow-y:hidden}.secret-content{transition:filter .4s ease,color .4s ease}.secret-content.locked{filter:blur(4px);color:#482c0a00;-webkit-user-select:none;user-select:none}.secret-content.revealed{filter:none;color:#482c0a}.ctrl-btn{transition:background .2s ease,transform .12s ease}.ctrl-btn:hover:not(:disabled){transform:scale(1.06)}.ctrl-btn:active:not(:disabled){transform:scale(.94)}.ctrl-btn:disabled{opacity:.2;cursor:default}.knock-spark{position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;pointer-events:none;animation:knock-burst .62s ease-out forwards;background:var(--color, #C8A030);box-shadow:0 0 5px 1px var(--color, #C8A030)}@keyframes knock-burst{0%{transform:translate(-50%,-50%) translate(0) scale(1);opacity:1}60%{opacity:.85}to{transform:translate(-50%,-50%) translate(var(--dx),var(--dy)) scale(.2);opacity:0}}@keyframes stackPulse{0%{transform:scale(1)}40%{transform:scale(1.04) translate(4px)}to{transform:scale(1)}}.wb{border:1px dashed rgba(110,75,22,.28);border-radius:3px;padding:8px 14px;margin-bottom:8px}.wb.accent{border-color:#82581c73;cursor:pointer}.wb.accent:hover{background:#6e4b160a}.wb.locked{opacity:1;pointer-events:none}.wb.ai{border-color:#4e30824d;background:#4e30821a}.wb.success{border-color:#26582a59;background:#26582a1a}.fi{width:100%;background:#fff8e88c;border:1px solid rgba(110,75,22,.32);border-radius:2px;outline:none;font-family:Crimson Text,serif;font-size:12px;font-style:italic;color:#2a1804;padding:5px 8px;margin-bottom:10px;transition:border-color .2s ease,background .2s ease}.fi::placeholder{color:#6e4b16;font-style:italic}.fi:focus{border-color:#5a3a9aa6;background:#2e1a5e0a;outline:none}textarea.fi{resize:vertical;border:1px solid rgba(110,75,22,.28);padding:6px 8px;border-radius:2px;min-height:80px;line-height:1.55}.badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:2px;font-family:Cinzel,serif;font-size:7px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;border:1px solid}.badge.dm{background:#821c1c1f;border-color:#821c1c59;color:#6e1616}.badge.player{background:#1c4e821a;border-color:#1c4e824d;color:#163e6e}.badge.ai{background:#4e30821a;border-color:#4e30824d;color:#3e266e}.badge.arcane{background:#2e1a5e1f;border-color:#5a3a9a6b;color:#b496ff}.lock-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:2px;font-family:Cinzel,serif;font-size:7px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border:1px dashed;cursor:pointer;transition:background .2s ease}.lock-pill.locked{background:#8c301c1a;border-color:#8c301c59;color:#782816}.lock-pill.open{background:#26582a1a;border-color:#26582a59;color:#1e4822}.pc-card{width:150px;height:220px;flex-shrink:0;perspective:700px;cursor:pointer}.pc-card-cast .lib-card-front{background:linear-gradient(160deg,#c8b07a,#e0c98a,#c4a86a)}.pc-card-location .lib-card-front{background:linear-gradient(160deg,#9ab0b8,#b8cdd6,#8aa0a8)}.pc-card-sublocation .lib-card-front{background:linear-gradient(160deg,#a8a070,#c4bc88,#98906a)}.pc-card-shop .lib-card-front{background:linear-gradient(160deg,#4765a7,#759bd7,#3d5a9e)}.pc-card-player .lib-card-front{background:linear-gradient(160deg,#b8a8d4,#d4cce8,#a89ec4)}.lib-card-front,.lib-card-back{padding:10px;box-shadow:0 3px 10px #00000038}.lib-card-back{background:linear-gradient(108deg,#e4d5a0,#f2e6c6,#eeddb2);padding:10px 8px;scrollbar-width:thin}.lib-card-back::-webkit-scrollbar{width:3px}.lib-card-back::-webkit-scrollbar-thumb{background:#6e4b1633;border-radius:2px}.card-name{font-family:Cinzel,serif;font-size:10px;font-weight:700;color:#2a1804;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-descriptor{font-family:Crimson Text,serif;font-size:9px;font-style:italic;color:#2a1804;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-desc{font-family:Crimson Text,serif;font-size:10px;font-style:italic;color:#48300e;line-height:1.4;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.sc{display:flex;gap:8px;flex-wrap:wrap}.sv{flex:1;min-width:80px;border:1px dashed rgba(110,75,22,.28);border-radius:3px;padding:8px;text-align:center;cursor:pointer;transition:background .2s ease}.sv:hover{background:#6e4b160a}.sv .sv-value{font-family:Cinzel,serif;font-size:16px;font-weight:700;color:#2a1804}.sv .sv-label{font-family:Cinzel,serif;font-size:7px;text-transform:uppercase;letter-spacing:.2em;color:#48300e}.cast-row{display:flex;align-items:center;gap:8px;padding:7px 8px;border-bottom:1px solid rgba(110,75,22,.14);cursor:pointer;transition:background .2s ease}.cast-row:hover{background:#6e4b160a}.cast-row .cast-img{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#c8a060,#8c6030);display:flex;align-items:center;justify-content:center;font-family:Cinzel,serif;font-size:11px;font-weight:700;color:#fff8e6;flex-shrink:0}.cast-row .cast-row-info{flex:1;min-width:0}.cast-row .cast-row-name{font-family:Cinzel,serif;font-size:10px;font-weight:600;color:#2a1804;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cast-row .cast-row-desc{font-family:Crimson Text,serif;font-size:9px;font-style:italic;color:#48300e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cast-row .cast-row-arrow{font-size:12px;color:#48300e;flex-shrink:0}.dv{height:1px;background:#6e4b1624;margin:8px 0}.orn{text-align:center;font-family:Crimson Text,serif;font-size:10px;color:#6e4b1647;margin:8px 0;letter-spacing:.3em}.wr{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.scroll-body{overflow-y:auto;scrollbar-width:thin}.scroll-body::-webkit-scrollbar{width:3px}.scroll-body::-webkit-scrollbar-thumb{background:#6e4b1633;border-radius:2px}.save-status{font-family:Cinzel,serif;font-size:7px;text-transform:uppercase;letter-spacing:.15em}.save-status.saving{color:#48300e}.save-status.saved{color:#1e4822}.save-status.error{color:#6e1616}.campaign-primary-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;background:#238c46;border:1px solid rgba(70,190,110,.6);border-radius:4px;font-family:Cinzel,serif;font-size:8px;font-weight:bolder;letter-spacing:.16em;text-transform:uppercase;color:#dcffeb;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.campaign-primary-btn:hover{background:#32a555;border-color:#5ad282;color:#ebfff5}.campaign-primary-btn:disabled{opacity:.5;cursor:not-allowed}.campaign-secondary-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;background:none;border:1px solid rgba(255,255,255,.4);border-radius:4px;font-family:Cinzel,serif;font-size:8px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#c8e1ebbf;cursor:pointer;transition:border-color .18s ease,color .18s ease}.campaign-secondary-btn:hover{border-color:#ffffffa6;color:#c8e1ebf2}.campaign-secondary-btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;background:#6e4b161a;border:1px solid rgba(130,88,28,.45);border-radius:2px;font-family:Cinzel,serif;font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:#2a1804;cursor:pointer;transition:background .2s ease,transform .12s ease}.btn-primary:hover{background:#6e4b1629;transform:scale(1.02)}.btn-primary:active{transform:scale(.97)}.btn-ghost{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:transparent;border:1px dashed rgba(110,75,22,.28);border-radius:2px;font-family:Cinzel,serif;font-size:9.5px;text-transform:uppercase;letter-spacing:.12em;color:#48300e;cursor:pointer;transition:background .2s ease}.btn-ghost:hover{background:#6e4b160f}.role-card{flex:1;border:1px dashed rgba(110,75,22,.28);border-radius:4px;padding:22px 14px;cursor:pointer;transition:background .2s ease,border-color .2s ease}.role-card:hover{background:#6e4b160a;border-color:#82581c73}.search-bar{width:100%;background:#ffffff26;border:1px solid rgba(110,75,22,.28);border-radius:3px;padding:6px 10px;font-family:Crimson Text,serif;font-size:11px;font-style:italic;color:#2a1804;outline:none;margin-bottom:8px}.search-bar::placeholder{color:#48300e}.search-bar:focus{border-color:#8c5a1c}.card-grid{display:flex;flex-wrap:wrap;gap:14px;padding:8px 0}.wr-page-header{margin-bottom:12px}.page-title-row{margin:0 0 0 8px;flex:1}.page-title-sm{margin:0 0 4px}.flex-1{flex:1}.flex-2{flex:2}.form-field{flex:1}.form-field-wide{flex:2}.form-field-min{flex:1;min-width:120px}.form-row-gap{gap:12px}.fi-no-mb{margin-bottom:0}.form-card-preview{display:flex;justify-content:center;margin-bottom:20px}.center-save{display:flex;justify-content:center;margin-bottom:16px}.center-save-lg{display:flex;justify-content:center;margin-bottom:24px}.form-narrow{max-width:360px}.wb-section{margin-bottom:16px}.wb-narrow{max-width:360px}.btn-full{width:100%}.fi-sm{font-size:11px;padding:4px 8px}.detail-secrets-header{font-family:Cinzel,serif;font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:#694812;border-bottom:.5px solid rgba(110,75,22,.22);padding-bottom:3px;margin:8px 0 6px}.secret-row{display:flex;align-items:flex-start;gap:6px;padding:5px 0;border-bottom:.5px solid rgba(110,75,22,.12)}.secret-text{flex:1;font-family:Crimson Text,serif;font-size:11px;color:#482c08;line-height:1.4}.secret-textarea{flex:1;resize:vertical;min-height:40px}.secret-delete-btn,.secret-cancel-btn{flex-shrink:0;font-size:11px;background:none;border:1px solid rgba(160,40,20,.4);border-radius:3px;color:#a02814;padding:1px 5px;cursor:pointer;line-height:1.4;margin-top:1px}.secret-delete-btn:hover,.secret-cancel-btn:hover{background:#a0281414}.secret-add-btn{display:block;margin-top:8px;font-family:Cinzel,serif;font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:#694812;background:none;border:1px dashed rgba(110,75,22,.38);border-radius:5px;padding:5px 12px;width:100%;cursor:pointer}.secret-add-btn:hover{background:#f0daa840}.btn-upload-done{width:100%;color:#f0e6d0}.card-slot-front{height:100%;display:flex;flex-direction:column;padding:0;overflow:hidden}.card-slot-back{height:100%;display:flex;flex-direction:column;padding:0}.card-front-header{padding:6px 8px 4px;flex-shrink:0}.card-back-content{flex:1;overflow-y:auto;padding:10px}.card-image-area{flex:1;position:relative;min-height:0}.card-img-fill{width:100%;height:100%;object-fit:cover;display:block}.card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.pc-card-cast .card-placeholder{background:linear-gradient(160deg,#c8b07a,#e0c98a,#c4a86a)}.pc-card-location .card-placeholder{background:linear-gradient(160deg,#9ab0b8,#b8cdd6,#8aa0a8)}.pc-card-sublocation .card-placeholder{background:linear-gradient(160deg,#a8a070,#c4bc88,#98906a)}.card-initial{font-family:Cinzel,serif;font-size:40px;font-weight:700;color:#2a1804}.card-desc-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to bottom,transparent 0%,rgba(10,6,2,.82) 100%);padding:18px 8px 7px}.card-desc-text{margin:0;font-family:Crimson Text,serif;font-size:9px;font-style:italic;color:#fff0c8;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-edit-btn{position:absolute;top:4px;right:4px;z-index:1;font-family:Cinzel,serif;font-size:6px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:2px 6px;border:none;border-radius:2px;background:#140c048c;color:#fff0c8;cursor:pointer}.card-delete-btn{flex-shrink:0;width:100%;height:20px;border:none;border-top:1px solid rgba(110,75,22,.2);background:#6e1f1fd1;font-family:Cinzel,serif;font-size:6px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#ffd2be;cursor:pointer}.card-back-name{margin-bottom:6px}.dv-card{margin:0 8px 4px;flex-shrink:0}.dv-mb{margin-bottom:6px}.fi-label-strong{font-weight:700;color:#2a1804;margin-bottom:1px}.card-field-value{margin:0 0 8px}.card-form-inner{height:100%;display:flex;flex-direction:column;border-radius:4px;overflow:hidden;padding:0}.card-form-header{padding:8px 10px 4px;flex-shrink:0}.card-form-image{flex:1;width:100%;object-fit:cover;display:block;min-height:0}.card-form-placeholder{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.card-form-placeholder-simple{flex:1;display:flex;align-items:center;justify-content:center}.card-upload-hint{font-size:8px;font-family:Cinzel,serif;letter-spacing:.1em;color:#2a1804;text-transform:uppercase}.pointer-none{pointer-events:none}.delete-overlay{position:fixed;inset:0;background:#0a0602b8;z-index:1000;display:flex;align-items:center;justify-content:center}.delete-panel{background:#1e1410;border:1px solid rgba(140,48,28,.45);border-radius:6px;padding:28px 32px;max-width:320px;width:90%;text-align:center}.delete-panel-title{font-family:Cinzel,serif;font-size:13px;font-weight:700;color:#f0e6d0;letter-spacing:.06em;margin-bottom:10px}.delete-panel-message{font-family:Crimson Text,serif;font-size:15px;color:#f0dcb4;margin:0 0 24px;line-height:1.5}.delete-btn-row{display:flex;gap:10px;justify-content:center}.btn-modal-cancel{font-family:Cinzel,serif;font-size:8px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:9px 20px;border:1px solid rgba(110,75,22,.4);border-radius:3px;background:#fff5dc0f;color:#f0dcb4;cursor:pointer}.btn-modal-delete{font-family:Cinzel,serif;font-size:8px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:9px 20px;border:1px solid rgba(140,48,28,.55);border-radius:3px;background:#8c301c2e;color:#ffa08cf2;cursor:pointer}.upload-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.upload-panel{background:#2a2a3a;border:1px solid var(--accent, #b8945a);border-radius:8px;padding:24px;min-width:280px;max-width:360px;display:flex;flex-direction:column;align-items:center;gap:16px}.upload-panel-title{margin:0;font-family:Cinzel,serif;font-size:14px;letter-spacing:.1em;color:#f0e6d0}.upload-file-label{cursor:pointer;color:#f0e6d0;font-family:Cinzel,serif;font-size:12px;letter-spacing:.08em;border:1px solid #b8945a;padding:6px 16px;border-radius:4px}.hidden-input{display:none}.save-label{font-family:Crimson Text,serif;font-size:11px;font-style:italic;color:#48300e;white-space:nowrap;transition:opacity .28s ease}.save-label.save-label--saving{color:#5a3a9a}.save-label.save-label--error{color:#a02828}.save-spark-host{position:relative;display:inline-flex}.currency-display{display:flex;flex-direction:column;gap:1px;margin-bottom:8px}.currency-display-header{font-family:Cinzel,serif;font-size:7px;letter-spacing:.18em;text-transform:uppercase;color:#694812;padding-bottom:2px}.currency-display-divider{height:.5px;background:#6e4b1624;margin-bottom:3px}.currency-row{display:flex;align-items:baseline;padding:1px 0}.currency-row-sep{font-family:Crimson Text,serif;font-size:9px;color:#82581c73;padding:0 3px}.currency-row-type{font-family:Cinzel,serif;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#48300e}.currency-row-amount{font-family:Crimson Text,serif;font-size:10px;color:#2a1804}.currency-display--compact .currency-display-header{font-size:6px}.currency-display--compact .currency-row-type{font-size:7px}.currency-display--compact .currency-row-amount{font-size:9px}.ml-auto{margin-left:auto}.text-center{text-align:center}.text-error{color:#6e1616}.section-label-mb{margin-bottom:8px}.empty-state-pad{padding:20px 0}.empty-state-center{padding:20px;text-align:center}.btn-ghost--xs,.lock-pill--xs{font-size:7px}.orn-mt{margin-top:24px}.list-arrow{font-size:16px;color:#6e4b16}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;background:#000;font-family:Crimson Text,serif;color:#2a1804;user-select:none;-webkit-user-select:none}input,textarea,select{user-select:text;-webkit-user-select:text}a{color:inherit;text-decoration:none}button{font-family:inherit;border:none;background:none;cursor:pointer}
