/* Responsive layout; font assets and family are owned by 公共/type-system.css. */
:root{
  --type-ui: var(--font-ui);
  --weight-light:300;--weight-regular:350;--weight-medium:450;
  --page-gutter:clamp(24px,4vw,64px);
}
html,body,button,input,textarea,select{font-family:var(--type-ui)!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{font-weight:var(--weight-light)}
button,a,input,textarea{font-weight:var(--weight-light)}
.page{width:100%;margin:0 auto}
.header{padding-inline:var(--page-gutter)}
.header>.main-nav{flex:0 1 auto;justify-content:center;gap:clamp(18px,2.2vw,34px);margin-inline:auto}
.main-nav,.main-nav a,.main-nav button{font-size:clamp(14px,1.05vw,17px);font-weight:var(--weight-light);letter-spacing:.035em}
.main-account,.header-account .main-account,.logout-account{font-size:14px;font-weight:var(--weight-light);letter-spacing:.045em;text-decoration:none;border-bottom:1px solid #ffffff75;padding:8px 0}
.main-account,.header-account .main-account{border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;padding:8px 0!important;text-decoration:none;background:transparent!important}
.header-account{gap:clamp(12px,1.6vw,24px)}
.hero{width:100%;max-width:none;min-height:100dvh;padding:clamp(112px,16vh,180px) var(--page-gutter) clamp(56px,8vh,96px);align-items:center;justify-content:flex-start}
.hero-copy{width:min(680px,48vw);margin:0;transform:none;}
.hero h1{font-size:clamp(42px,4.2vw,70px);font-weight:300;letter-spacing:.01em;line-height:1.24;max-width:12em;margin-bottom:clamp(24px,4vh,40px)}
.video-input{max-width:clamp(520px,46vw,710px);border-radius:18px;padding:16px 18px 13px}
.video-input textarea{font-family:var(--type-ui)!important;font-size:15px!important;font-weight:300;letter-spacing:.015em;resize:none!important;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}
.video-input textarea::-webkit-scrollbar{display:none;width:0;height:0}
.input-action small{display:none!important}
.input-action>.primary{font-family:var(--type-ui);font-weight:350;letter-spacing:.08em}
.input-action .paste{font-family:var(--type-ui);font-weight:300;letter-spacing:.05em}
.error-text{font-family:var(--type-ui);font-weight:300}
.companion-nickname{top:auto;bottom:clamp(20px,4vh,42px);right:clamp(5vw,calc((100vw - 1440px)/2 + 7vw),18vw);transform:none;width:auto;min-width:120px;padding:4px 14px;border:1px solid #fff3eb35;border-radius:999px;background:#35000fa8;backdrop-filter:blur(8px);font-weight:300}
.nickname-line{justify-content:center}.nickname-value{font-family:var(--type-ui);font-size:clamp(18px,1.45vw,24px);font-weight:300;letter-spacing:.14em}.nickname-edit{opacity:.62}.nickname-feedback:empty{display:none}
.hero-copy .clear-kicker,.hero-copy .typed,.hero-copy .journey-label,.hero-copy .action-pills{display:none}
#results-region{width:min(980px,calc(100% - 2*var(--page-gutter)));margin:0 auto 64px}
.media-result,.media-result *{font-family:var(--type-ui)}
.media-result>h3,.note-title{font-weight:350}.media-result p,.media-result label,.media-result button,.media-result a{font-weight:300}
@media(min-width:1500px){.hero-copy{width:min(740px,44vw);transform:none}.video-input{max-width:680px}}
@media(max-width:1000px){.main-nav,.header-account{display:none}.hero{padding-top:110px}.hero-copy{width:min(100%,720px);transform:translateX(-4vw)}.hero h1{font-size:clamp(40px,5vw,56px)}.bg-video.female-character.static-mode,.has-materials .bg-video.female-character.static-mode{width:min(58vw,55dvh,560px);height:min(72dvh,720px)}}
@media(max-width:720px){.header{padding:14px 18px;justify-content:space-between}.main-brand img{width:134px}.hero{min-height:100dvh;padding:clamp(225px,34dvh,300px) 20px 72px;align-items:flex-start;justify-content:flex-start}.hero-copy{width:100%;transform:none}.hero h1{font-size:clamp(37px,9.5vw,48px);letter-spacing:0;line-height:1.25;margin-bottom:22px}.video-input{max-width:none;border-radius:17px;padding:13px}.video-input textarea{height:74px;min-height:74px!important;font-size:14px!important;padding-right:48px!important}.input-action .paste{top:12px;right:12px}.input-action>.primary{width:auto;min-width:100px;min-height:44px;padding:9px 19px}.companion-nickname{top:265px;bottom:auto;right:12px;min-width:0;max-width:calc(100vw - 32px);padding:2px 10px}.nickname-line{justify-content:flex-end;padding-right:0;min-height:36px}.nickname-value{font-size:15px}.nickname-edit{width:36px;height:36px}.bg-video.female-character.static-mode,.has-materials .bg-video.female-character.static-mode{top:75px;right:12px;width:152px;max-width:42vw;height:190px}#results-region{width:calc(100% - 24px);margin-bottom:28px}.media-result{padding:16px}}
@media(max-width:390px){.main-brand img{width:118px}.hero{padding-inline:15px;padding-top:220px}.hero h1{font-size:35px}.companion-nickname{right:6px}.nickname-value{font-size:15px}.video-input textarea{font-size:13px!important}}
@media(max-height:760px) and (min-width:721px){.hero{padding-top:112px;padding-bottom:48px;min-height:100dvh}.hero h1{font-size:clamp(38px,3.7vw,58px);margin-bottom:22px}.bg-video.female-character.static-mode,.has-materials .bg-video.female-character.static-mode{height:min(76dvh,680px);width:min(58dvh,520px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
