.custom-page-view { width:100%; padding:0 !important; align-items:stretch !important; }
#customPageApp { width:100%; min-width:0; }
.gsc-custom-nav-item { cursor:pointer; }
.gsc-custom-nav-item .gsc-custom-nav-glyph { display:inline-grid; width:1.25rem; height:1.25rem; place-items:center; margin-right:.3rem; border-radius:.4rem; background:var(--accent-subtle); font-size:.72rem; }
.gsc-custom-tab-stage { --ct-accent:#ffad5d; --ct-bg:#f6f6f7; --ct-surface:#fff; --ct-text:#17181c; --ct-muted:color-mix(in srgb,var(--ct-text) 58%,transparent); --ct-line:color-mix(in srgb,var(--ct-text) 14%,transparent); width:min(1180px,100%); min-height:68dvh; margin:0 auto; padding:clamp(1rem,4vw,3rem); overflow:hidden; border:1px solid var(--border); border-radius:clamp(20px,3vw,34px); color:var(--ct-text); background:radial-gradient(circle at 90% 0,color-mix(in srgb,var(--ct-accent) 22%,transparent),transparent 28rem),var(--ct-bg); box-shadow:0 24px 70px rgba(15,18,24,.08); transition:background .25s,color .25s; }
.gsc-custom-tab-stage.is-dark,.dark-mode .gsc-custom-tab-stage.theme-auto { --ct-bg:#090a0d !important; --ct-surface:#15171c !important; --ct-text:#f6f7f9 !important; --ct-muted:#9da2ad !important; --ct-line:#2c2f36 !important; }
.gsc-custom-tab-stage.is-light { color-scheme:light; }
.gsc-custom-tab-head { margin-bottom:clamp(1.2rem,4vw,2.5rem); display:flex; align-items:center; gap:.75rem; }
.gsc-custom-tab-icon { width:52px; height:52px; flex:0 0 auto; display:grid; place-items:center; border-radius:17px; color:#17120e; background:var(--ct-accent); box-shadow:0 10px 24px color-mix(in srgb,var(--ct-accent) 32%,transparent); font-size:1.3rem; }
.gsc-custom-tab-head strong,.gsc-custom-tab-head small { display:block; }
.gsc-custom-tab-head strong { font-size:clamp(.86rem,2vw,1rem); }
.gsc-custom-tab-head small { margin-top:.2rem; color:var(--ct-muted); font-size:.54rem; font-weight:850; letter-spacing:.1em; }
.gsc-custom-tab-content { display:grid; gap:.75rem; }
.gsc-custom-tab-content.layout-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.gsc-custom-tab-content.layout-cards>.ct-block:not(.ct-divider):not(.ct-spacer),.gsc-custom-tab-content.layout-grid>.ct-block:not(.ct-divider):not(.ct-spacer) { padding:clamp(1rem,3vw,1.4rem); border:1px solid var(--ct-line); border-radius:20px; background:color-mix(in srgb,var(--ct-surface) 94%,transparent); box-shadow:0 12px 30px rgba(13,15,20,.04); }
.ct-heading h2 { margin:0; font-size:clamp(2.1rem,7vw,5rem); line-height:.94; letter-spacing:-.06em; }
.ct-heading.size-small h2 { font-size:clamp(1.55rem,5vw,2.4rem); }
.ct-heading.size-large h2 { font-size:clamp(2.7rem,9vw,6.7rem); }
.ct-copy p,.ct-callout p { margin:0; color:var(--ct-muted); font-size:clamp(.72rem,1.8vw,.9rem); line-height:1.7; white-space:pre-wrap; }
.ct-callout { padding:1.1rem; border-left:4px solid var(--ct-accent); border-radius:0 17px 17px 0; background:color-mix(in srgb,var(--ct-accent) 10%,var(--ct-surface)); }
.ct-callout strong { display:block; margin-bottom:.35rem; font-size:.74rem; }
.ct-hero { min-height:clamp(220px,40vw,420px); padding:clamp(1.2rem,5vw,3rem); display:flex; flex-direction:column; justify-content:flex-end; border:1px solid var(--ct-line); border-radius:26px; overflow:hidden; background:radial-gradient(circle at 85% 10%,color-mix(in srgb,var(--ct-accent) 36%,transparent),transparent 20rem),var(--ct-surface); }
.ct-hero>small { margin-bottom:.65rem; color:var(--ct-accent); font-size:.58rem; font-weight:950; letter-spacing:.13em; }
.ct-hero h2 { margin:0; max-width:900px; font-size:clamp(2.7rem,9vw,7rem); line-height:.88; letter-spacing:-.07em; }
.ct-card { padding:1.2rem; border:1px solid var(--ct-line); border-radius:20px; background:var(--ct-surface); }
.ct-card strong { display:block; margin-bottom:.4rem; font-size:.86rem; }.ct-card p { margin:0; color:var(--ct-muted); line-height:1.65; }
.tone-accent { border-color:color-mix(in srgb,var(--ct-accent) 46%,var(--ct-line)) !important; background:color-mix(in srgb,var(--ct-accent) 13%,var(--ct-surface)) !important; }
.tone-glass { background:color-mix(in srgb,var(--ct-surface) 72%,transparent) !important; backdrop-filter:blur(18px); }
.tone-dark { --ct-text:#f7f7f8; --ct-muted:#a6a8af; color:#f7f7f8 !important; border-color:#30333a !important; background:#14161b !important; }
.ct-stat { min-height:130px; padding:1.2rem; display:flex; flex-direction:column; justify-content:space-between; border:1px solid var(--ct-line); border-radius:20px; background:var(--ct-surface); }
.ct-stat small { color:var(--ct-muted); font-size:.58rem; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }.ct-stat strong { margin-top:.8rem; font-size:clamp(2rem,7vw,4rem); line-height:1; letter-spacing:-.06em; }
.ct-badge { width:max-content; max-width:100%; padding:.42rem .7rem; display:inline-flex; border:1px solid var(--ct-line); border-radius:999px; background:var(--ct-surface); font-size:.55rem; font-weight:950; letter-spacing:.08em; }
.ct-progress { padding:1rem; border:1px solid var(--ct-line); border-radius:17px; background:var(--ct-surface); }.ct-progress>span { display:flex; justify-content:space-between; gap:1rem; font-size:.65rem; font-weight:800; }.ct-progress>i { height:9px; margin-top:.7rem; display:block; overflow:hidden; border-radius:999px; background:var(--ct-line); }.ct-progress>i>u { height:100%; display:block; border-radius:inherit; background:var(--ct-accent); text-decoration:none; transition:width .35s; }
.ct-quote { margin:0; padding:1.3rem; border:1px solid var(--ct-line); border-radius:20px; background:var(--ct-surface); }.ct-quote p { margin:0; font-size:clamp(1.25rem,4vw,2.2rem); line-height:1.2; letter-spacing:-.035em; }.ct-quote cite { margin-top:.8rem; display:block; color:var(--ct-muted); font-size:.58rem; font-style:normal; font-weight:800; }
.ct-field span { display:block; margin-bottom:.42rem; font-size:.6rem; font-weight:900; letter-spacing:.04em; }
.ct-field input[type=text],.ct-field textarea,.ct-field select { width:100%; min-height:52px; padding:0 .9rem; border:1px solid var(--ct-line); outline:0; border-radius:14px; color:var(--ct-text); background:var(--ct-surface); font:inherit; font-size:.72rem; }
.ct-field textarea { min-height:128px; padding:.85rem .9rem; resize:vertical; line-height:1.55; }
.ct-field input[type=text]:focus,.ct-field textarea:focus,.ct-field select:focus { border-color:var(--ct-accent); box-shadow:0 0 0 4px color-mix(in srgb,var(--ct-accent) 17%,transparent); }
.ct-check { min-height:48px; display:flex; align-items:center; gap:.65rem; cursor:pointer; }
.ct-check input { width:22px; height:22px; accent-color:var(--ct-accent); }
.ct-check span { font-size:.72rem; font-weight:750; }
.ct-button { min-height:50px; padding:0 1.1rem; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--ct-accent); border-radius:14px; color:#17120e; background:var(--ct-accent); text-decoration:none; font:inherit; font-size:.68rem; font-weight:900; cursor:pointer; }
.ct-button.outline { color:var(--ct-text); background:transparent; }
.ct-button.soft { color:var(--ct-text); border-color:var(--ct-line); background:color-mix(in srgb,var(--ct-accent) 11%,var(--ct-surface)); }
.ct-button.full { width:100%; }
.ct-button:disabled { opacity:.5; cursor:not-allowed; }
.logic-disabled { opacity:.46 !important; filter:saturate(.55); cursor:not-allowed !important; pointer-events:auto; }
[hidden].ct-block { display:none !important; }
.ct-image { margin:0; overflow:hidden; border-radius:20px; background:var(--ct-surface); }
.ct-image img { width:100%; max-height:560px; display:block; object-fit:cover; }
.ct-image figcaption { padding:.65rem .9rem; color:var(--ct-muted); font-size:.58rem; }
.ct-image.empty { min-height:150px; display:grid; place-items:center; border:1px dashed var(--ct-line); color:var(--ct-muted); font-size:.65rem; }
.ct-embed { min-height:280px; overflow:hidden; border-radius:20px; background:var(--ct-surface); }
.ct-embed iframe { width:100%; height:380px; border:0; display:block; }
.ct-embed.empty { min-height:150px; display:grid; place-items:center; border:1px dashed var(--ct-line); color:var(--ct-muted); font-size:.65rem; }
.ct-divider { height:1px; background:var(--ct-line); }
.ct-spacer.small { height:12px; }.ct-spacer.medium { height:30px; }.ct-spacer.large { height:58px; }
.gsc-custom-empty { padding:4rem 1rem; border:1px dashed var(--ct-line); border-radius:20px; color:var(--ct-muted); text-align:center; }
.gsc-custom-toast { position:fixed; z-index:49000; left:50%; bottom:calc(1rem + env(safe-area-inset-bottom)); max-width:calc(100% - 2rem); padding:.75rem 1rem; border-radius:12px; color:var(--ct-bg); background:var(--ct-text); font-size:.65rem; font-weight:800; opacity:0; transform:translate(-50%,16px); transition:.2s; pointer-events:none; }
.gsc-custom-toast.show { opacity:1; transform:translate(-50%,0); }
@media(max-width:680px){.gsc-custom-tab-stage{min-height:calc(100dvh - 9rem);border-radius:22px;padding:1rem}.gsc-custom-tab-content.layout-grid{grid-template-columns:1fr}.gsc-custom-tab-head{margin-bottom:1.35rem}.ct-heading h2{font-size:2.65rem}.gsc-custom-tab-content.layout-cards>.ct-block:not(.ct-divider):not(.ct-spacer),.gsc-custom-tab-content.layout-grid>.ct-block:not(.ct-divider):not(.ct-spacer){border-radius:17px}}
@media(prefers-reduced-motion:reduce){.gsc-custom-tab-stage,.gsc-custom-toast{transition:none}}
