:root{color:oklch(94% .012 65);font-synthesis:none;--surface:oklch(24% .009 40);--raised:oklch(29% .012 40);--muted:oklch(70% .02 65);--accent:oklch(82% .12 68);--line:oklch(37% .012 50);background:oklch(19% .008 40);font-family:Inter,Noto Sans JP,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input,textarea{color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}.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}.muted,small{color:var(--muted)}.topbar{border-bottom:1px solid var(--line);background:oklch(20% .008 40);justify-content:space-between;align-items:center;gap:28px;height:72px;padding:0 max(24px,50vw - 720px);display:flex}.brand{white-space:nowrap;letter-spacing:-.03em;font-size:1.18rem;font-weight:750}.brand-mark{color:var(--accent);vertical-align:middle;margin-right:5px;font-size:1.7rem}.top-actions{align-items:center;gap:22px;display:flex}.nav-item,.wallet-link{align-items:center;gap:7px;font-size:.9rem;display:flex}.wallet-link{background:var(--surface);border-radius:20px;gap:5px;padding:8px 12px}.blue-gem{color:oklch(77% .13 235)}.red-gem{color:oklch(72% .16 22)}.language{color:var(--muted);font-size:.85rem}.icon-button{border-radius:50%;justify-content:center;align-items:center;padding:8px;display:inline-flex}.icon-button:hover,button:hover:not(:disabled){background:var(--raised)}.discover-content,.page-width{max-width:1440px;margin:auto;padding:48px 32px}.discover-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.discover-heading h1,.page-width h1{letter-spacing:-.035em;margin:8px 0 0;font-size:2rem}.eyebrow{letter-spacing:.16em;color:var(--accent);font-size:.7rem;font-weight:750}.search-box{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:8px;width:min(340px,100%);padding:0 12px;display:flex}.search-box input{background:0 0;border:0;outline:none;width:100%}.tabs{border-bottom:1px solid var(--line);gap:28px;margin:32px 0 25px;display:flex}.tabs button{color:var(--muted);border-bottom:2px solid #0000;padding:0 0 14px}.tabs button.active{color:var(--accent);border-color:var(--accent)}.character-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;display:grid}.character-card{aspect-ratio:3/4;background:var(--surface);border-radius:14px;display:block;position:relative;overflow:hidden}.character-card img,.detail-art img,.chat-character>img{object-fit:cover;width:100%;height:100%;transition:transform .25s ease-out}.character-card:hover img{transform:scale(1.03)}.character-placeholder{color:oklch(75% .08 65);background:oklch(33% .04 55);place-items:center;width:100%;height:100%;min-height:200px;font-size:5rem;display:grid}.character-caption{background:linear-gradient(#0000,oklch(15% .01 45/.96));padding:70px 16px 18px;position:absolute;inset:auto 0 0}.character-caption h2{margin:0 0 5px;font-size:1.1rem}.character-caption p{color:oklch(86% .01 65);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.82rem;display:-webkit-box;overflow:hidden}.skeleton{background:linear-gradient(110deg, var(--surface), var(--raised), var(--surface));background-size:200% 100%;animation:1.5s infinite pulse}@keyframes pulse{to{background-position:-200% 0}}.empty-state{text-align:center;color:var(--muted);padding:70px 20px}.empty-state button,.balance-section button,.dialog-actions button:not(.primary-button){border:1px solid var(--line);border-radius:9px;padding:9px 14px}.character-detail{grid-template-columns:minmax(250px,420px) minmax(0,550px);align-items:center;gap:60px;display:grid}.detail-art{aspect-ratio:3/4;border-radius:18px;overflow:hidden}.detail-copy h1{margin:12px 0 18px;font-size:2.5rem}.detail-copy p{color:var(--muted);line-height:1.7}.tag-list{flex-wrap:wrap;gap:8px;margin:24px 0;display:flex}.tag-list span{border:1px solid var(--line);border-radius:20px;padding:6px 10px;font-size:.8rem}.primary-button,.send-button{background:var(--accent);color:oklch(22% .02 50);border-radius:10px;padding:12px 20px;font-weight:700}.primary-button:hover:not(:disabled),.send-button:hover:not(:disabled){background:oklch(88% .1 70)}.chat-layout{grid-template-columns:minmax(260px,33%) minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.chat-character{background:var(--surface);position:relative;overflow:hidden}.chat-character>img{position:absolute;inset:0}.chat-character>.character-placeholder{height:100%}.chat-character-copy{background:linear-gradient(#0000,oklch(14% .01 40/.96));padding:100px 30px 35px;position:absolute;inset:auto 0 0}.chat-character-copy h1{margin:0 0 10px}.chat-character-copy p{color:oklch(86% .01 60);line-height:1.5}.close-drawer{display:none}.chat-main{flex-direction:column;min-width:0;min-height:0;display:flex}.chat-header{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:12px;height:72px;padding:0 22px;display:flex}.chat-header>a:last-child{margin-left:auto}.chat-person{align-items:center;gap:12px;display:flex}.chat-person img{object-fit:cover;border-radius:50%;width:38px;height:38px}.messages{flex:1;padding:32px max(24px,50% - 390px);overflow:auto}.chat-empty{text-align:center;color:var(--muted);padding-top:22vh}.message{max-width:85%;margin-bottom:20px}.message.user{margin-left:auto}.message-body{white-space:pre-wrap;background:var(--surface);overflow-wrap:anywhere;border-radius:16px 16px 16px 4px;padding:14px 17px;line-height:1.6}.message.user .message-body{background:oklch(35% .045 55);border-radius:16px 16px 4px}.message-actions{gap:4px;padding:5px;display:flex}.message-actions button{color:var(--muted);padding:5px}.message-actions button[aria-pressed=true]{color:var(--accent)}.composer-wrap{padding:12px max(24px, calc((100% - 780px) / 2)) max(18px, env(safe-area-inset-bottom));background:oklch(19% .008 40)}.chat-tools{gap:6px;margin-bottom:10px;display:flex;overflow:auto}.chat-tools button{white-space:nowrap;border:1px solid var(--line);color:var(--muted);border-radius:20px;align-items:center;gap:6px;padding:7px 10px;font-size:.78rem;display:flex}.composer{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-items:end;gap:8px;padding:8px;display:flex}.composer textarea{resize:none;background:0 0;border:0;outline:none;flex:1;min-height:46px;max-height:140px}.send-button{padding:12px;display:flex}.chat-error{color:oklch(78% .14 30);font-size:.85rem}.chat-error a{text-decoration:underline}.modal-backdrop{z-index:10;background:oklch(10% .005 40/.75);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{border:1px solid var(--line);background:var(--surface);border-radius:16px;width:min(100%,520px);max-height:min(85dvh,800px);padding:24px;overflow:auto}.dialog-title,.dialog-actions,.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.dialog-title h2{margin:0}.dialog-title button{font-size:1.7rem}.dialog-actions{justify-content:flex-end;margin-top:24px}.form-stack{gap:16px;margin-top:20px;display:grid}.form-stack label,.range-label{color:var(--muted);gap:7px;font-size:.88rem;display:grid}.form-stack input{background:oklch(20% .008 40)}.range-label{margin:24px 0}.range-label input{accent-color:var(--accent);padding:0}.choice-list{gap:5px;margin:18px 0;display:grid}.choice-list>button,.choice-row,.model-choice{border:1px solid var(--line);text-align:left;border-radius:8px;padding:12px}.choice-row{justify-content:space-between;display:flex}.model-choice{gap:10px;display:flex}.model-choice small{margin-left:auto}.narrow-page{max-width:900px}.list{margin-top:24px}.list>a,.list>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:18px 0;display:flex}.list span{color:var(--muted)}.balance-page{max-width:1000px}.wallet-grid{grid-template-columns:1fr 1fr;gap:18px;margin:30px 0;display:grid}.wallet-card{background:var(--surface);border-radius:15px;gap:20px;padding:25px;display:flex}.wallet-card.blue{color:oklch(80% .12 235)}.wallet-card.red{color:oklch(78% .13 25)}.wallet-card div{gap:6px;display:grid}.wallet-card strong{font-size:2rem}.balance-section{border-bottom:1px solid var(--line);padding:30px 0}.balance-section h2{font-size:1.2rem}.auth-page{place-items:center;min-height:calc(100dvh - 72px);padding:24px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;width:min(100%,420px);padding:36px}.auth-card h1{margin:10px 0}.auth-card p{color:var(--muted)}@media (width<=1000px){.character-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.nav-item span{display:none}}@media (width<=700px){.topbar{gap:8px;height:62px;padding:0 15px}.top-actions{gap:8px}.nav-discover{display:none}.wallet-link{padding:7px;font-size:.75rem}.language{font-size:.75rem}.discover-content,.page-width{padding:30px 16px}.discover-heading{display:block}.search-box{width:100%;margin-top:22px}.character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.character-caption{padding:50px 12px 12px}.character-detail{grid-template-columns:1fr;gap:25px}.detail-art{max-height:55vh}.detail-copy h1{font-size:2rem}.chat-layout{display:block}.chat-main{height:100dvh}.chat-character{z-index:5;display:none;position:fixed;inset:0 15% 0 0;box-shadow:0 0 0 100vw oklch(10% .01 40/.7)}.chat-character.visible{display:block}.close-drawer{z-index:2;background:var(--surface);border-radius:8px;padding:8px;display:block;position:absolute;top:10px;right:10px}.chat-header{height:62px;padding:0 12px}.messages{padding:20px 16px}.composer-wrap{padding:8px 12px max(12px, env(safe-area-inset-bottom))}.wallet-grid{grid-template-columns:1fr}.auth-card{padding:24px}.message{max-width:92%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.character-art{width:100%;height:100%;min-height:200px;position:relative;overflow:hidden;container-type:size}.character-art-sprite{aspect-ratio:2/3;background-repeat:no-repeat;background-size:200% 200%;width:max(100cqw,66.6667cqh);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.chat-character>.character-art{position:absolute;inset:0}.banner-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:28px;display:grid}.banner{aspect-ratio:3;background:var(--surface);border-radius:14px;position:relative;overflow:hidden}.banner img{object-fit:cover;width:100%;height:100%}.banner span{background:linear-gradient(#0000,oklch(15% .01 45/.9));padding:14px;font-weight:700;position:absolute;inset:auto 0 0}.google-sign-in{margin-top:24px}.account-menu{position:relative}.account-menu summary{cursor:pointer;list-style:none}.account-menu summary::-webkit-details-marker{display:none}.account-menu>button{z-index:4;white-space:nowrap;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 16px;position:absolute;top:100%;right:0}.offer-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.offer{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:12px;padding:20px;display:grid}.offer h3,.offer p{margin:0}.offer strong{font-size:1.25rem}.order-status{background:var(--surface);border-radius:10px;padding:14px}.suggestion-control{position:relative}.suggestion-panel{z-index:3;border:1px solid var(--line);background:var(--surface);border-radius:12px;width:min(360px,100vw - 48px);padding:16px;position:fixed;bottom:120px;right:24px;box-shadow:0 10px 30px oklch(8% .01 40/.4)}.suggestion-panel p{margin:0 0 10px}.suggestion-panel button{white-space:normal;text-align:left;margin:4px}.history-item{align-items:center}.history-avatar{object-fit:cover;border-radius:50%;width:44px;height:44px}.history-copy{flex:1;gap:4px;min-width:0;display:grid}.history-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-item time{color:var(--muted);white-space:nowrap;font-size:.8rem}.form-stack .checkbox-label{align-items:center;gap:8px;display:flex}.checkbox-label input{width:auto}.category-filter{margin:-8px 0 20px;display:block}.category-filter select{color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 10px}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:20px;padding:24px max(24px,50vw - 688px);font-size:.8rem;display:flex}.site-footer>div{gap:20px;display:flex}.shipany-credit{border:1px solid var(--line);border-radius:20px;padding:8px 12px}.shipany-credit span{color:oklch(72% .16 22)}.legal-notice{color:var(--muted);margin-top:25px;line-height:1.6}
