:root{color:#f7e9bd;font-synthesis:none;text-rendering:optimizelegibility;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#130b1d;font-family:Crimson Pro,Georgia,serif}*{box-sizing:border-box}html,body{color:#f7e9bd;background:#130b1d;min-height:100vh;margin:0}body{min-width:320px;overflow-x:hidden}button,input,textarea{font:inherit}.app-shell{--lx:-240px;--ly:-240px;background:radial-gradient(circle at 50% 45%,#7e4a7140,#0000 36%),linear-gradient(145deg,#1d0d2d 0%,#100918 48%,#1a0d27 100%);min-height:100vh;padding:42px clamp(20px,5vw,80px) 72px;position:relative;overflow:hidden}.app-shell:before{content:"";pointer-events:none;opacity:.23;background-image:linear-gradient(30deg,#0000 48%,#dbb25329 49%,#0000 50%),linear-gradient(150deg,#0000 48%,#dbb2531a 49%,#0000 50%);background-size:54px 94px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 62%);mask-image:linear-gradient(#000,#0000 62%)}.app-shell:after{content:"";z-index:12;pointer-events:none;background:radial-gradient(96px circle at var(--lx) var(--ly), #fff6d833, transparent 70%);mix-blend-mode:screen;position:fixed;inset:0}.ambient-glow{filter:blur(90px);pointer-events:none;border-radius:50%;width:360px;height:360px;position:absolute}.ambient-glow--one{background:#94538e38;top:-180px;left:-100px}.ambient-glow--two{background:#c3832c1f;bottom:-140px;right:-160px}.masthead{z-index:2;text-align:center;width:min(760px,100%);margin:0 auto;position:relative}.brand{justify-content:center;align-items:center;gap:18px;margin-bottom:26px;display:flex}.brand h1{color:#f1d58d;letter-spacing:.25em;text-shadow:0 2px #74501d,0 0 28px #ebc46538;margin:0;font-family:Cinzel,serif;font-size:clamp(38px,5vw,58px);font-weight:600;line-height:.95}.brand__eyebrow{color:#aa8aa8;letter-spacing:.3em;text-transform:uppercase;margin:0 0 7px;font-family:Cinzel,serif;font-size:9px}.brand__flourish{color:#b88b3f;font-size:10px}.keys{gap:10px;display:grid}.key-field{background:linear-gradient(90deg,#281533f0,#1a0f24e6);border:1px solid #d5ab506e;border-radius:999px;grid-template-columns:minmax(140px,.42fr) 1fr 24px;align-items:center;min-height:52px;padding:5px 17px 5px 22px;transition:border-color .18s,box-shadow .18s;display:grid;box-shadow:inset 0 1px #ffedb514,0 8px 24px #04010842}.key-field:focus-within{border-color:#dfbd6e;box-shadow:inset 0 1px #ffedb51f,0 0 0 3px #daae501a,0 10px 28px #0401084d}.key-field__label{color:#d6bd86;letter-spacing:.08em;text-align:left;text-transform:uppercase;white-space:nowrap;border-right:1px solid #d2aa5838;padding-right:20px;font-family:Cinzel,serif;font-size:10px;font-weight:600}.key-field input{color:#f6ebce;letter-spacing:.03em;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:7px 18px;font-size:15px}.key-field input::placeholder{color:#77647b;letter-spacing:0;font-style:italic}.key-field__seal{color:#bd9147;font-size:11px}.privacy-note,.key-hint{color:#736174;letter-spacing:.04em;margin:10px 0 0;font-size:12px;font-style:italic}.key-hint{color:#c9a36a}.book-stage{z-index:1;perspective:1800px;width:min(1120px,100%);margin:54px auto 0;padding-bottom:36px;position:relative}.book-shadow{filter:blur(27px);opacity:.75;background:#050208;border-radius:50%;height:78px;position:absolute;bottom:-32px;left:5%;right:5%;transform:rotateX(70deg)}.book{filter:drop-shadow(0 32px 28px #0200047a);position:relative;transform:rotateX(2deg)}.book__cover{background:radial-gradient(circle at 20% 20%,#ffcd6f14,#0000 20%),repeating-linear-gradient(110deg,#0000 0 5px,#00000009 6px 7px),linear-gradient(140deg,#683120,#351221 50%,#5b281d);border:2px solid #5b321a;border-radius:24px 24px 18px 18px;padding:22px 27px 28px;position:relative;box-shadow:inset 0 0 0 5px #32101b,inset 0 0 0 7px #ad7940,inset 0 -11px 12px #0a03076b}.book__gilt-frame{pointer-events:none;border:1px solid #d6a64a8c;border-radius:17px;position:absolute;inset:10px 13px 15px}.book__pages{z-index:1;background:#d6bc82;border-radius:11px 11px 8px 8px;grid-template-columns:1fr 28px 1fr;height:560px;min-height:560px;display:grid;position:relative;box-shadow:0 3px #b89a62,0 6px #9c7c4d,0 9px #705234}.page{color:#3c2a25;background:radial-gradient(circle at 20% 15%,#ffffff7a,#0000 18%),repeating-linear-gradient(0deg,#0000 0 27px,#66482f09 28px),#ead9ac;flex-direction:column;min-width:0;padding:44px 44px 36px;display:flex;position:relative;box-shadow:inset 0 0 38px #5f3b1f2b}.page--left{background:linear-gradient(90deg,#84572f14,#0000 11%),radial-gradient(circle at 20% 15%,#ffffff7a,#0000 18%),repeating-linear-gradient(0deg,#0000 0 27px,#66482f09 28px),#ead9ac;border-radius:10px 2px 2px 8px}.page--right{background:linear-gradient(270deg,#84572f14,#0000 11%),radial-gradient(circle at 80% 15%,#fff6,#0000 18%),repeating-linear-gradient(0deg,#0000 0 27px,#66482f09 28px),#ead9ac;border-radius:2px 10px 8px 2px}.page-running{color:#8f7555;letter-spacing:.22em;text-align:center;text-transform:uppercase;margin:0 0 8px;font-family:Cinzel,serif;font-size:10px}.page textarea{resize:none;color:#3c2a25;caret-color:#8c3f39;background:0 0;border:0;outline:0;flex:1;width:100%;min-height:330px;font-size:clamp(19px,2vw,24px);line-height:1.48;display:block}.page textarea::placeholder{color:#a28a68;font-style:italic}.page textarea:focus{background:linear-gradient(#0000 96%,#80573129 96%) 0 0/100% 35px}.page-compose{flex-direction:column;flex:auto;gap:16px;width:100%;min-height:0;display:flex}.page--left .page-compose textarea,.page--left .page-compose .photo-well{flex:1 1 0;width:100%;min-height:0}.page--left .page-compose.is-writing textarea,.page--left .page-compose.is-photo .photo-well{flex:auto;min-height:300px}.photo-well{color:#8f7555;text-align:center;cursor:pointer;background:linear-gradient(45deg,#8b5f330f 25%,#0000 25% 75%,#8b5f330f 75%) 0 0/22px 22px,#c2a67129;border:1.5px dashed #8a60348c;border-radius:10px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:.35rem;min-height:0;padding:1.25rem;display:flex;position:relative;overflow:hidden}.page--left .page-compose.is-photo .photo-well{flex:auto;min-height:300px}.photo-well.is-over{background-color:#fff8dc73;border-color:#8c3f39}.photo-well img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.photo-well__title,.photo-well__hint{z-index:1;position:relative}.photo-well__title{letter-spacing:.16em;text-transform:uppercase;font-family:Cinzel,serif;font-size:13px;font-weight:600}.photo-well__hint{max-width:16rem;font-size:15px;font-style:italic}.photo-well:has(img){border-style:solid;justify-content:flex-end;padding-bottom:1.1rem}.photo-well:has(img):after{content:"";z-index:0;pointer-events:none;background:linear-gradient(#0000,#24120a80);height:46%;position:absolute;bottom:0;left:0;right:0}:is(.photo-well:has(img) .photo-well__title,.photo-well:has(img) .photo-well__hint){color:#f6ebce;text-shadow:0 1px 2px #24120acc}.page-footnote{color:#8f7555;text-align:center;margin:10px 0 0;font-size:14px;font-style:italic}.book__spine{z-index:3;background:linear-gradient(90deg,#482b1b3b,#fff8d338 45%,#4a2b1c4d),#d3b878;position:relative;box-shadow:-8px 0 13px #4c2f1e29,8px 0 13px #4c2f1e29}.book__spine span{background:#6f4b2d40;width:1px;position:absolute;top:18px;bottom:18px;left:50%}.mystery-frame{cursor:default;background:radial-gradient(circle,#0000 0 34%,#825b330d 35% 36%,#0000 37%),linear-gradient(45deg,#8b5f330d 25%,#0000 25% 75%,#8b5f330d 75%) 0 0/26px 26px,#c2a6711f;border:1px solid #754d2d4d;flex-direction:column;flex:auto;justify-content:center;align-items:center;width:100%;height:auto;min-height:0;display:flex;position:relative;overflow:hidden}label.mystery-frame{cursor:pointer}.mystery-frame.is-busy{cursor:progress;opacity:.72}.mystery-frame.is-working .question-mark{animation:1.8s ease-in-out infinite reveal-glow}.mystery-frame:before{content:"";pointer-events:none;border:1px solid #754d2d30;position:absolute;inset:8px}.mystery-frame img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.question-mark{z-index:1;color:#8b623a;text-shadow:1px 2px #fff6d1b8,3px 5px 9px #462a192e;font-family:Cinzel,serif;font-size:clamp(82px,10vw,128px);line-height:1;position:relative}.mystery-frame p{z-index:1;color:#8f7555;letter-spacing:.03em;text-align:center;margin:12px 0 0;font-size:15px;font-style:italic;position:relative}.mystery-caption{z-index:1;color:#f6ebce;letter-spacing:.16em;text-align:center;text-transform:uppercase;text-shadow:0 1px 2px #24120ab3;margin:0;font-family:Cinzel,serif;font-size:10px;font-style:normal;position:absolute;bottom:14px;left:16px;right:16px}.mystery-frame__ornament{z-index:1;background:#a17b4c;width:84px;height:1px;position:absolute;left:50%;transform:translate(-50%)}.mystery-frame__ornament:before,.mystery-frame__ornament:after{content:"";border:1px solid #a17b4c;width:7px;height:7px;position:absolute;top:-3px;transform:rotate(45deg)}.mystery-frame__ornament:before{left:-4px}.mystery-frame__ornament:after{right:-4px}.mystery-frame__ornament--top{top:34px}.mystery-frame__ornament--bottom{bottom:34px}.page__number{color:#967a54;text-align:center;margin:0;font-family:Cinzel,serif;font-size:10px;position:absolute;bottom:11px;left:0;right:0}.page-count{z-index:1;color:#967a54;letter-spacing:.04em;pointer-events:none;margin:0;font-family:Cinzel,serif;font-size:10px;position:absolute;bottom:14px;right:36px}.page-count.is-over{color:#8c3f39}.page__corner{pointer-events:none;border-color:#8a60348c;width:34px;height:34px;position:absolute}.page__corner--top-left{border-top:1px solid;border-left:1px solid;top:18px;left:18px}.page__corner--bottom-left{border-bottom:1px solid;border-left:1px solid;bottom:18px;left:18px}.page__corner--top-right{border-top:1px solid;border-right:1px solid;top:18px;right:18px}.page__corner--bottom-right{border-bottom:1px solid;border-right:1px solid;bottom:18px;right:18px}.book__ribbon{z-index:4;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%);filter:drop-shadow(2px 4px 3px #0000004d);background:linear-gradient(90deg,#5b1724,#8e2b38 48%,#4a111d);width:23px;height:66px;position:absolute;bottom:-34px;left:calc(50% + 5px)}.page-actions,.folio,.ledger-actions,.budget-fields,.key-dialog-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.page-actions{z-index:1;justify-content:center;margin-top:12px;position:relative}.photo-trigger{letter-spacing:.12em;text-transform:uppercase;color:#3c2412;cursor:pointer;background:linear-gradient(#f3d79a 0%,#c8963e 100%);border:1px solid #8a6230;border-radius:999px;justify-content:center;align-items:center;margin:0;padding:.55rem .95rem;font-family:Cinzel,serif;font-size:10px;font-weight:600;line-height:1.2;display:inline-flex;box-shadow:inset 0 1px #fff8dcb3}.photo-trigger:hover{background:linear-gradient(#ffe7b0 0%,#d7a64a 100%)}.app-shell button.light-capsule,.key-field.light-capsule{transition:filter .18s,box-shadow .18s,border-color .18s}.app-shell button.light-capsule:hover:not(:disabled),.key-field.light-capsule:hover{filter:brightness(1.12)}.app-shell button.illustrate{letter-spacing:.28em;min-width:min(100%,26rem);padding:1.15rem 2.8rem;font-size:15px}.beneath{z-index:2;flex-direction:column;align-items:center;gap:.85rem;margin-top:.35rem;display:flex;position:relative}.work-status{color:#8f7555;letter-spacing:.06em;text-align:center;max-width:28rem;margin:0;font-family:Cinzel,serif;font-size:13px;font-style:italic}.app-shell button{letter-spacing:.12em;text-transform:uppercase;color:#3c2412;cursor:pointer;background:linear-gradient(#f3d79a 0%,#c8963e 100%);border:1px solid #8a6230;border-radius:999px;margin:0;padding:.55rem .95rem;font-family:Cinzel,serif;font-size:10px;font-weight:600;line-height:1.2;box-shadow:inset 0 1px #fff8dcb3}.app-shell button:hover:not(:disabled){background:linear-gradient(#ffe7b0 0%,#d7a64a 100%)}.app-shell button:disabled{cursor:not-allowed;opacity:.45}.app-shell button.quiet{color:#8f7555;box-shadow:none;background:0 0;border-color:#0000}.app-shell button.quiet:hover:not(:disabled){color:#5c331c;background:0 0}.folio,.ledger{z-index:2;width:min(760px,100%);margin:46px auto 0;position:relative}.folio{color:#d6bd86;letter-spacing:.16em;text-transform:uppercase;justify-content:center;gap:.8rem;font-family:Cinzel,serif;font-size:11px}.folio button.quiet{color:#d6bd86}.folio button.quiet:hover:not(:disabled){color:#f1d58d}.ledger{background:linear-gradient(#281533b8,#1009188c);border:1px solid #d5ab5059;border-radius:18px;gap:14px;padding:18px 20px 16px;display:grid}.ledger h2,.key-dialog h2,.screen-state p:last-child{color:#f1d58d;letter-spacing:.14em;text-transform:uppercase;margin:0;font-family:Cinzel,serif;font-size:16px;font-weight:600}.ledger-hint,.screen-state .brand__eyebrow{color:#aa8aa8;margin:4px 0 0;font-size:15px;font-style:italic}.ledger textarea,.budget-count{color:#f6ebce;resize:vertical;background:#0c061273;border:1px solid #d5ab5059;border-radius:12px;width:100%;min-height:5.5rem;padding:.8rem .9rem}.ledger textarea::placeholder{color:#77647b;font-style:italic}.ledger textarea:focus,.budget-count:focus,.key-dialog input:focus{outline-offset:1px;border-color:#dfbd6e;outline:2px solid #dfbd6e73}.budget{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.budget-figure{flex-direction:column;min-width:7rem;display:flex}.budget-number{color:#f1d58d;font-family:Cinzel,serif;font-size:2.4rem;line-height:1}.budget-label,.credit-note{color:#aa8aa8;font-size:14px;font-style:italic}.budget-count{width:5.5rem;min-height:0;font-family:Cinzel,serif;font-size:1.15rem}.reading-message{color:#6a2c24;margin:8px 0 0;font-size:15px;font-style:italic}.page .reading-message{text-align:center}.ledger .reading-message,.key-dialog-message{color:#f0d0a2;background:#8d3d3247;border-radius:8px;padding:.45rem .7rem}.start-over{justify-content:center;margin-top:.5rem;display:flex}.screen-state{z-index:1;text-align:center;width:min(520px,100%);margin:72px auto 0;position:relative}.page-photo{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.key-dialog-backdrop,.on-page-overlay{z-index:20;background:#08030eb8;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.key-dialog,.on-page-sheet{box-sizing:border-box;background:radial-gradient(circle at 20% 0,#ffcd6f14,#0000 28%),linear-gradient(160deg,#2a1436,#140b1c 60%);border:1px solid #d5ab5073;border-radius:18px;gap:.85rem;width:min(100%,32rem);margin:0;padding:1.4rem 1.35rem 1.3rem;display:grid;box-shadow:0 24px 60px #00000073}.key-dialog .key-field{text-align:left}.key-dialog-actions{justify-content:flex-end}.on-page-sheet{width:min(100%,52rem)}.on-page-sheet canvas{border-radius:8px;max-width:100%;height:auto;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes reveal-glow{50%{opacity:.45}}@media (max-width:760px){.app-shell{padding:30px 14px 58px}.brand{margin-bottom:22px}.key-field{border-radius:22px;grid-template-columns:1fr 20px;padding:8px 13px 8px 19px}.key-field__label{border:0;grid-column:1;margin-bottom:1px;padding:0}.key-field input{grid-column:1;padding:2px 0}.key-field__seal{grid-area:1/2/3}.book-stage{margin-top:38px}.book{transform:none}.book__cover{padding:15px 16px 21px}.book__pages{height:auto;min-height:0;box-shadow:none;background:0 0;grid-template-columns:1fr;gap:8px}.book__spine{display:none}.page{border-radius:8px;padding:36px 28px 30px;box-shadow:inset 0 0 28px #5f3b1f26,0 4px #9c7c4d}.page--left .page-compose textarea,.page--left .page-compose.is-writing textarea{height:auto;min-height:180px}.page--right{min-height:420px}.mystery-frame{flex:auto;height:auto;min-height:0}.page--left .page-compose,.page--left .page-compose.is-photo .photo-well{min-height:240px}.app-shell button.illustrate{letter-spacing:.18em;min-width:min(100%,18rem)}.book__ribbon{left:calc(50% - 12px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
