/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:"Marcellus",serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-blue-500:oklch(62.3% .214 259.815);--color-blue-700:oklch(48.8% .243 264.376);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--spacing:.25rem;--leading-normal:1.5;--radius-3xl:1.5rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.min-h-0{min-height:calc(var(--spacing)*0)}.w-\[500px\]{width:500px}.w-full{width:100%}.max-w-\[100vw\]{max-width:100vw}.max-w-\[300px\]{max-width:300px}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing)*3)}.gap-9{gap:calc(var(--spacing)*9)}.gap-16{gap:calc(var(--spacing)*16)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.self-stretch{align-self:stretch}.overflow-x-auto{overflow-x:auto}.rounded-3xl{border-radius:var(--radius-3xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-gray-200{border-color:var(--color-gray-200)}.stroke-gray-600{stroke:var(--color-gray-600)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-4{padding-inline:calc(var(--spacing)*4)}.pt-16{padding-top:calc(var(--spacing)*16)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.text-center{text-align:center}.leading-6{--tw-leading:calc(var(--spacing)*6);line-height:calc(var(--spacing)*6)}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.text-blue-700{color:var(--color-blue-700)}.text-gray-700{color:var(--color-gray-700)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media(hover:hover){.group-hover\:stroke-current:is(:where(.group):hover *){stroke:currentColor}.hover\:underline:hover{text-decoration-line:underline}}@media(prefers-color-scheme:dark){.dark\:block{display:block}.dark\:hidden{display:none}.dark\:border-gray-700{border-color:var(--color-gray-700)}.dark\:stroke-gray-300{stroke:var(--color-gray-300)}.dark\:text-blue-500{color:var(--color-blue-500)}.dark\:text-gray-200{color:var(--color-gray-200)}}}:root{--book-page:#ead7ad;--book-page-light:#f6e8c4;--book-page-deep:#c6a66d;--book-edge:#8a5f2e;--book-ink:#2d2117;--book-muted:#46301eb8;--book-rule:#6f492447;--book-rust:#9b4f24;--book-gold:#c6963f;--book-leaf:#5f7447;--book-shadow:#38231252}*{box-sizing:border-box}html,body{min-height:100dvh;color:var(--book-ink);-webkit-text-size-adjust:100%;background:radial-gradient(circle at 50% 0,#f6e8c4d1,#0000 34%),linear-gradient(#5a351c,#9f7543 42%,#d9bd82);margin:0;font-family:Marcellus,serif}body{touch-action:pan-y;overflow:hidden}a{color:inherit}button,input,select,textarea{font:inherit;font-size:16px}#root,.shrine-page,.shrine-fallback,.shrine-mobile-book,canvas{width:100%;height:100%}.shrine-page{background:radial-gradient(circle at 18% 16%,#f6dc9c61,#0000 24%),radial-gradient(circle at 84% 12%,#76502a52,#0000 25%),radial-gradient(circle at 20% 86%,#4a31194d,#0000 28%),linear-gradient(135deg,#573419d1,#c7a667c7);position:fixed;top:0;right:0;bottom:0;left:0}.shrine-fallback{background:radial-gradient(circle,#f6e8c485,#0000 30%),linear-gradient(#6b4424,#d8bd82);position:absolute;top:0;right:0;bottom:0;left:0}.shrine-mobile-book{background:linear-gradient(90deg,#53341b3d,transparent 14%,transparent 86%,#53341b38),repeating-linear-gradient(0deg,#5b3a1e0b 0 1px,transparent 1px 9px),linear-gradient(180deg,var(--book-page-light),var(--book-page)48%,var(--book-page-deep));position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.shrine-mobile-etched-pattern{pointer-events:none;mix-blend-mode:multiply;opacity:.74;background:linear-gradient(90deg,#0000 calc(50% - 1px),#5b3a1e38 50%,#0000 calc(50% + 1px)),repeating-linear-gradient(28deg,#0000 0,#0000 18px,#5b3a1e14 19px,#0000 21px),repeating-linear-gradient(152deg,#0000 0,#0000 26px,#fff4cb29 27px,#0000 29px),radial-gradient(at 50% 14%,#fff4cb57,#0000 38%),radial-gradient(at 50% 106%,#5b3a1e33,#0000 42%);position:absolute;top:0;right:0;bottom:0;left:0}.shrine-mobile-etched-pattern:before,.shrine-mobile-etched-pattern:after{content:"";background:repeating-linear-gradient(90deg,#0000 0,#0000 18px,#5b3a1e0f 19px,#0000 21px),repeating-linear-gradient(0deg,#0000 0,#0000 22px,#fff4cb2e 23px,#0000 25px);border:1px solid #5b3a1e2e;border-radius:8px;position:absolute;top:8%;right:9%;bottom:8%;left:9%}.shrine-mobile-etched-pattern:after{opacity:.56;background:radial-gradient(circle,#0000 0,#0000 2.4rem,#5b3a1e17 2.45rem,#5b3a1e17 2.55rem,#0000 2.6rem),repeating-conic-gradient(#5b3a1e14,#5b3a1e14 4deg,#0000 4deg,#0000 12deg);border-color:#5b3a1e24;top:14%;right:18%;bottom:14%;left:18%}.shrine-ui{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;height:100dvh;padding:max(1.25rem,env(safe-area-inset-top))max(1.25rem,env(safe-area-inset-right))max(1.25rem,env(safe-area-inset-bottom))max(1.25rem,env(safe-area-inset-left));pointer-events:auto;background:linear-gradient(90deg,#53341b29,#0000 18%,#0000 82%,#53341b29),linear-gradient(#f6e8c41f,#5c3a1f33);grid-template-rows:auto 1fr;gap:1.25rem;display:grid;overflow-y:auto}.glass-panel,.hero-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--book-rule);box-shadow:0 18px 48px var(--book-shadow),inset 0 1px #fff6d7d1,inset 0 -1px #6f49242e;pointer-events:auto;background:radial-gradient(circle at 92% 6%,#fff4cb5c,#0000 23%),radial-gradient(circle at 8% 92%,#6f49241f,#0000 25%),linear-gradient(90deg,#9b4f2414,#0000 22%,#0000 78%,#5f744714),linear-gradient(#f6e8c4e6,#e2c897d6);border-radius:8px;position:relative}.glass-panel:before,.hero-card:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(90deg,#56311629,#fff0 16%),linear-gradient(#fff6d76b,#fff0 20%),linear-gradient(270deg,#56311624,#fff0 16%),repeating-linear-gradient(0deg,#5b3a1e09 0,#5b3a1e09 1px,#0000 1px,#0000 7px);position:absolute;top:0;right:0;bottom:0;left:0}.glass-panel:after,.hero-card:after{content:"";pointer-events:none;border:1px solid #6f49242e;border-radius:5px;position:absolute;top:.42rem;right:.42rem;bottom:.42rem;left:.42rem}.hero-card{width:min(100%,72rem);max-width:72rem;margin:0 auto;padding:1.35rem 1.5rem}.hero-topline{justify-content:space-between;align-items:center;gap:1rem;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:#2b7eaa;margin:0 0 .5rem;font-family:Cinzel,serif;font-size:.73rem}.hero-card h1,.panel-heading h2,.boot-card h2,.placeholder-card h3,.gallery-card h3{letter-spacing:.03em;margin:0;font-family:Cinzel,serif;font-weight:700}.hero-card h1{color:#102d43;text-shadow:0 0 22px #7edcff3d,0 0 44px #4abee51f,0 1px #fff4cccc;max-width:10ch;font-size:clamp(2.2rem,4vw,4rem);line-height:.96}.hero-copy{color:#12314ac7;max-width:58rem;margin:.95rem 0 0;font-size:1rem;line-height:1.65}.source-lens-strip{flex-wrap:wrap;gap:.55rem;margin-top:1rem;display:flex}.source-lens-chip{color:#6d4a16;background:#fff7d87a;border:1px solid #b8802633;border-radius:999px;align-items:center;min-height:2rem;padding:.45rem .75rem;font-size:.82rem;display:inline-flex}.source-lens-chip.active{color:#12314a;background:linear-gradient(135deg,#fffae6d1,#bcefff94);border-color:#b880266b;box-shadow:0 0 18px #ffd36a33}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-top:1.2rem;display:grid}.hero-stats div{background:linear-gradient(135deg,#fffae670,#ffffff80),#ffffff80;border:1px solid #74bbdf38;border-radius:18px;padding:.9rem 1rem;position:relative;overflow:hidden}.hero-stats div:after{content:"";opacity:.58;background:linear-gradient(90deg,#ffb84d,#75d6f2,#6fb98f,#b87ba8);height:.18rem;position:absolute;inset:auto 0 0}.hero-stats span,.inline-metadata span,.gallery-card span,.field-label small{color:#234e6cb8;font-size:.82rem;display:block}.hero-stats strong,.inline-metadata,.gallery-card h3,.placeholder-card h3{color:#12314a}.content-grid{grid-template-rows:auto auto;grid-template-columns:1.15fr .95fr;align-content:start;gap:1rem;width:min(100%,72rem);margin:0 auto;padding-bottom:1.5rem;padding-right:.25rem;display:grid}.control-panel,.preview-panel,.gallery-panel{padding:1.25rem}.control-panel{background:radial-gradient(circle at 8% 8%,#ffd36a2e,#0000 28%),radial-gradient(circle at 92% 18%,#73c7a824,#0000 28%),linear-gradient(#f8fdffc2,#def4ff9e)}.preview-panel{background:radial-gradient(circle at 50% 0,#ffffff75,#0000 28%),radial-gradient(circle at 90% 18%,#ffd36a29,#0000 28%),linear-gradient(#f8fdffc2,#def4ff9e)}.gallery-panel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;grid-column:1/-1;max-height:38dvh;overflow:auto}.sacred-panel{max-height:none;overflow:visible}.panel-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.panel-heading p,.meta-block p,.placeholder-card p,.gallery-card p,.boot-card p{color:#234e6cc7;margin:0;line-height:1.55}.generator-form{gap:1rem;display:grid}.generator-form label,.field-label{color:#12314a;gap:.45rem;display:grid}.generator-form label>span,.field-label span,.progress-label-row span{letter-spacing:.04em;text-transform:uppercase;color:#2b7eaa;font-family:Cinzel,serif;font-size:.88rem}.generator-form select,.generator-form textarea,.generator-form input[type=text],.generator-form input[type=range]{width:100%}.generator-form select,.generator-form textarea,.generator-form input[type=text]{color:#12314a;resize:vertical;background:linear-gradient(90deg,#fff7d857,#ffffffc2),#ffffffc2;border:1px solid #699aac57;border-radius:10px;outline:none;min-height:2.9rem;padding:.9rem 1rem}.generator-form select:focus,.generator-form textarea:focus,.generator-form input[type=text]:focus{border-color:#3ea4d794;box-shadow:0 0 0 3px #78d1f838}.toggle-row{background:#ffffff80;border:1px solid #539dc438;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:.7rem;padding:.9rem 1rem}.toggle-row input{accent-color:#4aaeda;width:1.25rem;height:1.25rem}.mode-selector{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;padding:0;display:grid}.mode-selector legend{letter-spacing:.04em;text-transform:uppercase;color:#2b7eaa;grid-column:1/-1;margin-bottom:.45rem;font-family:Cinzel,serif;font-size:.88rem}.mode-card{color:#12314a;text-align:left;cursor:pointer;background:linear-gradient(90deg,#ffd67929,#0000 28%),radial-gradient(circle at 100% 0,#8cdcff33,#0000 42%),#ffffff94;border:1px solid #539dc43d;border-radius:8px;gap:.45rem;min-height:8rem;padding:1rem;display:grid}.mode-card strong{color:#0f4364;text-shadow:0 0 16px #7edcff2e;font-family:Cinzel,serif}.mode-card span,.mode-note{color:#234e6cc2;line-height:1.45}.mode-card.active{background:radial-gradient(circle at 20% 10%,#ffffffc7,#0000 46%),linear-gradient(#dbf6ffdb,#bee9ffbd);border-color:#2d9ed6b8;box-shadow:0 0 26px #4dbeeb33,inset 0 1px #ffffffa8}.muted-control{opacity:.58}.muted-control select,.muted-control textarea,.muted-control input{cursor:not-allowed}.chip-grid{flex-wrap:wrap;gap:.55rem;display:flex}.chip{color:#12314a;cursor:pointer;background:linear-gradient(135deg,#fff7d847,#ffffff94),#ffffff94;border:1px solid #7ea0974d;border-radius:8px;min-height:2.5rem;padding:.6rem .85rem;transition:transform .15s,background .15s,border-color .15s}.chip:hover,.chip.active{background:#c7edffb8;border-color:#38a0d280;transform:translateY(-1px)}.combo-row{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:.65rem;margin-top:.65rem;display:grid}.selected-deities{flex-wrap:wrap;gap:.55rem;margin-top:.75rem;display:flex}.selected-deity-chip{min-height:2.4rem;color:var(--book-ink);cursor:pointer;text-align:left;background:linear-gradient(135deg,#fff4cbe0,#c6963f57),#ead7adc7;border:1px solid #5b3a1e57;border-radius:8px;align-items:center;gap:.45rem;padding:.55rem .78rem .55rem .55rem;transition:transform .15s,border-color .15s,filter .15s;display:inline-flex;box-shadow:inset 0 1px #fff4cb94,0 5px 14px #5734191a}.selected-deity-chip:hover{filter:brightness(1.03);border-color:#672b1d94;transform:translateY(-1px)}.selected-deity-x{color:#fff6d7;background:#6d4324;border-radius:999px;flex:none;place-items:center;width:1.35rem;height:1.35rem;font-family:Arial,sans-serif;font-size:.9rem;font-weight:700;line-height:1;display:grid}.primary-button,.secondary-button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:999px;min-height:2.9rem;padding:.95rem 1.3rem;transition:transform .15s,filter .15s,opacity .15s;position:relative;overflow:hidden}.primary-button:after,.secondary-button:after,.guide-button:after,.guide-close:after{content:"";pointer-events:none;background:linear-gradient(120deg,#0000,#ffffff38,#0000);transition:transform .45s;position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-120%)}.primary-button:hover,.secondary-button:hover{filter:brightness(1.05);transform:translateY(-1px)}.primary-button:hover:after,.secondary-button:hover:after,.guide-button:hover:after,.guide-close:hover:after{transform:translate(120%)}.primary-button:disabled,.secondary-button:disabled{opacity:.68;cursor:progress;transform:none}.primary-button{color:#0f4364;background:linear-gradient(135deg,#fff,#b9edff 54%,#7bd1f3);font-family:Cinzel,serif;font-weight:700;box-shadow:0 0 24px #4dbeeb47}.secondary-button{color:#0f4364;text-shadow:0 0 16px #7edcff29;background:#ffffffa3;border:1px solid #539dc452;box-shadow:inset 0 1px #ffffff94}.guide-button,.guide-close{color:#12314a;cursor:pointer;text-shadow:0 0 16px #7edcff3d;background:radial-gradient(circle at 20% 20%,#ffffffb3,#0000 40%),#d8f4ffc7;border:1px solid #539dc457;border-radius:999px;min-height:2.55rem;padding:.7rem 1rem;font-family:Cinzel,serif;font-weight:700;position:relative;overflow:hidden;box-shadow:0 0 26px #4dbeeb29,inset 0 1px #ffffffb3}.guide-overlay{z-index:30;padding:max(1rem,env(safe-area-inset-top))max(1rem,env(safe-area-inset-right))max(1rem,env(safe-area-inset-bottom))max(1rem,env(safe-area-inset-left));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:radial-gradient(circle at 75% 18%,#ffffff75,#0000 24%),radial-gradient(circle at 20% 82%,#61c5eb38,#0000 24%),#d4f2ffc2;place-items:center;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.guide-window{-webkit-overflow-scrolling:touch;background:linear-gradient(#f7fdfff0,#dcf4fff5),radial-gradient(circle at 100% 0,#ffffff9e,#0000 38%);border:1px solid #ffffff9e;border-radius:24px;width:min(58rem,100%);max-height:min(88dvh,46rem);padding:1.25rem;position:relative;overflow:hidden auto;box-shadow:0 28px 90px #2b7eaa3d,0 0 60px #7edcff2e,inset 0 1px #ffffffb8}.modal-icon-close{z-index:4;color:#fff6d7;cursor:pointer;background:#6d4324;border:1px solid #5b3a1e61;border-radius:999px;place-items:center;width:2.35rem;height:2.35rem;padding:0;font-family:Arial,sans-serif;font-size:1.1rem;font-weight:700;line-height:1;display:grid;position:absolute;top:.85rem;right:.85rem;box-shadow:0 8px 18px #5734193d}.guide-window:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff75,#0000 62%);height:16rem;position:absolute;inset:-40% 20% auto}.guide-header{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem;display:flex;position:relative}.guide-header h2,.guide-grid h3{color:#12314a;text-shadow:0 0 20px #7edcff33;margin:0;font-family:Cinzel,serif}.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid;position:relative}.guide-grid section{background:linear-gradient(#ffffffad,#e7f8ff8a),#ffffff61;border:1px solid #539dc438;border-radius:16px;gap:.55rem;padding:.95rem;display:grid}.guide-grid p{color:#234e6cc7;margin:0;line-height:1.55}.guide-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-top:1rem;display:grid;position:relative}.guide-steps span{text-align:center;color:#0f4364;text-shadow:0 0 14px #7edcff33;background:#ffffff94;border:1px solid #539dc43d;border-radius:999px;padding:.72rem}.image-viewer-overlay{z-index:34;padding:max(1rem,env(safe-area-inset-top))max(1rem,env(safe-area-inset-right))max(1rem,env(safe-area-inset-bottom))max(1rem,env(safe-area-inset-left));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:radial-gradient(circle at 82% 12%,#ffffff9e,#0000 24%),radial-gradient(circle at 20% 88%,#75cff53d,#0000 28%),#daf5ffc7;place-items:center;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.image-viewer-window{-webkit-overflow-scrolling:touch;background:linear-gradient(#fafefff5,#e0f6fff5),radial-gradient(circle at 100% 0,#ffffffad,#0000 42%);border:1px solid #ffffffa8;border-radius:24px;grid-template-rows:auto minmax(0,1fr) auto;gap:1rem;width:min(92vw,78rem);min-width:min(100%,18rem);max-height:min(92dvh,58rem);padding:1.1rem;display:grid;overflow:hidden;box-shadow:0 28px 90px #2b7eaa47,inset 0 1px #ffffffc2}.image-viewer-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.image-viewer-header h2{color:#12314a;margin:0;font-family:Cinzel,serif}.image-viewer-window img{object-fit:contain;background:#ffffff94;border:1px solid #539dc438;border-radius:18px;width:100%;max-width:100%;height:auto;max-height:100%;display:block}.image-viewer-media{background:repeating-linear-gradient(0deg,#5b3a1e09 0,#5b3a1e09 1px,#0000 1px,#0000 8px),linear-gradient(135deg,#fff4cb80,#debe846b);border-radius:18px;place-items:center;min-width:0;min-height:min(36rem,58vh);display:grid;overflow:auto}.image-viewer-actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:.75rem;display:grid}.image-viewer-actions form,.image-viewer-actions button{width:100%}.image-frame{background:linear-gradient(135deg,#fffae66b,#ffffff80),#ffffff80;border:1px solid #539dc43d;border-radius:20px;position:relative;overflow:hidden}.image-open-button{width:100%;min-height:0;color:inherit;cursor:zoom-in;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;display:block}.image-open-button img{pointer-events:none}.image-open-button:focus-visible{outline-offset:3px;outline:3px solid #3ea4d7ad}.image-open-button:focus:not(:focus-visible){outline:none}.artwork-viewer-page{height:100dvh;min-height:100dvh;color:var(--book-ink);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:radial-gradient(circle at 20% 10%,#fff4cba6,#0000 28%),radial-gradient(circle at 80% 80%,#5b3a1e61,#0000 30%),linear-gradient(135deg,#563116,#b98a4a 54%,#ead7ad);padding:clamp(.85rem,2vw,1.75rem);overflow:hidden auto}.artwork-viewer-book{background:repeating-linear-gradient(0deg,#5b3a1e09 0,#5b3a1e09 1px,#0000 1px,#0000 8px),linear-gradient(90deg,#6f492433,#0000 9%,#0000 91%,#6f49242e),linear-gradient(#f6e8c4fa,#daba7efa);border:1px solid #5b3a1e59;border-radius:8px;grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:1rem;width:min(74rem,100%);min-height:calc(100dvh - 3.5rem);margin:0 auto;padding:clamp(1.1rem,2.5vw,2.1rem);display:grid;position:relative;box-shadow:0 28px 90px #2a190d6b,inset 0 1px #fff4cbd1}.artwork-viewer-book:before{content:"";pointer-events:none;border:1px solid #5b3a1e2e;border-radius:5px;position:absolute;top:.75rem;right:.75rem;bottom:.75rem;left:.75rem}.artwork-viewer-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.artwork-viewer-header h1,.artwork-viewer-book h1{margin:0;font-family:Cinzel,serif;font-size:clamp(1.8rem,4vw,3.4rem);line-height:.98}.artwork-viewer-subtitle{color:var(--book-muted);margin:.65rem 0 0;line-height:1.45}.artwork-viewer-media{background:#4a2c161a;border:1px solid #5b3a1e47;border-radius:8px;justify-content:center;align-items:center;min-height:min(34rem,54vh);max-height:calc(100dvh - 17rem);padding:.75rem;display:flex;overflow:auto}.artwork-viewer-media img{object-fit:contain;border-radius:6px;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 18.5rem);display:block}.artwork-viewer-actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:.65rem;display:grid}.artwork-viewer-actions button,.artwork-viewer-home{color:#2d2117;cursor:pointer;min-height:2.9rem;font:inherit;touch-action:manipulation;background:linear-gradient(135deg,#f1dca8,#b67833 52%,#6d4324);border:1px solid #5b3a1e61;border-radius:8px;justify-content:center;align-items:center;padding:.65rem .9rem;font-weight:700;text-decoration:none;display:inline-flex}.artwork-analysis{background:#fff4cb73;border:1px solid #5b3a1e40;border-radius:8px;padding:.9rem;line-height:1.55;display:none}.artwork-analysis.open{display:block}.artwork-analysis p{margin:0 0 .65rem}.artwork-analysis ul{margin:0;padding-left:1.2rem}.artwork-viewer-status{min-height:1.4em;color:var(--book-muted)}@media(max-width:720px){.artwork-viewer-page{padding:.7rem}.artwork-viewer-book{min-height:calc(100dvh - 1.4rem)}}.image-frame img{object-fit:contain;width:100%;height:auto;max-height:72dvh;display:block}.gallery-card img{aspect-ratio:1;object-fit:cover;width:100%;min-height:14rem;display:block}@supports not (aspect-ratio:1 / 1){.gallery-card img{height:14rem}}.meta-block,.analysis-block,.placeholder-card,.gallery-card{background:#ffffff8f;border:1px solid #539dc433;border-radius:18px;padding:.95rem}.placeholder-card,.preview-panel{gap:1rem;display:grid}.inline-metadata{flex-wrap:wrap;gap:.85rem;margin-bottom:.75rem;display:flex}.analysis-block{gap:.75rem;display:grid}.analysis-panel{background:#ebf9ffc7;border:1px solid #539dc43d;border-radius:16px;gap:.65rem;padding:.95rem;display:grid}.analysis-panel h3{color:#12314a;margin:0;font-family:Cinzel,serif}.analysis-panel p{color:#234e6cc7;margin:0;line-height:1.55}.analysis-panel ul{color:#234e6cc7;gap:.45rem;margin:0;padding-left:1.1rem;line-height:1.5;display:grid}.action-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.artwork-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;padding-top:.25rem}.action-row form,.action-row button{width:100%}.artwork-actions form{min-width:0;display:flex}.artwork-actions .secondary-button{text-align:center;white-space:normal;justify-content:center;align-items:center;height:100%;min-height:3.25rem;padding:.85rem 1rem;line-height:1.2;display:inline-flex}.progress-wrap{gap:.45rem;display:grid}.progress-label-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.meter-shell{background:#ffffff80;border:1px solid #539dc438;border-radius:999px;height:.72rem;overflow:hidden}.meter-fill{border-radius:inherit;background:linear-gradient(90deg,#fff,#b9edff 55%,#5cc4ee);height:100%;transition:width .18s;box-shadow:0 0 20px #4dbeeb57}.progress-time-row{color:var(--book-muted);flex-wrap:wrap;justify-content:space-between;gap:.75rem;font-size:.84rem;display:flex}.error-banner{color:#8a1f1f;background:#ffebebd1;border:1px solid #d453533d;border-radius:14px;padding:.85rem 1rem}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;display:grid}.sacred-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.9rem;display:grid}.sacred-card{background:radial-gradient(circle at 100% 0,#fff7d85c,#0000 44%),#ffffff8a;border:1px solid #539dc433;border-radius:8px;gap:.8rem;padding:1rem;display:grid;position:relative;overflow:hidden}.sacred-card:before{content:"";opacity:.72;background:linear-gradient(#ffb84d,#75d6f2,#6fb98f,#b87ba8);width:.24rem;position:absolute;inset:0 auto 0 0}.sacred-card h3{color:#12314a;margin:0;font-family:Cinzel,serif}.static-chip{cursor:default;pointer-events:none}.gallery-card{gap:.8rem;display:grid}.gallery-card img{aspect-ratio:1;border-radius:16px}.gallery-empty{text-align:center;grid-column:1/-1}.boot-overlay{z-index:10;pointer-events:none;background:radial-gradient(circle,#060c168a,#03070ef0);place-items:center;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.boot-card{text-align:center;background:linear-gradient(#0a1523d1,#050a12eb);border:1px solid #ffdc9c29;border-radius:28px;gap:1rem;width:min(32rem,100vw - 2rem);padding:1.5rem;display:grid;box-shadow:0 24px 60px #0000006b}.boot-card span{color:#ffeec9;font-family:Cinzel,serif}.eyebrow,.generator-form label>span,.field-label span,.progress-label-row span,.mode-selector legend{color:var(--book-rust)}.hero-card h1,.panel-heading h2,.guide-header h2,.guide-grid h3,.image-viewer-header h2,.analysis-panel h3,.sacred-card h3,.placeholder-card h3,.gallery-card h3{color:var(--book-ink);text-shadow:0 1px #fff4cbb8}.hero-copy,.panel-heading p,.meta-block p,.placeholder-card p,.gallery-card p,.boot-card p,.guide-grid p,.analysis-panel p,.analysis-panel ul,.mode-card span,.mode-note,.field-label small,.hero-stats span,.inline-metadata span,.gallery-card span{color:var(--book-muted)}.source-lens-chip,.hero-stats div,.mode-card,.toggle-row,.chip,.meta-block,.analysis-block,.placeholder-card,.gallery-card,.analysis-panel,.sacred-card,.guide-grid section{border-color:var(--book-rule);color:var(--book-ink);background:radial-gradient(circle at 94% 8%,#fff4cb42,#0000 30%),linear-gradient(#f6e8c4b8,#d3b3796b);box-shadow:inset 0 1px #fff4cb94,0 5px 16px #57341914}.source-lens-chip.active,.mode-card.active,.chip:hover,.chip.active{color:var(--book-ink);background:linear-gradient(135deg,#fff4cbe6,#c6963f6b),#ead7adc7;border-color:#5b3a1e80;box-shadow:0 0 0 1px #fff4cb6b,0 8px 22px #57341924}.hero-stats div:after,.sacred-card:before{background:linear-gradient(90deg,var(--book-rust),var(--book-gold),var(--book-leaf),var(--book-edge))}.generator-form label,.field-label,.hero-stats strong,.inline-metadata,.gallery-card h3,.placeholder-card h3,.mode-card strong{color:var(--book-ink)}.generator-form select,.generator-form textarea,.generator-form input[type=text]{color:var(--book-ink);background:repeating-linear-gradient(0deg,#5b3a1e09 0,#5b3a1e09 1px,#0000 1px,#0000 8px),linear-gradient(#fff4cbeb,#e6c991e0);border-color:#5b3a1e52;box-shadow:inset 0 1px #fff4cbb3}.generator-form select:focus,.generator-form textarea:focus,.generator-form input[type=text]:focus,.image-open-button:focus-visible{border-color:#9b4f24b8;outline-color:#9b4f24b8;box-shadow:0 0 0 3px #c6963f3d}.toggle-row input{accent-color:var(--book-rust)}.primary-button,.secondary-button,.guide-button,.guide-close{color:#fff6d7;text-shadow:0 1px #2b1c1180;border:1px solid #5b3a1e61;border-radius:8px;box-shadow:0 8px 18px #5734192e,inset 0 1px #fff4cb4d}.primary-button{background:linear-gradient(135deg,#8b3f1d,#b77c34 48%,#4d3420)}.secondary-button,.guide-button,.guide-close{color:#2d2117;text-shadow:0 1px #fff4cb9e;background:linear-gradient(135deg,#f1dca8,#b67833 52%,#6d4324)}.image-frame,.image-viewer-window img{background:repeating-linear-gradient(0deg,#5b3a1e09 0,#5b3a1e09 1px,#0000 1px,#0000 8px),linear-gradient(135deg,#fff4cb80,#debe846b);border-color:#5b3a1e52}.meter-shell{background:#d3b3796b;border-color:#5b3a1e47}.meter-fill{background:linear-gradient(90deg,var(--book-edge),var(--book-gold),#f3d88f);box-shadow:0 0 16px #c6963f47}.guide-overlay,.image-viewer-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(circle at 24% 16%,#f6e8c48a,#0000 28%),#4d311bad}.guide-window,.image-viewer-window{background:repeating-linear-gradient(0deg,#5b3a1e09 0,#5b3a1e09 1px,#0000 1px,#0000 8px),linear-gradient(#f6e8c4fa,#daba7efa);border-color:#5b3a1e57;border-radius:8px;box-shadow:0 28px 90px #2a190d61,inset 0 1px #fff4cbc7}.error-banner{color:#672b1d;background:#672b1d1f;border-color:#672b1d4d}@media(max-width:1100px){body{overflow:hidden}.shrine-page{min-height:100dvh;position:fixed}.content-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sacred-grid,.hero-stats{grid-template-columns:1fr}}@media(max-width:720px){body{overflow:auto}.shrine-page{height:auto;min-height:100svh;position:relative;inset:auto;overflow:visible}.shrine-mobile-book{height:auto;min-height:100svh;position:relative;overflow:visible}.shrine-mobile-etched-pattern{position:fixed}.shrine-ui{overscroll-behavior:auto;-webkit-overflow-scrolling:auto;height:auto;min-height:100svh;padding:max(.75rem,env(safe-area-inset-top))max(.75rem,env(safe-area-inset-right))max(1rem,env(safe-area-inset-bottom))max(.75rem,env(safe-area-inset-left));gap:.8rem;overflow:visible}.hero-card,.control-panel,.preview-panel,.gallery-panel{border-radius:16px;padding:.9rem}.glass-panel,.hero-card{-webkit-backdrop-filter:none;backdrop-filter:none}.boot-overlay{display:none}.hero-card{margin-top:0}.hero-topline,.guide-header{flex-direction:column;align-items:stretch}.hero-copy{font-size:.95rem;line-height:1.5}.hero-stats{gap:.6rem;margin-top:.9rem}.hero-stats div{padding:.75rem}.panel-heading{flex-direction:column;align-items:start}.gallery-grid,.sacred-grid{grid-template-columns:1fr}.hero-card h1{max-width:12ch;font-size:2rem}.content-grid{padding-bottom:max(1rem,env(safe-area-inset-bottom));gap:.75rem}.generator-form{gap:.85rem}.mode-selector{grid-template-columns:1fr}.generator-form textarea{min-height:6rem}.primary-button,.secondary-button{width:100%}.action-row{grid-template-columns:1fr}.gallery-panel{-webkit-overflow-scrolling:auto;max-height:none;overflow:visible}.gallery-panel:before,.gallery-panel:after{display:none}.gallery-panel,.gallery-card,.placeholder-card,.sacred-card{background:repeating-linear-gradient(0deg,#5b3a1e09 0,#5b3a1e09 1px,#0000 1px,#0000 8px),linear-gradient(#f6e8c4f0,#daba7ee6)}.boot-card{border-radius:18px;padding:1rem}.guide-overlay,.image-viewer-overlay{place-items:stretch stretch}.image-viewer-window{border-radius:18px;max-height:100%;padding:.9rem}.image-viewer-header{flex-direction:column;align-items:stretch}.image-viewer-window img{max-height:60dvh}.image-frame img{max-height:none}.image-viewer-actions{grid-template-columns:1fr}.guide-window{border-radius:18px;max-height:100%;padding:1rem}.guide-grid,.guide-steps{grid-template-columns:1fr}}@media(max-width:430px){.eyebrow{letter-spacing:.12em;font-size:.68rem}.hero-card h1{font-size:1.85rem}.panel-heading h2{font-size:1.2rem}.chip{justify-content:center;width:100%}}.image-viewer-overlay{justify-content:center;align-items:center;padding:1rem;display:flex;overflow:hidden}.image-viewer-window{box-sizing:border-box;flex-direction:column;gap:1rem;width:calc(100vw - 2rem);min-width:0;max-width:78rem;height:auto;max-height:calc(100vh - 2rem);display:flex;overflow:hidden}.image-viewer-header{flex:none;min-width:0;padding-right:3rem}.image-viewer-media{box-sizing:border-box;flex:auto;justify-content:center;align-items:center;width:100%;min-width:0;min-height:18rem;max-height:calc(100vh - 13rem);display:flex;overflow:hidden}.image-viewer-media img,.image-viewer-window img{object-fit:contain;flex:0 auto;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 14rem)}.image-viewer-actions{flex:none;grid-template-columns:repeat(3,1fr);gap:.75rem;width:100%;display:grid}@media(max-width:720px){.image-viewer-overlay{justify-content:stretch;align-items:stretch;padding:.75rem}.image-viewer-window{width:calc(100vw - 1.5rem);max-width:none;max-height:calc(100vh - 1.5rem)}.image-viewer-media{min-height:15rem;max-height:calc(100vh - 16rem)}.image-viewer-media img,.image-viewer-window img{max-height:calc(100vh - 17rem)}.image-viewer-actions{grid-template-columns:1fr}}@media(pointer:coarse){body{overflow:auto}.shrine-page{height:auto;min-height:100svh;position:relative;inset:auto;overflow:visible}.shrine-mobile-book{height:auto;min-height:100svh;position:relative;overflow:visible}.shrine-mobile-etched-pattern{position:fixed}.shrine-ui{overscroll-behavior:auto;-webkit-overflow-scrolling:auto;height:auto;min-height:100svh;overflow:visible}.glass-panel,.hero-card{-webkit-backdrop-filter:none;backdrop-filter:none}.boot-overlay{display:none}.gallery-panel{-webkit-overflow-scrolling:auto;max-height:none;overflow:visible}.gallery-panel:before,.gallery-panel:after{display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
