/* Shared controls measured against the owner's ChattyCHARTS Studio. */
:root{font-family:Inter,'Segoe UI',sans-serif;font-size:16px;--ink:#00122f;--navy:#002060;--blue:#1f4eaa;--muted:#52647d;--border:#d5e0ef;--subtle:#f6f9ff;--selected:#e3efff}body{color:var(--ink);line-height:1.5}
button,input,textarea,select{font-family:inherit}button,.primary{font-size:14px;line-height:1.5;font-weight:600;border-radius:8px;min-height:44px;padding:10px 16px;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:#edf3fc;border-color:#a9c0df}.primary:hover:not(:disabled){background:var(--blue);color:white;border-color:var(--blue)}:is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #5fa8ff;outline-offset:3px}
h1,.result-title,.studio-shell h1{font-size:32px;line-height:1.23;letter-spacing:-.035em;font-weight:700}h2{font-size:22px;line-height:1.4}h3{font-size:18px;line-height:1.5}p,li{font-size:16px;line-height:1.65}.lead{font-size:16px;margin-bottom:28px}.description,.brief-summary{font-size:14px}label,legend{font-size:14px}select,input[type=number],textarea{font-size:15px;line-height:1.6;padding:11px 12px;min-height:46px}.choice{font-size:15px;min-height:54px;padding:12px 16px}.secondary-choices label{font-size:14px}.step-actions{margin-top:30px;padding-top:22px}.section-detail h2{font-size:24px}.section-detail p,.section-detail li{font-size:16px}
.embedded-tool{overflow-x:hidden}.embedded-tool body{min-height:0}.embedded-tool body>header,.embedded-tool .site-footer{display:none}.embedded-tool #workspace,.integrated-structure{max-width:none;margin:0;padding:0 0 32px}.embedded-tool #brief,.embedded-tool #progress,.integrated-structure #brief,.integrated-structure #progress{max-width:760px}.embedded-tool #progress,.integrated-structure #progress{margin-bottom:36px}.embedded-tool #result{max-width:none}.integrated-structure>.site-footer{display:none}.integrated-structure #result{max-width:none}
.studio-shell{--sidebar-width:280px}.studio-topbar{height:74px;min-height:74px;padding:16px 40px}#studio-main{padding:48px 40px 50px;min-height:calc(100dvh - 74px)}#studio-sidebar{background:#f2f7ff}.nav-closed{--sidebar-width:96px}#studio-sidebar nav a,#studio-sidebar .nav-future{padding:12px 11px;min-height:56px}.nav-label small{font-size:11px}.workspace-intro{font-size:16px;margin:16px 0 32px}.structure-start{padding:28px;gap:32px;border-radius:10px}.structure-start h2{font-size:24px;max-width:440px}.structure-start .primary{font-size:14px;padding:10px 16px;min-height:44px}.structure-visual{width:190px}.structure-visual b{font-size:14px}.design-later{padding:28px 0}.studio-shell .site-footer{padding-right:95px}.studio-shell .site-footer p{font-size:12px}.nav-scrim{display:none}
.sidebar-settings{margin-top:auto;padding-top:20px}.settings-trigger{width:100%;display:flex;gap:8px;justify-content:flex-start;background:transparent;font-size:13px;font-weight:500;padding:10px;border:1px solid #cbd9ed}.settings-trigger .nav-icon{width:22px;height:22px}.settings-trigger .settings-chevron{margin-left:auto}.nav-closed .settings-trigger{justify-content:center}.nav-closed .settings-chevron{display:none}
.settings-panel{position:fixed;inset:auto auto 78px 0;margin:0;width:280px;max-width:100vw;max-height:75dvh;overflow:auto;border:1px solid var(--border);border-radius:12px;padding:18px;background:#fff;color:var(--ink);box-shadow:0 12px 45px #00206026}.panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:14px}.panel-heading h2{font-size:18px;margin:0}.icon-close{padding:4px;min-width:36px;min-height:36px;font-size:22px;border:0;background:transparent}.settings-panel details{border-top:1px solid var(--border);padding:12px 0}.settings-panel summary{font-size:14px;font-weight:600}.settings-panel label{font-size:13px;display:flex;gap:9px;align-items:center;font-weight:400;margin:14px 0}.settings-panel p{font-size:12px;color:var(--muted);margin:10px 0}.settings-links{display:grid;gap:8px}.settings-links a,.settings-links button{text-align:left;font-size:13px;padding:6px 0;text-decoration:none;min-height:32px}.settings-panel small{font-size:12px}
#studio-sidebar{overflow:hidden}.sidebar-brand{flex-shrink:0}#studio-sidebar nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:3px}.sidebar-settings{flex-shrink:0}.studio-layout{min-height:calc(100dvh - 74px)}
@media(prefers-reduced-motion:no-preference){.studio-topbar,#studio-main{transition:margin-left .15s ease}#studio-sidebar{transition:width .15s ease}}
@media(max-width:900px){.structure-visual{width:150px}}
@media(max-width:760px){.studio-topbar{margin-left:0;height:74px;min-height:74px;padding:12px 18px}.studio-shell h1,h1,.result-title{font-size:27px}#studio-main{margin-left:0;padding:28px 20px 110px}.structure-start{padding:22px}.structure-start h2{font-size:23px}.studio-shell .site-footer{padding-right:0}.studio-shell .site-footer p{font-size:11px}#studio-sidebar{width:min(280px,88vw);z-index:50}.studio-shell:not(.nav-closed) .nav-scrim{display:block;position:fixed;inset:0;background:#00122f66;border:0;border-radius:0;z-index:40}.nav-closed .nav-scrim{display:none}.settings-panel{width:min(360px,calc(100vw - 24px));inset:auto 12px 20px 12px;max-height:80dvh}.studio-topbar .account-menu{flex-wrap:nowrap}.choice{font-size:14px;padding:12px}select,input[type=number],textarea{font-size:16px}.embedded-tool #progress{margin-bottom:28px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Settings popover: match the reviewed ChattyCHARTS layout, scoped to Studio. */
.settings-trigger{font-size:14px;padding:12px}.settings-trigger[aria-expanded="true"]{background:var(--selected);outline:2px solid #7897bd;outline-offset:3px}
.settings-panel{inset:auto auto 76px var(--sidebar-width);width:304px;max-width:calc(100vw - var(--sidebar-width) - 12px);max-height:calc(100dvh - 110px);border-radius:16px;padding:16px;box-sizing:border-box}.settings-panel .panel-heading{gap:12px;margin:0;padding-bottom:10px}.settings-panel .panel-heading h2{font-size:15px;line-height:1.5;font-weight:700}.settings-panel .icon-close{font-size:20.8px;line-height:1.5;padding:3px 9px;min-width:0;min-height:0}.settings-panel>details{margin:0;border-top:1px solid var(--border);padding:13px 2px}.settings-panel summary{display:list-item;list-style:disclosure-closed inside;font-size:14px;font-weight:600;line-height:21px;padding:0}.settings-panel details[open]>summary{list-style:disclosure-open inside}.settings-panel summary::-webkit-details-marker{display:revert}.settings-panel summary::after{content:none}.settings-panel p{font-size:14px}.settings-panel summary:focus-visible,.settings-panel a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
@media(max-width:760px){.settings-panel{inset:auto 12px 20px 12px;width:auto;max-width:none;max-height:calc(100dvh - 40px)}}

/* Shared action and popup scale. Content text remains independent of controls. */
.flow-card,.slide-button{font-size:14px;line-height:1.5;border-radius:8px;padding:14px 16px}.flow-card{min-height:132px}.flow-card small,.slide-button span,.slide-count{font-size:12px}.slide-button span{margin-bottom:6px}.slide-button{min-height:76px}.slide-buttons{gap:12px}.flow-card[aria-selected=true],.slide-button[aria-selected=true]{background:var(--selected);border-color:var(--blue)}
.browse-tabs button{font-size:14px;line-height:1.5;min-height:44px;padding:10px 16px}.step-actions{gap:12px}.text-link{font-size:14px;line-height:1.5}.audience-label button{font-size:20px;width:36px;height:36px;min-height:36px}.audience-guide{padding:16px;border-radius:16px}.audience-guide .guide-heading{gap:12px;font-size:15px}.audience-guide dd{font-size:14px}.audience-guide dt{font-size:14px}.audience-guide #audience-guide-close,.studio-shell .companion-panel .icon-close{border:0;background:transparent;font-size:20.8px;line-height:1.5;padding:3px 9px;min-width:0;min-height:0;width:auto;height:auto;border-radius:8px}
.studio-shell .companion-panel{border-radius:16px;padding:16px}.studio-shell .companion-panel .panel-heading{gap:12px;margin:0;padding-bottom:10px;border-bottom:1px solid var(--border)}.studio-shell .companion-panel .panel-heading h2{font-size:15px;line-height:1.5;font-weight:700}.studio-shell .companion-panel h3{font-size:16px;margin:16px 0 8px}.studio-shell .companion-panel p,.studio-shell .companion-panel li{font-size:14px;line-height:1.65}.studio-shell .companion-panel a{font-size:14px}
#access-dialog,#examples-dialog{border-radius:14px;padding:24px;max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain}#access-dialog h2,#examples-dialog h2{font-size:20px;line-height:1.4;margin:0;font-weight:650}#access-dialog .dialog-top,#examples-dialog .dialog-top{gap:12px;margin-bottom:18px;align-items:flex-start}#access-dialog #access-close,#examples-close{font-size:14px;line-height:1.5;min-height:32px;padding:5px 8px;flex:none;border-radius:8px}#access-dialog form input:not([type=checkbox]){font-size:15px;line-height:1.6;min-height:46px;padding:11px 12px;border-radius:7px;border-color:var(--border)}#access-dialog .primary,#examples-dialog .primary{font-size:14px;line-height:1.5;min-height:44px;padding:10px 16px;border-radius:8px}#access-dialog .text-link{line-height:1.5}#examples-dialog p{font-size:14px}#examples-dialog .primary{margin:22px 0 0}
@media(max-width:760px){#access-dialog,#examples-dialog{padding:20px}#access-dialog form input:not([type=checkbox]){font-size:16px}.audience-label button{width:44px;height:44px;min-height:44px}.studio-shell .companion-panel .icon-close,.audience-guide #audience-guide-close{min-width:44px;min-height:44px}.flow-card,.slide-button{font-size:14px}.slide-buttons{grid-template-columns:1fr}}

/* Phone-only touch targets; desktop rules are unchanged. */
@media(max-width:760px){
.studio-topbar #mobile-menu{width:44px;min-width:44px;height:44px;padding:8px}.studio-topbar .account-menu{gap:8px}.studio-topbar .account-menu .text-link{min-height:44px;padding:8px 4px}.sidebar-brand #menu-toggle{width:44px;min-width:44px;min-height:44px;top:-16px;padding:10px}.sidebar-brand #menu-toggle svg{margin:auto}
.settings-panel .icon-close{min-width:44px;min-height:44px;padding:6px 9px}.settings-panel label{min-height:44px}.settings-links a,.settings-links button{display:flex;align-items:center;min-height:44px;padding:10px 0}.settings-panel summary{min-height:44px;padding:11px 0}.settings-panel>details{padding:2px}.settings-panel .panel-heading{padding-bottom:10px}
#access-dialog #access-close,#examples-close,#access-dialog .text-link{min-height:44px;padding:10px 8px}#access-dialog form .check{min-height:44px}.site-footer .footer-links a{display:inline-flex;align-items:center;min-height:44px}.step-actions{flex-wrap:wrap}.step-actions>button{max-width:100%}
}
@media(max-width:360px){.studio-topbar{padding:10px 12px;gap:6px}.studio-breadcrumb{gap:6px;font-size:12px}.studio-topbar .account-menu{gap:4px}.studio-topbar .account-menu .text-link{font-size:12px}#studio-main{padding-left:16px;padding-right:16px}}
