:root{--app-shell-scene-size:100% auto;--color-background:#f8f3ed;--color-foreground:#6b4423;--color-card:#fdf8f0;--color-card-foreground:#6b4423;--color-primary:#c17a3b;--color-primary-foreground:#fff;--color-secondary:#d8cbb6;--color-muted:#d8cbb6;--color-muted-foreground:#8b6f47;--color-accent:#d4a574;--color-accent-foreground:#6b4423;--color-border:rgba(107,68,35,.1);--color-input-bg:#f3f3f5;--color-dark-brown:#4a3420;--color-destructive:#dc2626}*{box-sizing:border-box;padding:0;margin:0}body,html{height:100%;max-width:100vw;overflow-x:hidden;overflow-y:hidden;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--color-foreground);font-size:16px}.app-shell-outer,body,html{background-color:var(--color-secondary)}.app-shell-outer{min-height:100vh;min-height:100dvh;height:100vh;height:100dvh;display:flex;flex-direction:row;align-items:stretch;justify-content:flex-start}@media (min-width:768px){.app-shell-outer{background-image:var(--app-shell-gutter-image);background-repeat:no-repeat;background-size:var(--app-shell-scene-size,100% auto);background-position:50%}}.app-shell-gutter{flex:1 1;min-width:0;min-height:100%;pointer-events:none}@media (max-width:767px){.app-shell-gutter{flex:0 0;width:0;min-width:0;overflow:hidden}}.app-shell-device{flex:1 1 auto;min-width:0;min-height:0;display:flex;align-items:stretch;justify-content:center;background:transparent}@media (min-width:768px){.app-shell-device{flex:0 0 auto;align-items:center}}.app-shell-device-stage{position:relative;width:100%;height:100%;min-height:0;display:flex;align-items:stretch;justify-content:center;background:transparent}@media (min-width:768px){.app-shell-device-stage{display:block;width:min(calc(100vw - 48px),528px);max-height:calc(100dvh - 24px);height:auto;aspect-ratio:540/1100;flex:0 0 auto;align-self:center;min-height:min(calc(100dvh - 24px),calc(min(528px, calc(100vw - 48px)) * 1100 / 540))}}.app-shell-phone-chassis{position:relative;box-sizing:border-box;width:100%;height:100%;min-height:0;display:flex;flex-direction:column}@media (min-width:768px){.app-shell-phone-chassis{border-radius:52px;padding:14px;background:linear-gradient(158deg,#d8d6d2,#8f8a82 38%,#a8a29a);box-shadow:inset 0 0 0 1px rgba(0,0,0,.4),inset 0 2px 0 hsla(0,0%,100%,.38),0 20px 52px rgba(12,8,4,.58),0 8px 20px rgba(12,8,4,.38)}}@media (max-width:767px){.app-shell-phone-chassis{padding:0;border-radius:0;background:transparent;box-shadow:none}}.app-shell-device-screen{position:relative;z-index:1;flex:1 1;width:100%;min-width:0;min-height:0;display:flex;flex-direction:column}@media (min-width:768px){.app-shell-device-screen{border-radius:40px;overflow:hidden;box-shadow:inset 0 0 0 2px rgba(0,0,0,.65),inset 0 0 0 5px rgba(32,28,22,.95)}}.app-shell-column{flex:1 1;min-height:0;min-width:0;width:100%;max-width:none;height:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;background-color:var(--color-background);position:relative;z-index:1;border:none;box-shadow:none}.app-shell-chrome{flex-shrink:0}.app-shell-main{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;-webkit-overflow-scrolling:touch}@media (max-width:767px){.app-shell-outer,body,html{background-color:var(--color-background)}.app-shell-outer{background-image:none}}a{color:inherit;text-decoration:none}[role=button],a,button,html,input,label[for],select,summary,textarea{-webkit-tap-highlight-color:transparent}a:focus,button:focus{outline:none}[role=button]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}a img,button img{-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.font-title{font-size:24px}.font-title,.font-title-small{font-family:Georgia,serif;font-weight:600;color:var(--color-foreground)}.font-title-small{font-size:20px}.font-body{font-size:16px;color:var(--color-foreground)}.font-body-small{font-size:14px}.font-body-small,.font-label{color:var(--color-muted-foreground)}.font-label{font-size:10px;font-weight:500}.home-description p{margin:0 0 .75em}.home-description p:last-child{margin-bottom:0}.home-description a{color:var(--color-primary);text-decoration:none}.home-description a:hover{text-decoration:underline}.home-description ol,.home-description ul{margin:.5em 0;padding-left:1.25em}.home-description h2,.home-description h3{margin:1em 0 .5em;font-family:Georgia,serif;font-weight:600;color:var(--color-foreground)}.collection-page{width:100%;flex:1 0 auto;padding-bottom:48px}.collection-page-loading{padding:24px 16px}.collection-page-header{padding:20px 16px 12px;text-align:left}.collection-page-title{margin:0 0 8px;font-family:Georgia,serif;font-size:26px;font-weight:600;color:var(--color-foreground);line-height:1.25;text-align:left}.collection-page-intro{margin:0;font-size:15px;line-height:1.65;color:var(--color-muted-foreground);text-align:left}.collection-items-list{padding:0 16px;display:flex;flex-direction:column;gap:16px}.collection-item-card{width:100%;box-sizing:border-box;background:var(--color-card);border:1px solid var(--color-border);border-radius:16px;padding:16px;box-shadow:0 2px 12px rgba(107,68,35,.06)}.collection-item-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.collection-item-index{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:rgba(193,122,59,.12);color:var(--color-primary);font-size:13px;font-weight:700;line-height:1;margin-top:2px}.collection-item-title{margin:0;flex:1 1;min-width:0;font-family:Georgia,serif;font-size:20px;font-weight:600;color:var(--color-foreground);line-height:1.35;text-align:left}.collection-item-banner-frame{display:block;width:100%;margin-bottom:14px;padding:8px;border-radius:12px;background:hsla(37,30%,78%,.35);border:1px solid var(--color-border);overflow:hidden;box-sizing:border-box}.collection-item-banner-img{display:block;width:100%;height:auto;max-height:min(70vh,560px);object-fit:contain;object-position:center;margin:0 auto;border-radius:6px}.collection-item-description{font-size:15px;line-height:1.7;color:var(--color-foreground)}.collection-item-description p{margin:0 0 .85em}.collection-item-description p:last-child{margin-bottom:0}.collection-item-description b,.collection-item-description strong{font-weight:700;color:var(--color-dark-brown)}.collection-item-description h2,.collection-item-description h3,.collection-item-description h4{margin:1.1em 0 .45em;font-family:Georgia,serif;font-weight:600;color:var(--color-foreground);line-height:1.3}.collection-item-description h2{font-size:1.15em}.collection-item-description h3{font-size:1.05em}.collection-item-description ol,.collection-item-description ul{margin:.5em 0 .85em;padding-left:1.35em}.collection-item-description li{margin-bottom:.35em}.collection-item-description a{color:var(--color-primary);text-decoration:none}.collection-item-description a:hover{text-decoration:underline}.media-hub-banner{display:block;width:100%;background-color:var(--color-muted);overflow:hidden}.media-hub-banner-img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;object-position:center;vertical-align:top}.login-page{padding:24px 24px 40px;max-width:400px;margin:0 auto}.login-back-home-wrap{margin-top:28px;padding-top:24px;border-top:1px solid var(--color-border);display:flex;justify-content:center}.login-back-home{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:999px;border:1px solid var(--color-border);background-color:var(--color-card);color:var(--color-foreground);text-decoration:none;font-size:15px;font-weight:500;line-height:1.2;box-shadow:0 1px 2px rgba(107,68,35,.06);transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.login-back-home:hover{background-color:var(--color-secondary);border-color:rgba(107,68,35,.18);box-shadow:0 2px 6px rgba(107,68,35,.08)}.login-back-home:active{transform:translateY(1px)}.login-disclaimer-section{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border)}.login-disclaimer-section .login-section-heading{margin:0 0 16px;font-size:18px;font-weight:600;text-align:center;color:var(--color-foreground)}