/* v0.4 / CTV HOUSE controls: DsSelect 277:4448, Calendar 314:3620/329:9047,
   Tooltip 495:4177, gradient logo 1251:12462. */
:root{--font:'Inter',sans-serif;font-synthesis:none;--field-height:48px;--popover-shadow:0 12px 32px -8px rgb(15 23 42 / .10)}
html,body,button,input,select,textarea{font-family:var(--font);font-synthesis:none}body{font-size:15px;line-height:1.6}h1,h2,h3,h4,.ctv-heading{font-weight:600;letter-spacing:-.035em}.lead{font-size:17px;line-height:1.75}.panel p,.principles p,.notice,.section-intro,.screen-note{font-size:14px;line-height:1.7}.eyebrow,.edition,.book-header{font-size:11px;letter-spacing:.08em}.product-content .eyebrow{font-size:11px;letter-spacing:.05em}.product-content p,.product-content .product-heading>div>p{font-size:14px!important}.product-content .field-label{font-size:14px!important;font-weight:500}.product-content .field-label>input,.product-content .field-label>textarea{font-size:15px!important;font-weight:400}.product-content table{font-size:13px}.product-content th{font-size:12px!important}.product-content td small,.prototype-hint{font-size:12px}.product-logo img{width:126px!important;height:29px!important;max-width:100%;object-fit:contain;mix-blend-mode:normal!important;background:none!important;padding:0!important}.product-logo>span{font-size:10px;letter-spacing:.06em}.book-nav .brand{display:flex;flex-direction:column;gap:12px}.book-nav .brand img{width:126px;height:29px}.book-nav .brand small{margin:0;font-size:10px;letter-spacing:.12em}.product-nav.suite-nav .nav-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex:none}.nav-icon svg{display:block;width:21px;height:21px}.product-nav.suite-nav>button{gap:12px;min-height:44px;font-size:14px!important;font-weight:500}.product-nav.suite-nav>button.selected{background:var(--accent-soft);color:var(--accent)}.product-nav.suite-nav>.nav-caption{font-size:10px;padding:23px 12px 8px;letter-spacing:.04em}.product-nav.suite-nav{gap:4px}.product-nav.suite-nav .product-logo{padding:10px 10px 14px;margin:0 0 12px}.product-nav.suite-nav>.nav-account small{font-size:11px}.ctv-field{position:relative;display:flex;max-width:100%;min-width:0;vertical-align:middle;width:100%;margin:8px 0 0}.inline>.ctv-field{margin:0;width:auto;min-width:130px}.ctv-native{position:absolute!important;inset:0!important;z-index:-1!important;opacity:0!important;pointer-events:none!important;width:100%!important;height:100%!important;margin:0!important;clip-path:inset(0)!important}.ctv-range-end{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}.ctv-control,.product-content .ctv-control{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-width:0;min-height:48px;height:48px;padding:12px 16px!important;margin:0;border:1px solid var(--p-grey-border);border-radius:12px!important;background:var(--surface);color:var(--text);font-size:15px!important;font-weight:400;line-height:1.4;text-align:left;box-shadow:none}.ctv-control>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctv-control>svg{width:16px;height:16px;flex:none;color:var(--muted)}.ctv-control:hover{background:var(--surface);border-color:var(--p-grey)}.ctv-control[aria-expanded=true]{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 9%,transparent)}.ctv-control:disabled{background:var(--p-lighter-grey);color:var(--muted);cursor:not-allowed;border-color:var(--border)}.ctv-field:has(.invalid)>.ctv-control,.ctv-field:has([aria-invalid=true])>.ctv-control{border-color:var(--danger)}.ctv-control .placeholder{color:var(--muted)}.suite-context .ctv-control{min-height:36px;height:36px;font-size:12px!important;padding:8px 10px!important;border-radius:8px!important}.suite-context .ctv-field{margin-top:4px}.ctv-popover{position:fixed;inset:auto;margin:0;box-sizing:border-box;z-index:10000;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);padding:0;box-shadow:var(--popover-shadow);overflow:auto;font:14px/1.5 var(--font);max-width:calc(100vw - 24px)}.ctv-popover::backdrop{background:transparent;pointer-events:none}.popover-fallback{display:block}.ctv-dropdown{border-radius:12px;padding:8px;min-width:180px}.dropdown-search{display:flex;align-items:center;gap:8px;padding:8px 12px 14px;border-bottom:1px solid var(--border);margin:0 0 6px}.dropdown-search>svg{width:18px;height:18px;color:var(--muted);flex:none}.dropdown-search>input{border:0!important;background:transparent!important;border-radius:0!important;padding:0!important;height:28px!important;min-width:0;width:100%;font-size:14px!important;outline:none!important}.ctv-dropdown [role=listbox]{max-height:280px;overflow:auto}.ctv-dropdown [role=option]{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:42px;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:var(--secondary);font:400 14px/1.5 var(--font);text-align:left}.ctv-dropdown [role=option]:hover,.ctv-dropdown [role=option].highlighted{background:var(--p-lighter-grey);color:var(--text)}.ctv-dropdown [role=option].selected{background:var(--accent-soft);color:var(--accent);font-weight:500}.ctv-dropdown [role=option]:disabled{color:var(--muted);opacity:.6;background:transparent;cursor:not-allowed}.ctv-dropdown [role=option]>svg{width:16px;height:16px;flex:none}.dropdown-empty{font-size:13px;padding:16px;text-align:center;color:var(--muted)}.ctv-calendar{padding:24px}.calendar-fields{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--border);padding-bottom:18px}.calendar-fields>div{flex:1;min-width:0}.calendar-fields small{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.calendar-fields strong{font-size:14px;font-weight:400}.calendar-fields>span{color:var(--muted)}.calendar-presets{display:flex;flex-wrap:wrap;gap:6px;padding:16px 0}.calendar-presets button{border:0;border-radius:6px;min-height:28px;font-size:11px;padding:5px 9px;background:var(--p-light-grey);color:var(--secondary);font-weight:400}.calendar-presets button:hover{color:var(--accent);background:var(--accent-soft)}.calendar-navigation{display:flex;align-items:center;justify-content:space-between;margin:0 0 4px}.calendar-navigation>button{display:grid;place-items:center;border:0;background:transparent;width:28px;height:28px;min-height:0;padding:4px}.calendar-navigation>button svg{width:16px;height:16px}.calendar-navigation>span{font-size:11px;color:var(--muted)}.calendar-months{display:grid;grid-template-columns:1fr;gap:24px}.calendar-months.range{grid-template-columns:1fr 1fr}.calendar-month-heading{display:flex;justify-content:center;margin:4px 0 18px}.calendar-month-heading>button{font-size:15px;font-weight:500;min-height:28px;border:0;background:transparent;padding:4px 8px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:2px}.calendar-week{font-size:11px;color:var(--muted);margin:0 0 8px}.calendar-days>button{height:34px;min-height:34px;padding:0;display:grid;place-items:center;background:transparent;border:0;border-radius:7px;font-size:13px;font-weight:400;line-height:1}.calendar-days>button.outside{color:var(--p-mid-grey)}.calendar-days>button.today{box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent)}.calendar-days>button.in-range{background:var(--accent-soft);border-radius:0;color:var(--accent)}.calendar-days>button.picked{background:var(--accent);color:white;border-radius:7px}.calendar-days>button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.calendar-days>button:disabled{color:var(--p-grey);cursor:not-allowed}.calendar-month-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:18px 0}.calendar-month-grid button{border:0;background:var(--p-lighter-grey);font-size:12px;padding:8px;min-height:36px}.calendar-time{display:flex;align-items:center;gap:12px;border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.calendar-time>span{display:flex;align-items:center;gap:7px;font-size:13px}.calendar-time svg{width:16px;height:16px}.calendar-time input{width:75px;height:36px;border:1px solid var(--border);padding:6px 10px;border-radius:8px;font:14px var(--font);background:var(--surface);color:var(--text)}.calendar-time small{font-size:10px;color:var(--muted)}.calendar-error{color:var(--danger);font-size:12px;line-height:1.5;margin:12px 0}.calendar-error:empty{display:none}.calendar-footer{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.calendar-footer>button{font-size:13px;min-height:40px;flex:1;font-weight:500}.ctv-help{display:inline-flex;vertical-align:middle;margin-left:6px}.ctv-help>button,.product-content .ctv-help>button{display:grid;place-items:center;width:18px;height:18px;min-height:0;padding:0!important;border:0;background:transparent;color:var(--muted);border-radius:50%!important}.ctv-help svg{width:16px;height:16px}.ctv-tooltip{position:fixed;z-index:30000;padding:2px 6px;max-width:min(280px,calc(100vw - 16px));border-radius:6px;background:#475569;color:#fff;box-shadow:0 6px 16px rgb(71 85 105 /.15);font:400 13px/20px var(--font);letter-spacing:0;pointer-events:none;white-space:normal}.ctv-tooltip::after{content:'';position:absolute;top:100%;left:calc(50% - 6px);border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #475569}.ctv-tooltip.below::after{top:auto;bottom:100%;border-top:0;border-bottom:6px solid #475569}.component-lab{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0}.component-lab>article{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px}.component-lab h3{font-size:17px;margin-bottom:18px}.component-lab label{font-size:13px;margin:16px 0}.component-lab p{font-size:13px}.component-lab .ctv-field{margin-top:8px}.component-lab .lab-result{margin-top:12px;font-size:12px;color:var(--accent)}.component-lab .icon-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;color:var(--secondary)}.icon-gallery svg{width:24px;height:24px}.component-lab .tooltip-row{display:flex;align-items:center;gap:14px;margin:20px 0;font-size:14px}
@media(max-width:900px){.component-lab{grid-template-columns:1fr 1fr}}@media(max-width:600px){.component-lab{grid-template-columns:1fr}.ctv-calendar{padding:18px}.calendar-months.range{grid-template-columns:1fr}.second-calendar-month{display:none}.calendar-time{flex-wrap:wrap}.product-nav.suite-nav .nav-icon{display:flex!important;width:18px;height:18px}.nav-icon svg{width:18px;height:18px}.product-nav.suite-nav>button{font-size:12px!important;gap:8px}.ctv-tooltip{font-size:12px}.ctv-control,.product-content .ctv-control{font-size:14px!important}.suite-context .ctv-control{font-size:11px!important}}
