:root{color-scheme:light;--bg:#f7f8fb;--bg-strong:#eef2f7;--panel:rgba(255,255,255,0.96);--panel-solid:#ffffff;--panel-soft:rgba(241,245,250,0.96);--ink:#101418;--muted:#667085;--line:rgba(148,163,184,0.3);--line-strong:rgba(100,116,139,0.36);--frame-border:rgba(71,85,105,0.62);--frame-divider:rgba(100,116,139,0.52);--field-border:rgba(100,116,139,0.44);--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:rgba(37,99,235,0.1);--bad:#b91c1c;--bad-soft:rgba(239,68,68,0.1);--ok:#047857;--ok-soft:rgba(16,185,129,0.12);--on-accent:#ffffff;--overlay-strong:rgba(16,20,24,0.82);--shadow:0 12px 32px rgba(15,23,42,0.05);--sans:"Noto Sans JP","Hiragino Sans","Yu Gothic","Meiryo",sans-serif;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--bg:#0b1018;--bg-strong:#101827;--panel:rgba(16,24,39,0.96);--panel-solid:#0f1728;--panel-soft:rgba(23,34,52,0.9);--ink:#edf2f7;--muted:#9ba8bc;--line:rgba(148,163,184,0.24);--line-strong:rgba(148,163,184,0.36);--frame-border:rgba(148,163,184,0.68);--frame-divider:rgba(148,163,184,0.52);--field-border:rgba(148,163,184,0.46);--accent:#60a5fa;--accent-hover:#3b82f6;--accent-soft:rgba(96,165,250,0.14);--bad:#f87171;--bad-soft:rgba(239,68,68,0.18);--ok:#4ade80;--ok-soft:rgba(74,222,128,0.16);--on-accent:#ffffff;--overlay-strong:rgba(15,23,42,0.84);--shadow:0 18px 46px rgba(0,0,0,0.34)}}*{box-sizing:border-box}body,html{margin:0;padding:0}body{min-height:100vh;color:var(--ink);font-family:var(--sans);background:var(--bg)}a{color:inherit;text-decoration:none}.shell,.site-shell{width:min(100vw - 40px,1320px);margin:0 auto;padding:24px 0 36px}.panel,.site-header,.top{border:none;border-radius:10px;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.site-header,.top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 14px}.site-branding{min-width:0}.brand,.site-name{display:inline-flex;align-items:center;gap:0;margin:0;min-width:0;font-size:22px;font-weight:900;letter-spacing:0}.brand-mark{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:6px;background:var(--panel-solid);border:1px solid var(--line-strong);font-size:11px}.header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.auth-submit,.header-action-button,.hero-action-button,.product-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 12px;border:none;border-radius:10px;background:transparent;color:var(--ink);font-size:13px;font-weight:700;line-height:1;cursor:pointer;transition:background-color .15s ease,transform .15s ease}.button-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px}.title-icon{width:20px;height:20px;flex:0 0 auto}.surface-frame{border:2px solid var(--frame-border);border-radius:14px;background:var(--panel-solid);box-shadow:0 16px 40px rgba(15,23,42,.14);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.surface-frame-wide{width:100%;max-width:100%}.surface-frame-inner{border:2px solid var(--frame-divider);border-radius:12px;background:var(--panel-soft)}.auth-submit:hover,.header-action-button:hover,.hero-action-button:hover,.product-link:hover{background:color-mix(in srgb,transparent 75%,var(--accent) 25%);transform:translateY(-1px)}.auth-submit,.hero-action-button,.product-link{background:var(--accent);color:var(--on-accent)}.auth-submit:hover,.hero-action-button:hover,.product-link:hover{background:var(--accent-hover)}.account-status{display:inline-flex;align-items:center;gap:8px;max-width:min(60vw,280px);min-height:40px;padding:0 4px;border:none;border-radius:10px;background:transparent}.account-status-dot{width:8px;height:8px;flex:0 0 auto;border-radius:999px;background:var(--ok)}.account-status-text{display:grid;grid-gap:1px;gap:1px;min-width:0}.account-status-text small,.account-status-text strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.account-status-text strong{font-size:.82rem}.account-status-text small{color:var(--muted);font-size:.68rem}.account-page,.auth-page,.portal-main{margin-top:16px;display:grid;grid-gap:16px;gap:16px}.home-layout{gap:0;border-top:1px solid var(--frame-divider)}.account-shell,.auth-card,.brand-intro-section,.product-section{padding:10px 4px}.home-intro,.home-products{padding:30px 0}.home-intro,.home-products{border-bottom:1px solid var(--frame-divider)}.home-intro .brand-intro-row{gap:18px}.home-products .section-heading{padding-bottom:14px;border-bottom:0}.brand-intro-row{display:grid;grid-gap:10px;gap:10px}.brand-intro-title{margin:0;font-size:clamp(32px,6vw,56px);line-height:1.05;font-weight:900;letter-spacing:0}.brand-intro-sub{margin:0;color:var(--muted);font-size:13px}.hero-actions{display:flex;gap:8px;flex-wrap:wrap}.product-section{display:grid;grid-gap:10px;gap:10px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;flex-wrap:wrap}.section-label{display:inline-flex;align-items:center;gap:0;margin:0;color:var(--muted);font-size:12px;font-weight:600}.section-heading h2{margin:0;font-size:clamp(28px,4.4vw,44px);line-height:1.06;letter-spacing:0}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));grid-gap:16px;gap:16px}.product-card{display:grid;grid-gap:14px;gap:14px;padding:0;border:none;border-radius:10px;background:transparent}.product-card[data-muted=true]{opacity:1;padding:12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel-soft) 76%,#9ca3af 24%)}.product-card[data-muted=true] .product-preview-frame{border:1px solid var(--line);background:color-mix(in srgb,var(--panel-soft) 82%,#9ca3af 18%)}.product-card[data-muted=true] .product-card-title-wrap h3,.product-card[data-muted=true] .product-card-title-wrap p{color:color-mix(in srgb,var(--muted) 88%,var(--ink) 12%)}.product-preview{width:100%}.product-preview-frame{position:relative;display:grid;place-items:center;aspect-ratio:16/10;border:none;border-radius:12px;overflow:hidden;background:transparent}.product-preview-image{object-fit:cover}.product-preview-develop-label{position:absolute;top:10px;left:10px;z-index:1;min-height:28px;padding:0 10px;border-radius:9px;background:var(--overlay-strong);color:var(--on-accent);font-size:11px;font-weight:700;line-height:28px}.product-preview-develop-label[data-centered=true]{top:50%;left:50%;transform:translate(-50%,-50%)}.product-preview-frame span{color:var(--muted);font-size:13px}.product-card-body{display:grid;grid-gap:10px;gap:10px}.product-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.product-category,.product-status{display:inline-flex;align-items:center;gap:5px;min-height:0;padding:0;border-radius:999px;font-size:11px;font-weight:700}.product-category{background:transparent;color:var(--accent)}.product-status{border:none;background:transparent;color:var(--muted)}.product-status[data-ready=true]{color:var(--ok)}.product-card-title-wrap{display:grid;grid-gap:6px;gap:6px}.product-card h3{margin:0;font-size:20px;line-height:1.2;letter-spacing:0}.product-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.product-link{width:-moz-fit-content;width:fit-content;padding-right:10px;padding-left:10px}.product-link.is-disabled{border-color:transparent;background:color-mix(in srgb,var(--panel-soft) 80%,transparent);color:var(--muted);cursor:default}.auth-page{place-items:center}.auth-card{width:min(100%,460px);display:grid;grid-gap:12px;gap:12px;padding:18px 16px;border:2px solid var(--frame-border);border-radius:14px;background:var(--panel-solid);box-shadow:0 16px 40px rgba(15,23,42,.14);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.account-title,.auth-title{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:24px;line-height:1.15;letter-spacing:0}.account-banner,.auth-alert{margin:0;padding:10px 12px;border:1px solid transparent;border-radius:8px;font-size:12px;font-weight:700}.auth-note{margin:0;color:var(--muted);font-size:12px;font-weight:600}.account-banner.is-error,.auth-alert{background:var(--bad-soft);border-color:rgba(185,28,28,.35);color:var(--bad)}.account-banner.is-success{background:var(--ok-soft);border-color:rgba(4,120,87,.35);color:var(--ok)}.account-form,.auth-form{display:grid;grid-gap:10px;gap:10px}.auth-field{display:grid;grid-gap:6px;gap:6px}.auth-field span{color:var(--muted);font-size:12px;font-weight:600}.auth-keyword{font-family:var(--mono);font-size:11px;letter-spacing:0;text-transform:uppercase}.auth-field input{width:100%;min-height:40px;padding:0 11px;border:1px solid var(--field-border);border-radius:9px;background:var(--panel-solid);color:var(--ink);font-size:13px}.auth-field input:focus-visible{outline:2px solid color-mix(in oklab,var(--accent) 50%,transparent);outline-offset:1px;border-color:var(--accent)}.account-shell{width:100%;display:grid;grid-gap:14px;gap:14px;padding:18px 16px}.account-overview{padding-bottom:14px;border-bottom:2px solid var(--frame-divider)}.account-identity,.account-overview{display:grid;grid-gap:4px;gap:4px}.account-identity strong{font-size:16px}.account-identity span{color:var(--muted);font-size:12px}.account-forms,.account-section{display:grid;grid-gap:12px;gap:12px}.account-section{padding:14px 12px;border:none;border-radius:12px;background:transparent}.account-section+.account-section{margin-top:0}.account-section h2{margin:0;font-size:15px;letter-spacing:0}.account-fixed-id{display:grid;grid-gap:3px;gap:3px;padding:10px;border:1px solid var(--field-border);border-radius:10px;background:var(--panel-solid)}.account-fixed-id strong{font-size:12px;font-family:var(--mono);font-weight:600}.account-footer-actions,.account-form-actions{display:flex;justify-content:flex-start}.account-footer-actions{align-items:center;gap:10px;flex-wrap:wrap;padding-top:16px;border-top:2px solid var(--frame-divider)}.account-link-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid var(--field-border);border-radius:10px;background:var(--panel-solid);color:var(--ink);font-size:13px;font-weight:700;line-height:1}.account-link-button:hover{background:color-mix(in srgb,var(--panel-soft) 60%,var(--accent) 18%)}.account-logout-form{margin:0}.account-logout-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;min-height:40px;padding:0 12px;border:1px solid rgba(185,28,28,.4);border-radius:10px;background:var(--bad-soft);color:var(--bad);font-size:13px;font-weight:700;line-height:1;cursor:pointer;transition:background-color .15s ease,transform .15s ease}.account-logout-button:hover{background:color-mix(in srgb,var(--panel-soft) 76%,var(--bad) 24%);transform:translateY(-1px)}.account-footer-actions form{margin:0}.account-banners{display:grid;grid-gap:8px;gap:8px}.site-footer{padding:18px 4px 0;color:var(--muted);font-size:12px}@media (max-width:640px){.shell,.site-shell{width:min(100vw - 24px,1320px);padding-bottom:24px}.site-header,.top{align-items:stretch}.header-actions{width:100%;justify-content:flex-end}.brand-intro-title{font-size:clamp(30px,10vw,44px)}.account-footer-actions .account-link-button,.account-form .auth-submit,.account-logout-button,.auth-submit,.hero-action-button{width:100%}.account-footer-actions{flex-direction:column;align-items:stretch}.account-footer-actions form{width:100%}}