@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-3{top:calc(var(--spacing) * 3)}.isolate{isolation:isolate}.row-1{grid-row:1}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/montserrat-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/montserrat-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/montserrat-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/montserrat-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/montserrat-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/montserrat-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/montserrat-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/montserrat-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/montserrat-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/montserrat-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/montserrat-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/montserrat-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/montserrat-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/montserrat-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/montserrat-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/montserrat-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/montserrat-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/montserrat-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/montserrat-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/montserrat-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat Fallback;src:local(Arial);ascent-override:85.79%;descent-override:22.25%;line-gap-override:0%;size-adjust:112.83%}@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-vietnamese.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/fonts/archivo-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0%;size-adjust:98.7%}*,:before,:after{box-sizing:border-box;margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600}:root{--bg-primary:#091a22;--bg-secondary:#0f2530;--bg-tertiary:#163040;--bg-hover:#1c3c4d;--border:#265060;--text-primary:#e6eaed;--text-secondary:#9bb0ba;--text-muted:#5f7d8a;--accent:#ee6823;--accent-hover:#d45a1c;--green:#22c55e;--amber:#f59e0b;--red:#ef4444;--purple:#0a4d65;--font-heading:"Montserrat", "Montserrat Fallback", "Segoe UI", system-ui, sans-serif;--font-body:"Archivo", "Archivo Fallback", "Segoe UI", system-ui, sans-serif;--font-serif:"Merriweather", Georgia, serif;--font-montserrat:"Montserrat", "Montserrat Fallback";--font-archivo:"Archivo", "Archivo Fallback";font-family:var(--font-body);color:var(--text-primary);background:var(--bg-primary);font-size:14px;line-height:1.5}[data-theme=light]{--bg-primary:#f5f7f6;--bg-secondary:#fff;--bg-tertiary:#eaefec;--bg-hover:#dde3df;--border:#c5cec8;--text-primary:#0a3d52;--text-secondary:#3a6d80;--text-muted:#7fa0ad;--accent:#ee6823;--accent-hover:#d45a1c;--green:#16a34a;--amber:#d97706;--red:#dc2626;--purple:#0a4d65}html{overflow-x:hidden}body{min-height:100vh;overflow-x:hidden}#root{min-height:100vh}input,select,textarea,button{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:8px;height:14px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.app.v2{height:100vh;display:flex;flex-direction:column;overflow:hidden}.top-nav{background:var(--bg-secondary);border-bottom:1px solid var(--border);padding:0 16px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;position:relative;z-index:2000;height:48px;gap:12px}.top-nav-left{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.top-nav-brand{font-family:var(--font-heading);font-size:15px;font-weight:600;color:var(--accent);letter-spacing:-.3px;white-space:nowrap}.top-nav-links{display:flex;gap:0;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.top-nav-links::-webkit-scrollbar{display:none}.top-nav-link{background:none;border:none;color:var(--text-secondary);font-size:13px;font-weight:500;padding:14px 12px;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;white-space:nowrap;flex-shrink:0}.top-nav-link:hover{color:var(--text-primary);background:var(--bg-hover)}.top-nav-link.active{color:var(--accent);border-bottom-color:var(--accent)}.top-nav-right{display:flex;align-items:center;gap:8px;flex-shrink:0;position:relative}.top-nav-controls{display:flex;align-items:center;gap:8px}.top-nav-more{display:none;background:none;border:none;color:var(--text-primary);font-size:20px;cursor:pointer;padding:4px 10px;line-height:1}@media(max-width:1024px){.top-nav-more{display:block}.top-nav-controls{display:none;position:absolute;right:0;top:100%;margin-top:4px;flex-direction:column;align-items:stretch;gap:6px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:10px;box-shadow:0 8px 24px #00000040;z-index:200;min-width:200px}.top-nav-controls.menu-open{display:flex}.top-nav-controls .header-dropdown{width:100%}.top-nav-controls .header-dropdown-menu{right:auto;left:0}}.proof-page{display:flex;flex-direction:column;gap:14px;padding:18px;min-height:100%;min-width:0;overflow-x:hidden}.proof-header,.proof-upload-grid,.proof-progress,.proof-panel,.proof-kit-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px}.proof-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px}.proof-eyebrow{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.proof-header h2,.proof-kit-card h3{margin:0;color:var(--text-primary)}.proof-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.proof-beta-badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border:1px solid rgba(249,115,22,.35);border-radius:999px;background:#f973161f;color:var(--orange);font-size:11px;font-weight:800;line-height:1;text-transform:uppercase}.proof-header p,.proof-kit-card p,.proof-empty{margin:4px 0 0;color:var(--text-muted);font-size:13px}.proof-header .proof-research-note{max-width:760px;margin-top:10px;color:var(--text-secondary);font-weight:600}.proof-actions,.proof-badge-row,.proof-queue-actions,.proof-kit-actions,.proof-feedback-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.proof-export-cluster{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.proof-export-cluster a{text-decoration:none}.proof-export-status{flex-basis:100%;color:var(--text-muted);font-size:12px;text-align:right}.proof-upload-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;padding:14px}.proof-dropzone{position:relative;display:grid;place-items:center;align-content:center;min-height:190px;padding:24px;text-align:center;background:var(--bg-primary);border:1px dashed var(--border);border-radius:8px}.proof-dropzone.dragging{border-color:var(--accent);background:#3b82f614}.proof-dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}.proof-drop-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:8px;background:var(--accent);color:#fff;font-size:12px;font-weight:900;margin-bottom:10px}.proof-dropzone h3{margin:0;color:var(--text-primary)}.proof-dropzone p{max-width:560px;color:var(--text-muted);font-size:13px}.proof-queue{display:flex;flex-direction:column;min-height:190px;gap:10px}.proof-panel-title,.proof-kit-head,.proof-issue-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text-primary)}.proof-panel-title span,.proof-kit-head span,.proof-progress-counts span{color:var(--text-muted);font-size:12px}.proof-file-list{display:flex;flex-direction:column;gap:6px;flex:1;min-height:0;overflow:auto}.proof-file,.proof-skipped{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:12px}.proof-file span,.proof-skipped strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proof-file strong{color:var(--text-muted);font-weight:700;white-space:nowrap}.proof-status{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#3b82f614;border:1px solid rgba(59,130,246,.26);border-radius:8px;color:var(--text-primary)}.proof-status.error{background:#ef44441a;border-color:#ef444447}.proof-status.error span{background:var(--red)}.proof-status span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:22px;border-radius:6px;background:var(--accent);color:#fff;font-size:10px;font-weight:900}.proof-status p{margin:0;font-size:13px}.proof-progress{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,34%) auto;align-items:center;gap:14px;padding:12px 14px}.proof-progress.failed{border-color:#ef444452}.proof-progress strong{color:var(--text-primary)}.proof-progress p{margin:3px 0 0;color:var(--text-muted);font-size:12px}.proof-progress .proof-progress-error{color:#fecaca;font-weight:700;white-space:normal}.proof-meter{position:relative;height:8px;background:var(--bg-tertiary);border-radius:999px;overflow:hidden}.proof-meter span{display:block;height:100%;background:var(--accent)}.proof-progress.active .proof-meter i{position:absolute;inset:0;width:36%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);animation:proof-meter-scan 1.15s ease-in-out infinite}@keyframes proof-meter-scan{0%{transform:translate(-100%)}to{transform:translate(280%)}}.proof-progress-counts{display:flex;gap:10px}.proof-metrics{display:grid;grid-template-columns:repeat(8,minmax(96px,1fr));gap:10px}.proof-metric{padding:12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px}.proof-metric span{display:block;color:var(--text-muted);font-size:11px;margin-bottom:5px}.proof-metric strong{color:var(--text-primary);font-size:22px}.proof-panel{padding:14px;min-width:0;overflow:hidden}.proof-panel.compact{padding:12px}.proof-table-wrap{margin-top:10px;overflow:auto;max-width:100%;border:1px solid var(--border);border-radius:8px}.proof-table-wrap.compact{max-height:260px}.proof-table{width:100%;border-collapse:collapse;min-width:820px}.proof-panel .proof-table{width:max-content;min-width:100%}.proof-table th,.proof-table td{padding:8px 10px;border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:12px;text-align:left;white-space:nowrap}.proof-table th{position:sticky;top:0;background:var(--bg-tertiary);color:var(--text-primary);font-weight:800;z-index:1}.proof-table tr.warn td{background:#f59e0b14}.proof-table tr.error td{background:#ef444412}.proof-table tr.pass td{background:#22c55e0d}.proof-table td.proof-date-expired{color:#991b1b;background:#fee2e2;box-shadow:inset 0 0 0 1px #fecaca;font-weight:800}.proof-table td.proof-date-soon{color:#92400e;background:#fef3c7;box-shadow:inset 0 0 0 1px #fde68a;font-weight:800}.proof-badge{display:inline-flex;align-items:center;justify-content:center;min-height:20px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap;border:1px solid transparent}.proof-badge.pass{color:#166534;background:#dcfce7;border-color:#86efac}.proof-badge.warn{color:#92400e;background:#fef3c7;border-color:#fbbf24}.proof-badge.error{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.proof-badge.note{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.proof-skipped-list{display:grid;gap:8px;margin-top:10px}.proof-skipped{justify-content:flex-start;flex-direction:column}.proof-skipped span{color:var(--text-muted)}.proof-results{display:grid;grid-template-columns:minmax(300px,340px) minmax(0,1fr);gap:14px;align-items:start;min-width:0}.proof-kit-nav{position:sticky;top:12px;display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 130px);padding:12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px}.proof-kit-list{display:flex;flex-direction:column;gap:6px;overflow:auto}.proof-kit-list button{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:start;width:100%;padding:8px;text-align:left;background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);cursor:pointer}.proof-kit-list button.active{border-color:var(--accent);background:#3b82f61a}.proof-kit-number{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--text-primary);font-weight:800}.proof-kit-copy{display:grid;gap:3px;min-width:0}.proof-kit-copy strong,.proof-kit-copy em{min-width:0}.proof-kit-copy strong{color:var(--text-primary)}.proof-kit-copy em{color:var(--text-secondary);font-size:11px;font-style:normal;line-height:1.25;overflow-wrap:anywhere;word-break:break-word}.proof-kit-counts{grid-column:2;display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.proof-kit-counts .proof-badge{border-radius:6px;min-height:20px;padding:2px 7px;font-size:11px}.proof-kit-results{display:grid;gap:12px;min-width:0}.proof-kit-card-head{display:flex;justify-content:space-between;gap:14px;padding:14px;border-bottom:1px solid var(--border);min-width:0}.proof-kit-card{min-width:0;overflow:hidden}.proof-kit-card-head>div:first-child{min-width:0}.proof-kit-card-head h3{overflow-wrap:anywhere}.proof-kit-body{display:grid;gap:12px;padding:12px;min-width:0}.proof-context-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:10px;min-width:0}.proof-info-tile,.proof-date-card,.proof-issue-card{padding:10px;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px}.proof-info-tile span{color:var(--text-muted);font-size:11px}.proof-info-tile strong{display:block;margin:4px 0;color:var(--text-primary)}.proof-info-tile p,.proof-date-card p,.proof-section-summary,.proof-issue-card p{margin:4px 0 0;color:var(--text-secondary);font-size:12px;overflow-wrap:anywhere}.proof-date-card{margin-top:10px}.proof-date-card strong{color:var(--text-primary)}.proof-issue-groups{display:grid;gap:10px;margin-top:10px}.proof-issue-group{display:grid;gap:8px}.proof-issue-line{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;color:var(--text-primary)}.proof-issue-line span{color:var(--text-muted);font-size:11px}.proof-quote,.proof-grounding-warning,.proof-suggestion{padding:8px;background:var(--bg-tertiary);border-radius:6px}.proof-grounding-warning{color:#fde68a;background:#f59e0b1f;border:1px solid rgba(245,158,11,.22)}.proof-feedback-controls{margin-top:10px}.proof-feedback-controls select,.proof-feedback-controls input{min-height:30px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);padding:0 8px}.proof-feedback-controls input{flex:1;min-width:180px}.proof-issue-card.saved{border-color:#22c55e80}@media(max-width:1100px){.proof-upload-grid,.proof-results{grid-template-columns:1fr}.proof-kit-nav{position:static;max-height:none}.proof-metrics,.proof-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-progress{grid-template-columns:1fr}}.app-shell{display:flex;flex:1;min-height:0;overflow:hidden}.sidebar{width:200px;flex-shrink:0;background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;transition:width .2s ease;overflow:hidden}.sidebar.collapsed{width:48px}.sidebar-toggle{background:none;border:none;color:var(--text-muted);font-size:10px;padding:8px;cursor:pointer;text-align:center;border-bottom:1px solid var(--border)}.sidebar-toggle:hover{color:var(--text-primary);background:var(--bg-hover)}.sidebar-scroll{flex:1;overflow-y:auto;padding:8px 0}.sidebar-group{margin-bottom:8px}.sidebar-group-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:4px 12px}.sidebar-item{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;color:var(--text-secondary);font-size:13px;padding:8px 12px;cursor:pointer;text-align:left;transition:all .12s}.sidebar-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-item.active{background:var(--bg-tertiary);color:var(--accent);font-weight:600;border-left:3px solid var(--accent);padding-left:9px}.sidebar-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:4px;font-size:10px;font-weight:700;color:var(--text-secondary);flex-shrink:0}.sidebar-item.active .sidebar-icon{background:var(--accent);color:#fff}.sidebar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar.collapsed .sidebar-group-label{display:none}.sidebar.collapsed .sidebar-item{justify-content:center;padding:8px 0}.sidebar.collapsed .sidebar-label{display:none}.sidebar.collapsed .sidebar-item.active{padding-left:0;border-left:none;border-bottom:2px solid var(--accent)}.main-content{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:16px;min-width:0;min-height:0}.section-heading{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--text-primary);margin:0}.dash-sub-heading{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.dashboard-view{display:flex;flex-direction:column;gap:20px}.dash-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dash-kpis-three{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-kpi-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px;text-align:center;min-width:0;overflow:hidden}.dash-kpi-value{font-size:24px;font-weight:700;color:var(--text-primary)}.dash-kpi-label{font-size:12px;color:var(--text-muted);margin-top:4px;overflow-wrap:anywhere}.dash-upcoming{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dash-upcoming-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px;min-width:0;overflow:hidden}.dash-upcoming-header{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}.dash-upcoming-count{font-size:28px;font-weight:700;color:var(--accent)}.dash-upcoming-label{font-size:13px;color:var(--text-secondary)}.dash-upcoming-channels{display:flex;flex-wrap:wrap;gap:6px}.dash-channel-chip-wrap{position:relative;cursor:pointer}.dash-channel-chip{font-size:11px;background:var(--bg-tertiary);padding:2px 8px;border-radius:10px;color:var(--text-secondary);transition:background .15s}.dash-channel-chip-wrap:hover .dash-channel-chip{background:var(--bg-hover);color:var(--text-primary)}.chip-tooltip{position:absolute;top:100%;left:0;z-index:100;min-width:320px;max-width:420px;max-height:300px;overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0000004d;padding:8px 0;margin-top:4px}.chip-tooltip-header{padding:4px 12px 6px;font-size:12px;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border)}.chip-tooltip-list{padding:4px 0}.chip-tooltip-row{display:flex;gap:8px;padding:3px 12px;font-size:11px;color:var(--text-secondary)}.chip-tooltip-row:hover{background:var(--bg-hover)}.chip-tooltip-date{flex-shrink:0;width:70px;color:var(--text-muted)}.chip-tooltip-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.chip-tooltip-client{flex-shrink:0;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-muted);font-size:10px}.chip-tooltip-more{padding:4px 12px;font-size:10px;color:var(--text-muted);font-style:italic}.dash-upcoming-empty{font-size:12px;color:var(--text-muted);font-style:italic}.dash-sparkline-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dash-sparkline-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:12px}.dash-sparkline-label{font-size:11px;color:var(--text-muted)}.dash-sparkline-value{font-size:16px;font-weight:600;color:var(--text-primary);margin:2px 0 6px}.dash-sparkline-svg{width:100%;height:32px}.dash-prod-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.dash-approvals-list{display:flex;flex-direction:column;gap:4px}.dash-approval-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:6px;font-size:13px}.dash-approval-row:hover{background:var(--bg-hover)}.dash-approval-name{color:var(--text-primary);font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-approval-meta{color:var(--text-muted);font-size:11px;white-space:nowrap}.dash-calendar-section{margin-top:4px}.dash-cal-filters{margin-bottom:12px;overflow-x:auto}.dash-cal-filters .preset-pill{flex-wrap:wrap;display:inline-flex}.metric-delta-chip{display:inline-flex;align-items:center;min-height:20px;padding:4px 8px;border-radius:999px;border:1px solid var(--border);font-size:10px;line-height:1;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;background:var(--bg-tertiary);color:var(--text-secondary)}.metric-delta-chip-positive{background:#22c55e29;border-color:#22c55e6b;color:#4ade80}.metric-delta-chip-negative{background:#ef444429;border-color:#ef44446b;color:#f87171}.metric-delta-chip-neutral{background:#94a3b824;border-color:#94a3b847;color:var(--text-secondary)}.results-slide-section{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:12px}.results-slide-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.results-slide-status{color:var(--text-muted);font-size:11px;margin-top:3px;line-height:1.35}.results-slide-error{color:var(--amber);font-size:11px;margin-top:4px}.results-slide-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.results-table-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:6px;background:#d9dee3;padding:10px}.results-table-export{width:1500px;background:#fff;color:#121212;font-family:Arial,Helvetica,sans-serif;overflow:hidden;box-shadow:0 3px 14px #00000038}.results-export-table{width:1500px;border-collapse:collapse;table-layout:fixed;font-size:21px}.results-export-table col,.results-export-table th,.results-export-table td{letter-spacing:0}.results-export-table th{height:38px;background:#175a70;color:#fff;font-size:22px;font-weight:800;text-align:center;border-right:2px solid #d7e1e6;padding:0 14px}.results-export-table th:nth-child(1){width:300px}.results-export-table th:nth-child(2){width:300px}.results-export-table th:nth-child(3){width:300px}.results-export-table th:nth-child(4){width:300px}.results-export-table th:nth-child(5){width:300px;border-right:0}.results-export-table td{height:70px;border-bottom:2px dashed #cfcfcf;text-align:center;vertical-align:middle;font-size:22px;padding:0 14px;font-weight:400}.results-export-table td:first-child{text-align:left;font-size:24px}.results-export-table td:nth-child(4),.results-export-table td:nth-child(5){font-weight:800}.results-slide-indent{padding-left:92px!important}.results-slide-underline{text-decoration:underline;text-decoration-color:#e94747;text-underline-offset:4px}.results-slide-green{background:#08b755;color:#111}.results-slide-yellow{background:#ffc20d;color:#111}.results-slide-red{background:#ff0a0a;color:#111}.results-slide-empty{background:#fff;color:#111}.vertical-dashboard{display:flex;flex-direction:column;gap:20px}.vertical-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.vertical-placeholder{text-align:center;padding:40px 20px;color:var(--text-muted);font-size:14px;font-style:italic;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px}.vertical-zone{margin-top:4px}.prod-week-table-wrap{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;overflow:auto;max-height:480px}.prod-week-table{width:100%;border-collapse:collapse;font-size:12px}.prod-week-table th{position:sticky;top:0;background:var(--bg-tertiary);padding:8px;text-align:right;font-weight:600;font-size:11px;color:var(--text-secondary);border-bottom:1px solid var(--border);white-space:nowrap}.prod-week-table th:first-child,.prod-week-table td:first-child{text-align:center;width:40px}.prod-week-table th:nth-child(2),.prod-week-table td:nth-child(2){text-align:left}.prod-week-table.label-col th:first-child,.prod-week-table.label-col td:first-child{text-align:left;width:auto}.prod-week-table td{padding:5px 8px;text-align:right;border-bottom:1px solid var(--border);color:var(--text-primary)}.prod-week-table tbody tr:hover{background:var(--bg-hover)}.prod-week-table tfoot td{position:sticky;bottom:0;z-index:3;background-color:var(--bg-tertiary)}.pw-ytd-row td{background:var(--bg-tertiary);border-top:2px solid var(--border);font-weight:600}.pw-green{background:#22c55e1f!important;color:var(--green)!important}.pw-amber{background:#f59e0b1f!important;color:var(--amber)!important}.pw-red{background:#ef44441f!important;color:var(--red)!important}.prod-week-table tfoot td.pw-green{background:linear-gradient(#22c55e1f,#22c55e1f),var(--bg-tertiary)!important}.prod-week-table tfoot td.pw-amber{background:linear-gradient(#f59e0b1f,#f59e0b1f),var(--bg-tertiary)!important}.prod-week-table tfoot td.pw-red{background:linear-gradient(#ef44441f,#ef44441f),var(--bg-tertiary)!important}.prod-week-table tfoot:has(.pw-forecast-total) tr.pw-ytd-row:not(.pw-forecast-total) td{bottom:32px}.pl-prof-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pl-prof-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;overflow:hidden}.pl-prof-card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;gap:8px}.pl-prof-card-header .dash-sub-heading{margin:0;font-size:13px;white-space:nowrap}.pl-prof-card .prod-week-table{font-size:12px}@media(max-width:900px){.pl-prof-cards{grid-template-columns:1fr}}.jumbo-recon-card .pl-prof-card-header{align-items:flex-start;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.jumbo-recon-note{margin-top:3px;color:var(--text-muted);font-size:11px;line-height:1.35}.jumbo-recon-table-wrap{border:0;border-radius:0}.jumbo-recon-table th,.jumbo-recon-table td{padding:7px 10px}.jumbo-recon-table th:first-child,.jumbo-recon-table td:first-child{width:58px;text-align:left;font-weight:700}.jumbo-recon-table th:nth-child(8),.jumbo-recon-table td:nth-child(8){text-align:left}.jumbo-product-table{width:100%;min-width:760px}.jumbo-product-table th,.jumbo-product-table td{padding:5px 8px;white-space:nowrap}.jumbo-product-table th{white-space:normal;line-height:1.15}.jumbo-product-table th:first-child,.jumbo-product-table td:first-child{width:58px;text-align:left}.jumbo-product-table th:nth-last-child(2),.jumbo-product-table td:nth-last-child(2){font-weight:700}.jumbo-product-table th.jp-apps,.jumbo-product-table td.jp-apps{text-align:center;width:52px;padding-left:4px;padding-right:4px}@media(max-width:700px){.jumbo-product-table{min-width:680px;font-size:11px}.jumbo-product-table th,.jumbo-product-table td{padding:5px 6px}.jumbo-product-table th:first-child,.jumbo-product-table td:first-child{width:50px}.jumbo-product-table th.jp-apps,.jumbo-product-table td.jp-apps{width:44px;padding-left:3px;padding-right:3px}}.jpwt-wrap{border:1px solid var(--border);border-radius:6px;overflow:auto}.jpwt-table{table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:12px;width:100%}.jpwt-table th,.jpwt-table td{padding:6px 10px;white-space:nowrap;border-bottom:1px solid var(--border)}.jpwt-table tbody tr:hover td,.jpwt-table tbody tr:hover .jpwt-wk-col{background:var(--bg-hover)}.jpwt-wk-col{position:sticky;left:0;z-index:2;background:var(--bg-secondary);border-right:2px solid var(--border);font-weight:700;min-width:52px;width:52px;text-align:left}.jpwt-wk-head{z-index:5;top:0;background:var(--bg-tertiary);font-weight:700}.jpwt-wk-cell{color:var(--text-primary)}.jpwt-table th.jpwt-prod-head{position:sticky;top:0;z-index:3;background:var(--bg-tertiary);text-align:center;font-weight:700;font-size:12px;color:var(--text-primary);letter-spacing:0;text-transform:none;padding:0 8px;height:32px;line-height:1.1;vertical-align:middle;box-sizing:border-box;border-bottom:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jpwt-table th.jpwt-sub-head{position:sticky;top:32px;z-index:3;background:var(--bg-tertiary);font-weight:600;font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;padding:0 8px;height:24px;line-height:1.1;vertical-align:middle;box-sizing:border-box;border-top:1px solid var(--border);text-align:right}.jpwt-table th.jp-apps.jpwt-sub-head{text-align:center}.jpwt-prod-start{border-left:1px solid var(--border)}.jpwt-table thead tr:first-child th.jpwt-prod-head+th.jpwt-prod-head{border-left:1px solid var(--border)}.jpwt-num{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";padding-right:12px}.jpwt-empty{color:var(--text-muted)}.jpwt-total-head,.jpwt-total-sub,.jpwt-total-cell{border-left:2px solid var(--border);background:#3b82f60f}.jpwt-total-cell{font-weight:700}.jpwt-ytd-row td{position:sticky;bottom:0;z-index:2;background:var(--bg-tertiary);font-weight:700;border-top:2px solid var(--border)}.jpwt-ytd-cell{font-variant-numeric:tabular-nums}.jpwt-grand{font-weight:800;background:#3b82f61a}.jpwt-table .jp-apps{text-align:center;width:56px;padding-left:4px;padding-right:4px}@media(max-width:900px){.jpwt-table{font-size:11px}.jpwt-table th,.jpwt-table td{padding:5px 7px}.jpwt-wk-col{min-width:44px;width:44px}}.jumbo-recon-source{max-width:190px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jumbo-recon-positive{color:var(--green)!important;font-weight:800}.jumbo-recon-negative{color:var(--red)!important;font-weight:800}.jumbo-recon-flat{color:var(--text-muted)!important;font-weight:700}.pl-ah-split-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;flex-wrap:wrap}.pl-ah-split-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.assn-table-scroll{width:100%;max-width:100%;min-width:0;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary)}.assn-table-scroll .prod-week-table th{position:sticky;top:0;z-index:2}.assn-table-scroll .prod-week-table tfoot td{position:sticky;bottom:0;z-index:2;background:var(--bg-tertiary);border-top:2px solid var(--border);font-weight:600}.pl-profession-trend-table{display:block}.pl-profession-trend-table .prod-week-table{width:100%;max-width:none;table-layout:fixed;font-size:11px}.pl-profession-trend-table .prod-week-table th,.pl-profession-trend-table .prod-week-table td{padding:5px 7px}.pl-profession-trend-table .prod-week-table th{white-space:normal;line-height:1.15;vertical-align:bottom}.pl-profession-trend-table .prod-week-table td{white-space:nowrap}.planner-entry{display:flex;flex-direction:column;gap:16px}.planner-intro{color:var(--text-secondary);font-size:14px;margin:0}.planner-entry-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.planner-entry-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:24px 16px;cursor:pointer;text-align:center;transition:all .15s}.planner-entry-card:hover{border-color:var(--accent);background:var(--bg-hover);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.planner-entry-icon{width:40px;height:40px;margin:0 auto 12px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.planner-entry-label{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.planner-entry-desc{font-size:12px;color:var(--text-muted);line-height:1.4}.planner-workspace{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}.planner-toolbar{display:flex;align-items:center;justify-content:space-between}.planner-actions{display:flex;align-items:center;gap:8px}.planner-count{font-size:12px;color:var(--text-muted)}.planner-filter-bar{display:flex;align-items:center;gap:12px;overflow-x:auto}.planner-filter-bar .preset-pill{flex-wrap:wrap;display:inline-flex}.planner-filter-count{font-size:11px;color:var(--text-muted);white-space:nowrap}.planner-panels{display:flex;flex:1;gap:0;min-height:0;border:1px solid var(--border);border-radius:8px;overflow:hidden}.planner-library{width:240px;flex-shrink:0;border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--bg-secondary)}.planner-library-header{padding:10px 12px;font-size:13px;font-weight:600;border-bottom:1px solid var(--border)}.planner-library-list{flex:1;overflow-y:auto;padding:4px}.planner-library-item{padding:8px 10px;border-left:3px solid var(--border);border-radius:4px;margin-bottom:4px;cursor:pointer;transition:background .1s}.planner-library-item:hover{background:var(--bg-hover)}.planner-lib-name{font-size:12px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-lib-meta{font-size:10px;color:var(--text-muted);margin-top:2px}.planner-lib-empty{padding:20px;text-align:center;color:var(--text-muted);font-size:12px;font-style:italic}.planner-calendar{flex:1;overflow:auto}.planner-properties{width:280px;flex-shrink:0;border-left:1px solid var(--border);display:flex;flex-direction:column;background:var(--bg-secondary)}.planner-props-header{padding:10px 12px;font-size:13px;font-weight:600;border-bottom:1px solid var(--border)}.planner-props-body{padding:12px;font-size:12px;color:var(--text-primary);overflow-y:auto;flex:1}.planner-props-empty{color:var(--text-muted)}.planner-prop-row{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.planner-prop-row label{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.planner-prop-input{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:4px 8px;border-radius:4px;font-size:12px}.planner-prop-moved{font-size:11px;color:var(--amber);font-weight:500;margin-top:8px;padding:6px 8px;background:#f59e0b1a;border-radius:4px}.planner-library-header{padding:8px 10px;font-size:13px;font-weight:600;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:8px}.planner-lib-search{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);border-radius:4px;padding:3px 6px;font-size:11px;width:100px}.planner-lib-group{margin-bottom:4px}.planner-lib-group-label{font-size:10px;font-weight:600;color:var(--text-muted);padding:6px 10px 2px;text-transform:uppercase;letter-spacing:.3px}.planner-library-item.selected{background:var(--bg-hover);border-left-width:4px}.planner-library-item.plan-moved{opacity:.85}.planner-library-item.plan-moved .planner-lib-name:after{content:" (moved)";color:var(--amber);font-size:10px}.planner-library-item[draggable=true]{cursor:grab}.planner-library-item[draggable=true]:active{cursor:grabbing}.planner-lib-name-row{display:flex;align-items:center;gap:4px}.planner-lib-name-row .planner-lib-name{flex:1;min-width:0}.planner-lib-dupe-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:12px;padding:0 2px;opacity:0;transition:opacity .15s;line-height:1}.planner-library-item:hover .planner-lib-dupe-btn{opacity:1}.planner-lib-dupe-btn:hover{color:var(--accent)}.planner-add-form{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--bg-tertiary)}.planner-add-form .planner-prop-input{width:100%;font-size:11px;padding:4px 6px}.planner-compare{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:12px 16px;max-height:200px;overflow-y:auto}.planner-compare-empty{font-size:12px;color:var(--text-muted);font-style:italic}.planner-compare-list{display:flex;flex-direction:column;gap:4px}.planner-compare-row{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:4px;font-size:12px}.planner-diff-badge{font-size:10px;font-weight:600;padding:1px 6px;border-radius:8px;text-transform:uppercase}.planner-diff-added .planner-diff-badge{background:#22c55e26;color:var(--green)}.planner-diff-moved .planner-diff-badge{background:#f59e0b26;color:var(--amber)}.planner-diff-removed .planner-diff-badge{background:#ef444426;color:var(--red)}.planner-diff-name{font-weight:500;color:var(--text-primary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-diff-detail{color:var(--text-muted);font-size:11px;white-space:nowrap}.planner-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--green);color:#fff;padding:8px 20px;border-radius:8px;font-size:13px;font-weight:500;z-index:3500;animation:fadeIn .15s}.wizard-shell{display:flex;flex-direction:column;gap:0;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;overflow:hidden}.wizard-header{padding:16px 24px 12px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.wizard-title{font-size:16px;font-weight:600;color:var(--text-primary)}.wizard-cancel{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:12px}.wizard-cancel:hover{color:var(--red)}.wizard-steps{display:flex;align-items:center;gap:0;padding:12px 24px;border-bottom:1px solid var(--border);background:var(--bg-tertiary)}.wizard-step-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);white-space:nowrap}.wizard-step-item.active{color:var(--accent);font-weight:600}.wizard-step-item.done{color:var(--green)}.wizard-step-num{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;border:2px solid var(--border);color:var(--text-muted);flex-shrink:0}.wizard-step-item.active .wizard-step-num{border-color:var(--accent);color:var(--accent);background:#3ba7c91a}.wizard-step-item.done .wizard-step-num{border-color:var(--green);color:#fff;background:var(--green)}.wizard-step-line{width:24px;height:2px;background:var(--border);margin:0 4px;flex-shrink:0}.wizard-step-line.done{background:var(--green)}.wizard-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.wizard-body h3{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.wizard-body p{font-size:12px;color:var(--text-secondary);margin:0}.wizard-field{display:flex;flex-direction:column;gap:4px}.wizard-field label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.wizard-field input,.wizard-field select{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:8px 10px;border-radius:6px;font-size:13px}.wizard-field input:focus,.wizard-field select:focus{outline:none;border-color:var(--accent)}.wizard-pills{display:flex;gap:6px;flex-wrap:wrap}.wizard-pill{padding:6px 14px;border-radius:16px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:500;transition:all .15s}.wizard-pill.active{border-color:var(--accent);background:#3ba7c91f;color:var(--accent)}.wizard-footer{padding:12px 24px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--bg-secondary)}.wizard-footer-right{display:flex;gap:8px;align-items:center}.wizard-btn{padding:8px 20px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);transition:all .15s}.wizard-btn:hover{background:var(--bg-hover)}.wizard-btn:disabled{opacity:.4;cursor:not-allowed}.wizard-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.wizard-btn-primary:hover{background:var(--accent-hover)}.wizard-btn-skip{background:none;border:none;color:var(--text-muted);font-size:12px;cursor:pointer}.wizard-btn-skip:hover{color:var(--text-secondary)}.wizard-channel-grid{display:flex;flex-direction:column;gap:8px}.wizard-channel-row{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-tertiary);border-radius:6px;border:1px solid var(--border);transition:border-color .15s}.wizard-channel-row.active{border-color:var(--accent);background:#3ba7c90a}.wizard-channel-label{width:90px;font-size:13px;font-weight:500;color:var(--text-primary);flex-shrink:0}.wizard-channel-row select{flex:1;min-width:120px}.wizard-stepper{display:flex;align-items:center;gap:6px}.wizard-stepper button{width:26px;height:26px;border-radius:4px;background:var(--bg-hover);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;font-size:15px;display:flex;align-items:center;justify-content:center}.wizard-stepper button:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.wizard-stepper-val{width:28px;text-align:center;font-size:14px;font-weight:600;color:var(--text-primary)}.wizard-tactic-list{display:flex;flex-direction:column;gap:6px}.wizard-tactic-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-tertiary);border-radius:6px;border-left:3px solid var(--border)}.wizard-tactic-row input,.wizard-tactic-row select{background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);padding:5px 8px;border-radius:4px;font-size:12px}.wizard-tactic-row input:focus,.wizard-tactic-row select:focus{outline:none;border-color:var(--accent)}.wizard-channel-chip{font-size:10px;padding:2px 8px;border-radius:10px;font-weight:600;color:#fff;white-space:nowrap;flex-shrink:0}.wizard-budget-grid{display:flex;flex-direction:column;gap:8px}.wizard-monthly-pcts{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:8px}.wizard-month-pct{display:flex;flex-direction:column;gap:2px;align-items:center}.wizard-month-pct label{font-size:10px;color:var(--text-muted)}.wizard-month-pct input{width:52px;text-align:center;padding:4px;font-size:12px;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);border-radius:4px}.wizard-pct-bar{display:flex;align-items:center;gap:8px;margin-top:4px}.wizard-pct-sum{font-size:12px;font-weight:600}.wizard-pct-sum.ok{color:var(--green)}.wizard-pct-sum.err{color:var(--red)}.wizard-preview-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:8px}.wizard-preview-table th{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted);padding:6px 8px;border-bottom:1px solid var(--border);text-align:left}.wizard-preview-table td{padding:5px 8px;border-bottom:1px solid var(--border);color:var(--text-primary)}.wizard-preview-table tr:last-child td{border-bottom:none}.wizard-total-badge{font-size:12px;color:var(--text-secondary)}.wizard-total-badge strong{color:var(--accent)}.pcal{display:flex;flex-direction:column;height:100%}.pcal-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border)}.pcal-month{font-size:14px;font-weight:600;color:var(--text-primary)}.pcal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));flex:1}.pcal-dow{padding:6px 4px;text-align:center;font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;border-bottom:1px solid var(--border)}.pcal-cell{min-height:80px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);padding:2px;display:flex;flex-direction:column}.pcal-cell:nth-child(7n){border-right:none}.pcal-empty{background:var(--bg-tertiary);opacity:.4}.pcal-day-num{font-size:11px;font-weight:500;color:var(--text-secondary);padding:2px 4px}.pcal-chips{display:flex;flex-direction:column;gap:1px;flex:1;overflow:hidden}.pcal-chip{font-size:10px;padding:2px 4px;border-left:3px solid var(--accent);border-radius:2px;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .1s}.pcal-chip:hover{background:var(--bg-hover)}.pcal-chip-selected{background:var(--bg-hover);box-shadow:0 0 0 1px var(--accent)}.pcal-chip-moved{background:#f59e0b1a}.pcal-chip-batch{border-left-width:4px;font-weight:600;background:var(--bg-secondary);border-style:solid}.pcal-more{font-size:9px;color:var(--text-muted);padding:1px 4px}.pcal-chip[draggable=true]{cursor:grab}.pcal-chip[draggable=true]:active{cursor:grabbing;opacity:.6}.pcal-cell-dragover{background:#3ba7c91f;outline:2px dashed var(--accent);outline-offset:-2px}.pcal-year-strip{display:flex;align-items:flex-end;gap:8px;padding:10px 12px 6px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.pcal-year-label{font-size:11px;font-weight:700;color:var(--text-muted);writing-mode:vertical-lr;text-orientation:mixed;transform:rotate(180deg);letter-spacing:1px}.pcal-year-months{display:grid;grid-template-columns:repeat(12,1fr);gap:3px;flex:1}.pcal-year-month{display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;padding:2px 0 4px;border-radius:4px;transition:background .15s}.pcal-year-month:hover{background:var(--bg-hover)}.pcal-year-month-active{background:var(--bg-tertiary);box-shadow:inset 0 -2px 0 var(--accent)}.pcal-year-bar{width:100%;max-width:32px;display:flex;flex-direction:column;border-radius:2px;overflow:hidden;min-height:0}.pcal-year-mo-label{font-size:9px;font-weight:600;color:var(--text-muted);text-transform:uppercase}.pcal-year-month-active .pcal-year-mo-label{color:var(--accent)}.pcal-year-count{font-size:9px;font-weight:700;color:var(--text-secondary);line-height:1}.assn-picker{border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--bg-primary)}.assn-picker-toolbar{display:flex;gap:4px;padding:6px 8px;border-bottom:1px solid var(--border);background:var(--bg-secondary);align-items:center}.assn-picker-search{flex:1;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);padding:4px 8px;border-radius:4px;font-size:12px;outline:none}.assn-picker-search:focus{border-color:var(--accent)}.assn-picker-list{max-height:220px;overflow-y:auto}.assn-picker-item{display:flex;align-items:center;gap:6px;padding:4px 10px;cursor:pointer;font-size:12px;color:var(--text-secondary);user-select:none;transition:background .08s}.assn-picker-item:hover{background:var(--bg-hover)}.assn-picker-item.selected{background:#3ba7c914;color:var(--text-primary)}.assn-picker-check{font-size:13px;flex-shrink:0;width:16px;text-align:center}.assn-picker-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assn-picker-empty{padding:12px;font-size:11px;color:var(--text-muted);text-align:center}.assn-picker-footer{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;border-top:1px solid var(--border);font-size:11px;color:var(--text-muted);background:var(--bg-secondary)}.wizard-assn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:4px;overflow:hidden;max-height:200px;overflow-y:auto}.wizard-assn-grid-item{display:flex;align-items:center;gap:6px;padding:3px 8px;font-size:11px;color:var(--text-secondary);background:var(--bg-primary);cursor:pointer;user-select:none;transition:background .08s}.wizard-assn-grid-item:hover{background:var(--bg-hover)}.wizard-assn-grid-item.selected{background:#3ba7c914;color:var(--text-primary)}.wizard-assn-grid-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-loader-shell{display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;overflow:hidden;flex:1}.plan-loader-body{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.plan-loader-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.plan-loader-group-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:12px;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;gap:5px}.plan-loader-group-card:hover{border-color:var(--accent);background:var(--bg-hover)}.plan-loader-group-card.selected{border-color:var(--accent);background:#3ba7c914;box-shadow:0 0 0 1px var(--accent)}.plan-loader-group-name{font-size:13px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.plan-loader-group-stat{font-size:11px;color:var(--text-muted)}.plan-loader-group-channels{display:flex;gap:3px;flex-wrap:wrap}.plan-loader-tab-bar{display:flex;gap:0;border-bottom:1px solid var(--border);overflow-x:auto;flex-shrink:0}.plan-loader-tab{padding:8px 16px;font-size:12px;font-weight:500;color:var(--text-muted);cursor:pointer;background:none;border:none;border-bottom:2px solid transparent;transition:all .15s;white-space:nowrap}.plan-loader-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.plan-loader-tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.plan-loader-footer{padding:12px 24px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--bg-secondary);flex-shrink:0}.activity-section{display:flex;flex-direction:column;gap:12px;min-height:0}.activity-section .data-grid-wrap{min-height:50vh;max-height:calc(100vh - 200px)}.activity-toolbar-top{display:flex;flex-direction:column;gap:12px}.filter-toggle-btn{align-self:flex-start;font-size:11px!important;padding:4px 10px!important}.toolbar-divider{width:1px;height:20px;background:var(--border);flex-shrink:0}.app{height:100vh;display:flex;flex-direction:column;overflow:hidden}.app-header{background:var(--bg-secondary);border-bottom:1px solid var(--border);padding:12px 24px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;z-index:100}.app-header h1{font-size:18px;font-weight:600;letter-spacing:-.3px}.app-header h1 span{color:var(--accent)}.seed-date{font-size:11px;color:var(--text-muted);margin-left:12px;font-weight:400}.header-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.header-dropdown{position:relative}.header-dropdown-btn{cursor:pointer}.header-dropdown-btn:after{content:" ▾";font-size:10px}.header-dropdown-menu{display:none;position:absolute;right:0;top:100%;margin-top:4px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #00000040;min-width:160px;z-index:2100;padding:4px}.header-dropdown:hover .header-dropdown-menu,.header-dropdown:focus-within .header-dropdown-menu{display:block}.header-dropdown-menu .btn{width:100%;justify-content:flex-start;border:none;border-radius:4px}.header-dropdown-menu .btn:hover{background:var(--bg-hover)}.app-body{flex:1;padding:20px 24px;display:flex;flex-direction:column;gap:16px;min-height:0;min-width:0;overflow-y:auto}.btn{padding:7px 14px;border-radius:6px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-danger{background:var(--red);border-color:var(--red);color:#fff}.btn-danger:hover{opacity:.85}.btn-sm{padding:4px 10px;font-size:12px}.btn-success{background:var(--green);border-color:var(--green);color:#fff}.btn-success:hover{opacity:.85}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.summary-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px}.summary-card .label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:4px}.summary-card .value{font-size:24px;font-weight:700}.summary-card .sub{font-size:12px;color:var(--text-secondary);margin-top:2px}.monthly-tap-card{grid-column:span 2}.monthly-tap-chart{display:flex;gap:2px;align-items:flex-end;height:80px;margin-top:8px}.monthly-tap-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.monthly-tap-bar-wrap{width:100%;height:56px;display:flex;align-items:flex-end;justify-content:center}.monthly-tap-bar{width:80%;max-width:28px;background:var(--accent);border-radius:3px 3px 0 0;min-height:2px;transition:height .3s ease}.monthly-tap-label{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.monthly-tap-val{font-size:8px;color:var(--text-secondary);font-weight:600;height:10px}.filter-container{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:10px 14px;display:flex;flex-direction:column;gap:8px}.fbar-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.fbar-row-secondary{padding-top:8px;border-top:1px solid var(--border)}.filter-container input[type=text]{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:5px 8px;border-radius:6px;font-size:13px;min-width:180px}.filter-container input:focus{outline:none;border-color:var(--accent)}.filter-spacer{flex:1}.year-multi-wrap{position:relative}.year-multi-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:5px 8px;border-radius:6px;font-size:13px;min-width:100px;cursor:pointer;text-align:left;white-space:nowrap}.year-multi-btn:focus{outline:none;border-color:var(--accent)}.year-multi-btn--active{border-left:3px solid var(--accent);background:#3ba7c914}.year-multi-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;box-shadow:0 8px 24px #0006;z-index:60;min-width:130px;padding:4px 0;max-height:320px;overflow-y:auto}.year-multi-option{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:13px;color:var(--text-primary);cursor:pointer}.year-multi-option:hover{background:var(--bg-hover)}.year-multi-option input[type=checkbox]{accent-color:var(--accent);pointer-events:none}.filter-more-btn{font-size:12px;padding:5px 10px;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;cursor:pointer;white-space:nowrap}.filter-more-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.filter-chips{display:flex;flex-wrap:wrap;gap:4px}.filter-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:12px;padding:2px 8px}.filter-chip button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:10px;padding:0 2px}.filter-chip button:hover{color:var(--red)}.filter-presets{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:8px;border-top:1px solid var(--border)}.preset-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.preset-pill{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.preset-btn{padding:5px 12px;font-size:12px;font-weight:500;background:var(--bg-tertiary);color:var(--text-secondary);border:none;cursor:pointer;transition:all .15s;border-right:1px solid var(--border)}.preset-btn:last-child{border-right:none}.preset-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.preset-btn.active{background:var(--accent);color:#fff}.preset-clear{font-size:11px;color:var(--text-muted);background:none;border:none;cursor:pointer;text-decoration:underline}.preset-clear:hover{color:var(--text-primary)}.grid-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.grid-toolbar .left,.grid-toolbar .right{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.record-count{font-size:13px;color:var(--text-secondary)}.dupe-toggle{display:flex;align-items:center;gap:5px;cursor:pointer;font-size:12px}.dupe-toggle input[type=checkbox]{accent-color:var(--red)}.dupe-badge{background:#ef444426;color:var(--red);padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.carrier-split-badge{background:#f59e0b26;color:var(--amber);padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.btn-dedupe{background:#ef44441f;color:var(--red);border-color:#ef44444d;font-weight:600}.btn-dedupe:hover{background:#ef444433}table.data-grid tr.dupe-row td{border-left:3px solid var(--red)}table.data-grid tr.dupe-row td:first-child{border-left:none}table.data-grid tr.carrier-split-row td{border-left:3px solid var(--amber)}table.data-grid tr.carrier-split-row td:first-child{border-left:none}table.data-grid tr.carrier-split-band-0 td{background:#f59e0b0f}table.data-grid tr.carrier-split-band-1 td{background:#3ba7c90f}table.data-grid tr.dupe-row.carrier-split-row td{border-left-color:var(--red)}.col-picker-wrap{position:relative}.col-picker-panel{position:absolute;top:100%;right:0;margin-top:6px;width:280px;max-height:460px;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 32px #0006;z-index:50;display:flex;flex-direction:column;animation:fadeIn .12s}.col-picker-body{flex:1;overflow-y:auto;padding:8px 0}.col-picker-group{padding:4px 0}.col-picker-group-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:6px 14px 2px;font-weight:600}.col-picker-item{display:flex;align-items:center;gap:8px;padding:4px 14px;cursor:pointer;font-size:13px;color:var(--text-primary)}.col-picker-item:hover{background:var(--bg-hover)}.col-picker-item input{accent-color:var(--accent)}.col-picker-footer{border-top:1px solid var(--border);padding:8px 14px;display:flex;gap:12px}.col-picker-link{background:none;border:none;color:var(--accent);font-size:12px;cursor:pointer;padding:0}.col-picker-link:hover{text-decoration:underline}.grid-pagination{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 0}.grid-pagination-info{font-size:12px;color:var(--text-secondary);min-width:160px;text-align:center}.data-grid-wrap{overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary);outline:none;min-width:0;min-height:0;flex:1}.data-grid-wrap:focus{border-color:var(--accent)}table.data-grid{min-width:100%;width:max-content;border-collapse:collapse;font-size:13px}table.data-grid thead{position:sticky;top:0;z-index:2}table.data-grid th{background:var(--bg-tertiary);padding:10px 12px;text-align:left;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border);cursor:pointer;user-select:none;white-space:nowrap}table.data-grid th:hover{color:var(--text-primary)}table.data-grid th[draggable]{cursor:grab}table.data-grid th[draggable]:active{cursor:grabbing}table.data-grid th.th-drag-over{box-shadow:inset 3px 0 0 var(--accent);background:#3ba7c91f}table.data-grid th .sort-arrow{margin-left:4px;font-size:10px}table.data-grid td{padding:9px 12px;border-bottom:1px solid var(--border);white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}table.data-grid tr:hover td{background:var(--bg-hover)}table.data-grid tr.selected td{background:#3ba7c91a}table.data-grid input[type=checkbox]{accent-color:var(--accent)}.filter-row th{padding:4px 6px!important;background:var(--bg-secondary)!important;border-bottom:2px solid var(--border)!important}.filter-cell{vertical-align:middle}.col-filter{width:100%;box-sizing:border-box;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);border-radius:3px;font-size:11px;font-family:inherit;padding:3px 5px;outline:none}.col-filter:focus{border-color:var(--accent);box-shadow:0 0 0 1px #3ba7c933}.col-filter-enum{padding:2px 3px;cursor:pointer}.col-filter::placeholder{color:var(--text-muted);font-size:10px}.cell-editable{cursor:cell;position:relative}.cell-editable:hover{box-shadow:inset 0 0 0 1px #3ba7c959;background:#3ba7c90a}.cell-editable:hover:after{content:"✎";position:absolute;top:2px;right:3px;font-size:10px;color:var(--accent);opacity:.6;pointer-events:none}.inline-edit-input{width:100%;background:var(--bg-primary);border:1px solid var(--accent);color:var(--text-primary);padding:2px 6px;border-radius:3px;font-size:13px;font-family:inherit;outline:none;box-shadow:0 0 0 2px #ee682333}.inline-edit-input:focus{border-color:var(--accent)}select.inline-edit-input{padding:2px 4px}.cell-flash{animation:cellFlash .6s ease-out}@keyframes cellFlash{0%{background:#3ba7c940}to{background:transparent}}.ctap-green{color:var(--green);font-weight:600}.ctap-amber{color:var(--amber);font-weight:600}.ctap-red{color:var(--red);font-weight:600}.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.badge-draft{background:#6b728033;color:var(--text-muted)}.badge-pending{background:#f59e0b26;color:var(--amber)}.badge-approved{background:#22c55e26;color:var(--green)}.badge-rejected{background:#ef444426;color:var(--red)}.badge-hold{background:#ee682326;color:var(--purple)}.detail-overlay{position:fixed;inset:0;background:#00000080;z-index:3000;display:flex;justify-content:flex-end}.detail-panel{width:720px;max-width:90vw;background:var(--bg-primary);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto;animation:slideIn .2s ease-out}.detail-panel.cal-day-drawer{width:420px;margin-top:104px;max-height:calc(100vh - 104px)}@media(max-width:768px){.detail-panel.cal-day-drawer{width:100vw;max-width:100vw;margin-top:0;max-height:100vh}}@keyframes slideIn{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}.detail-header{padding:16px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.detail-header h2{font-size:16px;font-weight:600}.close-btn{background:none;border:none;color:var(--text-secondary);font-size:20px;cursor:pointer;padding:4px 8px;border-radius:4px}.close-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.detail-tabs{display:flex;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.detail-tabs button{padding:10px 16px;background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:13px;font-weight:500;border-bottom:2px solid transparent}.detail-tabs button:hover{color:var(--text-primary)}.detail-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.detail-body{flex:1;padding:20px;overflow-y:auto}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-group{display:flex;flex-direction:column;gap:2px}.field-group.full{grid-column:1 / -1}.field-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.field-value{font-size:14px;color:var(--text-primary)}.perf-chain{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin:16px 0}.perf-step{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;padding:8px 12px;text-align:center;min-width:80px}.perf-step .perf-label{font-size:10px;color:var(--text-muted);text-transform:uppercase}.perf-step .perf-value{font-size:16px;font-weight:600}.perf-arrow{color:var(--text-muted);font-size:18px}.modal-overlay{position:fixed;inset:0;background:#0009;z-index:3000;display:flex;align-items:center;justify-content:center}.modal{background:var(--bg-primary);border:1px solid var(--border);border-radius:10px;width:800px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;animation:fadeIn .15s}@keyframes fadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.modal-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.modal-header h2{font-size:16px}.modal-body{flex:1;overflow-y:auto;padding:20px}.modal-footer{padding:12px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-group{display:flex;flex-direction:column;gap:4px}.form-group.full{grid-column:1 / -1}.form-group label{font-size:12px;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:8px 10px;border-radius:6px}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent)}.form-group .computed{background:var(--bg-secondary);color:var(--accent);font-weight:600}.summary-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary)}table.summary-table{width:100%;border-collapse:collapse;font-size:13px}table.summary-table th{background:var(--bg-tertiary);padding:10px 14px;text-align:left;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border)}table.summary-table td{padding:10px 14px;border-bottom:1px solid var(--border)}table.summary-table tr:hover td{background:var(--bg-hover)}.summary-toolbar{padding:10px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.summary-measure-picks{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.summary-measure-label{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary);cursor:pointer;white-space:nowrap}.summary-measure-label input[type=checkbox]{accent-color:var(--accent)}.yoy-toggle{display:flex;align-items:center;gap:12px}.yoy-toggle label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-primary);cursor:pointer}.yoy-toggle input[type=checkbox]{accent-color:var(--accent)}.yoy-hint{font-size:11px;color:var(--amber)}.summary-group-header th{text-align:center;padding:8px 14px}.year-group{border-bottom:2px solid var(--border)}.year-group-cur{background:#3ba7c914}.year-group-delta{background:#ee682314}.delta-good{color:var(--green)}.delta-bad{color:var(--red)}.delta-pct{font-size:11px;opacity:.7}.chart-wrap{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px;flex:1;min-height:0;display:flex;flex-direction:column}.chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-shrink:0}.chart-controls{display:flex;align-items:center;gap:8px}.chart-control-label{font-size:12px;color:var(--text-secondary);font-weight:500}.chart-controls select{background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);border-radius:4px;padding:4px 8px;font-size:12px}.chart-total{font-size:13px;color:var(--text-secondary);font-weight:600}.chart-header-right{display:flex;align-items:center;gap:10px}.chart-export-area{flex:1;display:flex;flex-direction:column;background:var(--bg-secondary);padding:12px 4px 4px;min-height:0;border-radius:6px}.chart-title{text-align:center;font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.chart-body{flex:1;overflow-x:auto;overflow-y:hidden;display:flex;align-items:stretch}.chart-svg{width:100%;height:100%;min-height:300px}.chart-legend{display:flex;flex-wrap:wrap;gap:12px;padding:0 0 10px;flex-shrink:0}.chart-legend-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-secondary)}.chart-legend-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.chart-empty{text-align:center;padding:40px;color:var(--text-muted);width:100%}.calendar-wrap{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.calendar-month-label{font-size:16px;font-weight:600;color:var(--text-primary)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:6px;overflow:hidden}.calendar-weekday{background:var(--bg-tertiary);padding:8px;text-align:center;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.calendar-day{background:var(--bg-primary);min-height:110px;padding:4px;display:flex;flex-direction:column}.calendar-day.outside{background:var(--bg-secondary);opacity:.4}.calendar-day.cal-drag-over{background:#3b82f626;outline:2px dashed var(--accent);outline-offset:-2px}.calendar-day-header{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 4px}.calendar-day-num{font-size:12px;font-weight:600;color:var(--text-secondary)}.calendar-day-count{font-size:10px;background:var(--accent);color:#fff;border-radius:8px;padding:0 5px;min-width:16px;text-align:center;line-height:16px}.calendar-day-body{flex:1;display:flex;flex-direction:column;gap:2px;overflow:hidden}.calendar-chip{padding:3px 6px;font-size:11px;line-height:1.3;border-left:3px solid var(--text-muted);border-radius:3px;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .1s}.calendar-chip:hover{background:var(--bg-hover)}.cal-chip-wrap{position:relative}.cal-chip-tooltip{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0000004d;padding:10px 12px;min-width:220px;pointer-events:none}.cal-chip-tooltip-name{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-chip-tooltip-row{display:flex;justify-content:space-between;gap:12px;font-size:11px;padding:2px 0}.cal-chip-tooltip-row span:first-child{color:var(--text-muted)}.cal-chip-tooltip-row span:last-child{color:var(--text-primary);font-weight:500;text-align:right}.calendar-overflow{font-size:10px;color:var(--text-muted);padding:2px 6px;cursor:default}.export-section{display:flex;flex-direction:column;gap:12px}.export-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:16px;display:flex;align-items:center;justify-content:space-between}.export-card h4{font-size:14px;margin-bottom:2px}.export-card p{font-size:12px;color:var(--text-secondary)}.bluesheet-table{width:100%;border-collapse:collapse;font-size:12px}.bluesheet-table th,.bluesheet-table td{padding:6px 8px;border:1px solid var(--border);text-align:right}.bluesheet-table th{background:var(--bg-tertiary);text-align:center;font-size:11px}.bluesheet-table td:first-child,.bluesheet-table th:first-child{text-align:left}.bulk-edit-modal{width:640px}.btn-bulk-edit{background:var(--purple)!important;border-color:var(--purple)!important;color:#fff!important}.btn-bulk-edit:hover{opacity:.85}.bulk-edit-numeric-row{display:flex;gap:8px}.bulk-edit-numeric-row select{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:8px 10px;border-radius:6px;min-width:150px}.bulk-edit-numeric-row input{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:8px 10px;border-radius:6px;flex:1}.bulk-edit-numeric-row select:focus,.bulk-edit-numeric-row input:focus{outline:none;border-color:var(--accent)}.bulk-edit-preview{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:14px}.bulk-edit-preview h4{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin-bottom:10px}.bulk-edit-preview table{width:100%;border-collapse:collapse;font-size:13px}.bulk-edit-preview th{text-align:left;padding:6px 8px;font-weight:600;color:var(--text-secondary);font-size:11px;text-transform:uppercase;border-bottom:1px solid var(--border)}.bulk-edit-preview td{padding:6px 8px;border-bottom:1px solid var(--border)}.bulk-edit-preview .preview-before{color:var(--text-muted)}.bulk-edit-preview .preview-arrow{color:var(--text-muted);text-align:center;width:30px}.bulk-edit-preview .preview-after{color:var(--accent);font-weight:600}.modal-footer button:disabled{opacity:.4;cursor:not-allowed}.import-modal{width:900px;max-width:95vw}.drop-zone{border:2px dashed var(--border);border-radius:10px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .2s;background:var(--bg-secondary)}.drop-zone:hover,.drop-zone-active{border-color:var(--accent);background:#3ba7c90d}.drop-icon{font-size:36px;color:var(--accent);margin-bottom:8px;font-weight:300;line-height:1}.drop-text{font-size:15px;font-weight:500;color:var(--text-primary);margin-bottom:4px}.drop-sub{font-size:13px;color:var(--text-secondary)}.drop-formats{font-size:11px;color:var(--text-muted);margin-top:8px}.import-error{margin-top:12px;padding:10px 14px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:var(--red);font-size:13px}.import-hint{margin-top:16px;font-size:12px;color:var(--text-muted);line-height:1.6}.import-steps{display:flex;align-items:center;gap:4px;padding:12px 24px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.import-step{display:flex;align-items:center;gap:8px;padding:6px 14px;border-radius:20px;font-size:12px;color:var(--text-muted)}.import-step-num{width:22px;height:22px;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:11px}.import-step-active{color:var(--accent);font-weight:600}.import-step-active .import-step-num{background:var(--accent);color:#fff;border-color:var(--accent)}.import-step-done{color:var(--green)}.import-step-done .import-step-num{background:var(--green);color:#fff;border-color:var(--green)}.import-step+.import-step:before{content:"";display:block;width:24px;height:1px;background:var(--border);margin-right:4px}.import-preview{display:flex;flex-direction:column;gap:16px}.import-file-name{font-size:13px;color:var(--text-secondary);padding:8px 12px;background:var(--bg-tertiary);border-radius:6px}.import-mapping-summary{font-size:12px;color:var(--text-secondary);padding:6px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px}.import-fastpath{color:var(--green);border-color:#22c55e4d;background:#22c55e0f}.import-stats{display:flex;gap:12px;flex-wrap:wrap}.import-stat{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:12px 16px;min-width:100px;text-align:center}.import-stat-value{font-size:22px;font-weight:700;color:var(--text-primary)}.import-stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted);margin-top:2px}.import-section h4{font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:8px}.import-tags{display:flex;gap:6px;flex-wrap:wrap}.import-tag{background:var(--bg-tertiary);border:1px solid var(--border);padding:4px 10px;border-radius:12px;font-size:12px;color:var(--text-primary)}.import-warnings{background:#f59e0b0f;border:1px solid rgba(245,158,11,.2);border-radius:8px;padding:12px 16px}.import-warnings h4{color:var(--amber)}.import-warnings p{font-size:13px;color:var(--text-secondary);margin:0}.import-dupes{background:#3ba7c90f;border:1px solid rgba(59,167,201,.25);border-radius:8px;padding:12px 16px}.import-dupes h4{color:var(--accent)}.import-dupes p{font-size:13px;color:var(--text-secondary);margin:0 0 4px}.import-dupe-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.import-dupe-toggle input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.import-dupe-hint{font-size:12px;color:var(--text-muted)}.import-file-breakdown{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:10px 14px}.import-file-list{display:flex;flex-direction:column;gap:6px}.import-file-entry{display:flex;align-items:center;gap:10px;font-size:13px}.import-file-entry-name{color:var(--text-primary);font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-file-entry-rows{color:var(--text-muted);font-size:12px;white-space:nowrap}.import-file-entry-badge{font-size:10px;text-transform:uppercase;letter-spacing:.3px;padding:2px 8px;border-radius:10px;background:#22c55e1a;color:var(--green);border:1px solid rgba(34,197,94,.25);white-space:nowrap}.import-file-crossdupe-note{margin-top:8px;padding-top:8px;border-top:1px solid var(--border);font-size:12px;color:var(--amber)}.import-dupe-review{background:#f59e0b0f;border:1px solid rgba(245,158,11,.2);border-radius:8px;padding:12px 16px}.import-dupe-review-header{display:flex;align-items:center;justify-content:space-between;user-select:none}.import-dupe-review-header h4{color:var(--amber);margin:0}.import-dupe-excluded{font-size:12px;color:var(--red);font-weight:600}.import-dupe-review-actions{display:flex;gap:8px;margin:10px 0 8px}.import-dupe-review-table-wrap{max-height:300px;overflow-y:auto;border:1px solid var(--border);border-radius:6px}.import-dupe-table{font-size:12px}.import-dupe-table td,.import-dupe-table th{padding:4px 8px}.import-dupe-table input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent);cursor:pointer}.dupe-row-excluded{opacity:.4;text-decoration:line-through}.dupe-group-first{border-top:2px solid var(--border)}.btn-warning{background:var(--amber);color:#000}.btn-warning:hover{background:#d97706}.import-mapping{display:flex;flex-direction:column;gap:12px}.mapping-summary{font-size:12px;color:var(--text-secondary);padding:6px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px}.mapping-table-wrap{max-height:380px;overflow-y:auto;border:1px solid var(--border);border-radius:6px}.mapping-table{width:100%;border-collapse:collapse;font-size:13px}.mapping-table thead{position:sticky;top:0;z-index:1}.mapping-table th{background:var(--bg-tertiary);padding:8px 10px;text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted);border-bottom:1px solid var(--border)}.mapping-table td{padding:6px 10px;border-bottom:1px solid var(--border)}.mapping-row:hover{background:var(--bg-secondary)}.mapping-source{font-weight:500;color:var(--text-primary);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mapping-sample{color:var(--text-muted);font-size:12px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mapping-target-select{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:4px;padding:4px 6px;font-size:12px;width:100%;max-width:280px}.mapping-confidence{display:inline-block;width:10px;height:10px;border-radius:50%}.conf-green{background:var(--green)}.conf-yellow{background:var(--amber)}.conf-empty{background:var(--bg-tertiary);border:1px solid var(--border)}.profile-select{display:flex;align-items:center;gap:10px;margin-bottom:16px;font-size:13px;color:var(--text-secondary)}.profile-select select{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:4px;padding:4px 8px;font-size:13px}.profile-save{margin-top:8px}.profile-save-form{display:flex;align-items:center;gap:8px}.profile-save-form input{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:4px;padding:5px 10px;font-size:13px;width:200px}.import-validation{display:flex;flex-direction:column;gap:16px}.validation-group{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:14px 16px}.validation-group h4{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:10px}.validation-table{width:100%;border-collapse:collapse;font-size:13px}.validation-table th{text-align:left;padding:6px 10px;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted);border-bottom:1px solid var(--border)}.validation-table td{padding:6px 10px;border-bottom:1px solid var(--border);color:var(--text-primary)}.validation-select{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:4px;padding:3px 6px;font-size:12px;max-width:260px}.import-cleanup{display:flex;flex-direction:column;gap:16px}.cleanup-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:14px 16px}.cleanup-card-warning{border-color:#f59e0b4d;background:#f59e0b0a}.cleanup-card-critical{border-color:#ef44444d;background:#ef44440a}.cleanup-card-ok{border-color:#22c55e4d;background:#22c55e0a;text-align:center;padding:24px}.cleanup-card-ok h4{color:var(--green);margin:0 0 4px}.cleanup-card-ok p{color:var(--text-muted);font-size:13px;margin:0}.cleanup-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cleanup-card-header h4{font-size:13px;font-weight:600;color:var(--text-primary);margin:0}.cleanup-count-badge{font-size:11px;text-transform:uppercase;letter-spacing:.3px;padding:2px 8px;border-radius:10px;background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border)}.cleanup-card-desc{font-size:13px;color:var(--text-secondary);margin:0 0 10px;line-height:1.5}.cleanup-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--text-primary);margin-bottom:8px}.cleanup-toggle input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.cleanup-table-wrap{max-height:240px;overflow-y:auto;border:1px solid var(--border);border-radius:6px;margin-top:8px}.cleanup-detail-cell{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cleanup-reason{font-size:11px;color:var(--amber);max-width:200px}.cleanup-row-excluded{opacity:.4;text-decoration:line-through}.cleanup-more{text-align:center;padding:8px;font-size:12px;color:var(--text-muted)}.cleanup-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.cleanup-defaults{display:flex;flex-direction:column;gap:10px}.cleanup-default-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cleanup-default-label{font-size:13px;font-weight:500;color:var(--text-primary);min-width:120px}.cleanup-default-input{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:4px;padding:5px 10px;font-size:13px;width:140px}.cleanup-default-info{font-size:12px;color:var(--text-muted);font-style:italic}.cleanup-noncritical{margin-top:10px;padding-top:8px;border-top:1px solid var(--border);font-size:12px;color:var(--text-muted)}.cleanup-samples{font-size:12px;color:var(--text-muted);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cleanup-badge{font-size:11px;padding:2px 8px;border-radius:10px;background:#22c55e1a;color:var(--green);border:1px solid rgba(34,197,94,.25)}.feedback-form{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.feedback-form-row{display:flex;align-items:center;gap:10px}.feedback-form-row select{flex:0 0 auto}.feedback-user-tag{font-size:12px;color:var(--text-muted);margin-left:auto}.feedback-textarea{width:100%;resize:vertical;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;padding:8px 10px;font-size:13px;font-family:inherit}.feedback-textarea:focus{border-color:var(--accent);outline:none}.feedback-form-actions{display:flex;align-items:center;justify-content:space-between}.feedback-hint{font-size:11px;color:var(--text-muted)}.feedback-filters{display:flex;gap:8px;margin-bottom:8px}.feedback-filters select,.feedback-search{font-size:12px;padding:4px 8px;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border);border-radius:4px}.feedback-search{flex:1}.feedback-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:10px}.feedback-count{font-size:12px;color:var(--text-muted);flex:1}.feedback-list{display:flex;flex-direction:column;gap:8px}.feedback-empty{text-align:center;padding:32px;color:var(--text-muted);font-size:13px}.feedback-entry{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:10px 14px}.feedback-entry-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.feedback-cat-badge{font-size:10px;text-transform:uppercase;letter-spacing:.3px;padding:2px 8px;border-radius:10px;color:#fff;font-weight:600;white-space:nowrap}.feedback-entry-user{font-size:12px;font-weight:600;color:var(--text-primary)}.feedback-entry-time{font-size:11px;color:var(--text-muted);margin-left:auto}.feedback-entry-text{font-size:13px;color:var(--text-secondary);line-height:1.5;white-space:pre-wrap}.loading-overlay{position:fixed;inset:0;background:#00000080;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:4000;gap:16px}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.loading-message{color:#fff;font-size:15px;font-weight:500}.drop-zone-parsing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;border:2px dashed var(--accent);border-radius:10px;background:#3ba7c90d}.drop-zone-parsing .loading-spinner{width:32px;height:32px}@keyframes spin{to{transform:rotate(360deg)}}input.no-spinner::-webkit-inner-spin-button,input.no-spinner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input.no-spinner{-moz-appearance:textfield;appearance:textfield}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--green);color:#fff;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:12px;z-index:3500;box-shadow:0 4px 24px #0000004d;animation:toastIn .25s ease-out}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(16px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast-close{background:none;border:none;color:#ffffffb3;font-size:18px;cursor:pointer;padding:0 2px}.toast-close:hover{color:#fff}.bulk-bar{background:linear-gradient(135deg,#3ba7c926,#ee68231a);border:1px solid rgba(59,167,201,.35);color:var(--text-primary);padding:10px 16px;border-radius:8px;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;flex-wrap:wrap}.bulk-count{color:var(--accent);font-weight:600;white-space:nowrap}.bulk-label{color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.bulk-divider{width:1px;height:20px;background:var(--border);flex-shrink:0}.bulk-spacer{flex:1}.bulk-deselect{background:none;border:none;color:var(--text-secondary);font-size:12px;cursor:pointer;text-decoration:underline;padding:4px 8px;white-space:nowrap}.bulk-deselect:hover{color:var(--text-primary)}.bulk-bar .btn{border-color:var(--border);background:var(--bg-tertiary);color:var(--text-primary)}.bulk-bar .btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.user-badge{padding:4px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:14px;font-size:12px;color:var(--accent);cursor:pointer;font-weight:500;transition:all .15s;user-select:none}.user-badge:hover{border-color:var(--accent);background:#3ba7c91a}.activity-log-filters{padding:12px 20px;border-bottom:1px solid var(--border);display:flex;gap:8px;flex-wrap:wrap}.activity-log-filters select,.activity-log-filters input{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:6px 10px;border-radius:6px;font-size:13px;min-width:130px}.activity-log-filters select:focus,.activity-log-filters input:focus{outline:none;border-color:var(--accent)}.activity-log-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:16px}.activity-log-count{font-size:12px;color:var(--text-muted)}.history-tab{display:flex;flex-direction:column;gap:12px}.history-entry{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:12px 16px}.history-meta{display:flex;gap:8px;align-items:center;font-size:12px;margin-bottom:6px}.history-user{color:var(--accent);font-weight:600}.history-action{background:var(--bg-tertiary);padding:1px 6px;border-radius:4px;font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.history-time{color:var(--text-muted);margin-left:auto;font-size:11px}.history-record-label{font-size:12px;color:var(--text-secondary);margin-bottom:4px;max-width:500px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-summary{font-size:13px;color:var(--text-primary)}.history-changes{margin-top:8px;display:flex;flex-direction:column;gap:4px}.history-change{display:flex;align-items:center;gap:6px;font-size:12px;padding:4px 8px;background:var(--bg-tertiary);border-radius:4px}.history-field{color:var(--text-secondary);font-weight:600;min-width:100px}.history-old{color:var(--red);text-decoration:line-through}.history-arrow{color:var(--text-muted)}.history-new{color:var(--green);font-weight:500}.batch-group{border-left:3px solid var(--purple);padding-left:12px;margin-bottom:4px}.batch-header{display:flex;gap:8px;align-items:center;font-size:12px;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;cursor:pointer;margin-bottom:8px}.batch-header:hover{background:var(--bg-hover)}.batch-toggle{color:var(--purple);font-size:10px;width:12px}.batch-summary{color:var(--purple);font-weight:600;margin-left:auto;margin-right:auto}.batch-entry{margin-left:0;margin-bottom:8px}.session-changes-panel{max-width:900px}.session-changes-toolbar{padding:10px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:16px}.deviation-badge{background:var(--amber);color:#000;font-size:11px;font-weight:700;padding:1px 8px;border-radius:10px}table.session-changes-table{width:100%;border-collapse:collapse;font-size:13px}table.session-changes-table th{background:var(--bg-tertiary);padding:8px 12px;text-align:left;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}table.session-changes-table td{padding:8px 12px;border-bottom:1px solid var(--border)}table.session-changes-table tr:hover td{background:var(--bg-hover)}.sc-campaign{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.sc-old{color:var(--text-muted)}.sc-new{font-weight:500}.sc-dev{text-align:center;font-weight:600;color:var(--text-muted)}.sc-dev-med{color:var(--amber)}.sc-dev-high{color:var(--red)}tr.dev-med{border-left:3px solid var(--amber)}tr.dev-high{border-left:3px solid var(--red)}.sc-undo{padding:2px 8px!important;font-size:11px!important}.sc-row-selected td{background:#3ba7c914!important}.sc-row-undone td{opacity:.45;text-decoration:line-through}.sc-row-undone td:last-child,.sc-row-undone td:first-child{opacity:1;text-decoration:none}.sc-selected-count{font-size:12px;color:var(--accent);font-weight:600}table.session-changes-table input[type=checkbox]{accent-color:var(--accent);cursor:pointer}.tour-overlay{position:fixed;inset:0;background:#0000008c;z-index:10000}.tour-spotlight{box-shadow:0 0 0 9999px #0000008c;border:2px solid var(--accent);pointer-events:none}.tour-tooltip{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:16px 20px;width:400px;max-width:95vw;box-shadow:0 8px 32px #0006}.tour-dots{display:flex;gap:5px}.tour-dot{width:7px;height:7px;border-radius:50%;background:var(--border);transition:background .2s}.tour-dot.active{background:var(--accent)}.production-view{display:flex;flex-direction:column;gap:16px}.production-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.production-title{font-size:16px;font-weight:600;color:var(--text-primary)}.production-controls{display:flex;align-items:center;gap:10px}.production-controls select{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:5px 8px;border-radius:6px;font-size:13px}.amba-week-badge{background:var(--purple);color:#fff;font-size:12px;font-weight:600;padding:3px 10px;border-radius:12px;white-space:nowrap}.production-subfilter{display:flex;align-items:center;gap:0;border:1px solid var(--border);border-radius:6px;overflow:hidden;width:fit-content}.production-subfilter .preset-btn{border-right:1px solid var(--border)}.production-subfilter .preset-btn:last-child{border-right:none}.production-assn-search input{border:none;border-left:1px solid var(--border);border-radius:0;padding:5px 10px;font-size:12px;background:var(--bg-tertiary);color:var(--text-primary)}.production-assn-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;box-shadow:0 8px 24px #0006;z-index:60;min-width:140px;max-height:220px;overflow-y:auto;padding:4px 0}.production-assn-option{padding:6px 12px;font-size:12px;cursor:pointer;color:var(--text-primary)}.production-assn-option:hover{background:var(--bg-hover)}.production-prompt{text-align:center;padding:60px 20px;color:var(--text-secondary);font-size:14px}.prod-data-placeholder{margin-top:8px}.prod-data-placeholder .preset-pill{flex-wrap:wrap;display:inline-flex}.prod-data-placeholder-box{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:48px 20px;text-align:center;color:var(--text-muted);font-size:15px;font-style:italic}.production-panels{display:flex;flex-direction:column;gap:16px}.production-panels-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.production-panel{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:12px}.production-panel .production-header{flex-wrap:nowrap}.production-panel .production-title{font-size:14px}.production-panel .waterfall-wrap{max-width:none;width:100%;padding:8px;border:none;background:transparent;display:block}.production-panel .waterfall-svg{display:block;width:100%;height:auto;max-height:680px;aspect-ratio:1200 / 680}.production-kpis{margin-top:0}.production-kpis-compact{grid-template-columns:repeat(4,1fr)!important;gap:6px!important}.production-kpis-compact .summary-card{padding:8px 10px!important}.production-kpis-compact .summary-card .label{font-size:10px!important}.production-kpis-compact .summary-card .value{font-size:16px!important}.kpi-green{color:#22c55e!important}.kpi-amber{color:#f59e0b!important}.kpi-red{color:#ef4444!important}.waterfall-wrap{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px;margin:0 auto;max-width:1200px;width:100%;display:block}.waterfall-svg{display:block;width:100%;height:auto;max-height:680px;aspect-ratio:1200 / 680}.exec-creative-kit{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(320px,1.4fr);gap:18px;align-items:stretch;margin:0 0 16px;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary)}.exec-creative-kit-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}.exec-creative-kit-eyebrow{margin-bottom:6px;color:var(--accent);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.exec-creative-kit h3{margin:0;color:var(--text-primary);font-size:16px}.exec-creative-kit p{max-width:420px;margin:8px 0 12px;color:var(--text-muted);font-size:12px;line-height:1.45}.exec-creative-kit-meta{display:flex;flex-wrap:wrap;gap:6px}.exec-creative-kit-meta span{padding:3px 8px;border-radius:999px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:10px;font-weight:700}.creative-kit-real{grid-template-columns:minmax(220px,.65fr) minmax(360px,1.35fr)}.creative-kit-source{margin-top:10px;color:var(--text-muted);font-size:10px;line-height:1.35;word-break:break-word}.creative-kit-carousel{min-width:0}.creative-kit-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:var(--text-secondary);font-size:12px;font-weight:700}.creative-kit-toolbar .btn{width:32px;min-width:32px;padding:4px 0;font-size:18px;line-height:1}.creative-kit-page-frame{display:grid;place-items:center;max-height:560px;overflow:auto;border:1px solid var(--border);border-radius:8px;background:#eef3f8}.creative-kit-page-frame img{display:block;width:min(100%,520px);height:auto;background:#fff;box-shadow:0 10px 26px #0f172a2e}.creative-kit-dots{display:flex;justify-content:center;gap:6px;margin-top:10px}.creative-kit-dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:var(--border);cursor:pointer}.creative-kit-dots button.active{width:20px;background:#ee6823}.exec-mail-piece-preview{min-height:220px;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#f8fafc;box-shadow:inset 0 0 0 1px #ffffff73}.exec-mail-browser-bar{display:flex;gap:6px;align-items:center;height:26px;padding:0 10px;border-bottom:1px solid #d8e0ea;background:#e7edf3}.exec-mail-browser-bar span{width:8px;height:8px;border-radius:50%;background:#9fb0c3}.exec-mail-piece{position:relative;min-height:194px;margin:14px;padding:18px;border:1px solid #d8e0ea;border-radius:6px;background:linear-gradient(115deg,rgba(238,104,35,.12) 0 28%,transparent 28%),linear-gradient(180deg,#fff,#f7fbff);color:#0f2f45}.exec-mail-piece-example{position:absolute;inset:0;display:grid;place-items:center;color:#ee682324;font-size:72px;font-weight:900;line-height:1;text-transform:uppercase;pointer-events:none;transform:rotate(-18deg)}.exec-mail-piece-stamp{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:58px;height:42px;border:2px solid #ee6823;color:#ee6823;font-size:12px;font-weight:900}.exec-mail-piece-address{display:flex;flex-direction:column;gap:3px;max-width:210px;font-size:12px;line-height:1.25}.exec-mail-piece-address strong{font-size:14px}.exec-mail-piece-offer{display:flex;flex-direction:column;gap:6px;max-width:430px;margin-top:32px}.exec-mail-piece-offer span{width:fit-content;padding:3px 8px;border-radius:999px;background:#0f5f7d;color:#fff;font-size:10px;font-weight:800;text-transform:uppercase}.exec-mail-piece-offer strong{max-width:360px;font-size:26px;line-height:1;color:#00344d}.exec-mail-piece-offer small{color:#36566a;font-size:12px}.exec-mail-piece-footer{display:flex;justify-content:space-between;gap:12px;margin-top:24px;padding-top:10px;border-top:1px solid #d8e0ea;color:#5b7283;font-size:10px;font-weight:700}@media(max-width:1200px){.exec-creative-kit,.production-panels-grid{grid-template-columns:1fr}.dash-kpis,.dash-sparkline-grid{grid-template-columns:repeat(2,1fr)}.dash-prod-grid{grid-template-columns:1fr}.planner-entry-cards{grid-template-columns:repeat(2,1fr)}.planner-properties{display:none}.planner-library{width:180px}}@media(max-width:768px){.exec-creative-kit{padding:12px}.exec-mail-piece-preview{min-height:200px}.exec-mail-piece{min-height:174px;margin:10px;padding:14px}.exec-mail-piece-stamp{width:48px;height:34px;font-size:10px}.exec-mail-piece-offer{margin-top:26px}.exec-mail-piece-offer strong{max-width:260px;font-size:21px}.exec-mail-piece-footer{flex-direction:column;gap:4px}.production-kpis-compact{grid-template-columns:repeat(2,1fr)!important}.sidebar{display:none;position:fixed;top:0;left:0;bottom:0;z-index:2600;width:240px!important;box-shadow:4px 0 24px #0006}.sidebar.mobile-open{display:flex}.sidebar.mobile-open .sidebar-toggle{display:none}.mobile-hamburger{display:block!important}.mobile-nav-overlay{display:block!important;position:fixed;inset:0;background:#0006;z-index:2500}.top-nav{height:auto;padding:6px 10px 0;gap:4px;align-items:flex-start}.top-nav-left{flex-wrap:wrap;gap:8px;min-width:0}.top-nav-links{display:flex;flex:0 0 100%;margin-top:4px;overflow-x:auto;padding-bottom:1px;-webkit-overflow-scrolling:touch}.top-nav-link{padding:8px 10px;font-size:11px;min-height:34px}.top-nav-right{margin-left:auto}.top-nav-right .btn{font-size:11px;padding:4px 8px}.main-content{padding:12px}.dash-kpis,.dash-sparkline-grid{grid-template-columns:1fr 1fr}.dash-prod-grid,.planner-entry-cards{grid-template-columns:1fr}.planner-library,.planner-properties{display:none}.app{height:100dvh}.app-body{padding:10px 12px;gap:10px}.changelog-rail{display:none}.body-with-sidebar,.app-shell{overflow-x:hidden}.main-content{overflow-x:hidden;max-width:100%;width:100%;box-sizing:border-box}.dashboard-view{min-width:0;max-width:100%;overflow-x:hidden}.dashboard-view .results-slide-section{display:none}.dash-upcoming{grid-template-columns:1fr}.dash-upcoming-header{flex-wrap:wrap;align-items:center}.dash-upcoming-label{min-width:0;overflow-wrap:anywhere}.dash-channel-chip{max-width:100%;overflow-wrap:anywhere}.metric-delta-chip{min-height:24px;padding:5px 9px;font-size:11px}html,body,#root{overflow-x:hidden;max-width:100vw;width:100%}.summary-card{overflow:hidden;word-break:break-word}*::-webkit-scrollbar{height:0;width:0}.app-header{flex-direction:column;align-items:flex-start;gap:6px;padding:10px 14px}.app-header h1{font-size:15px}.seed-date{display:block;margin-left:0;margin-top:2px}.header-actions{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:6px}.header-dropdown-menu{min-width:140px}.filter-bar{padding:8px;gap:4px}.filter-bar select,.filter-bar input{min-width:0;flex:1 1 calc(50% - 4px);min-height:36px;font-size:13px}.filter-bar input[type=text]{min-width:0;flex:1 1 100%}.year-multi-wrap{flex:1 1 calc(50% - 4px)}.year-multi-btn{min-width:0;width:100%;min-height:36px;font-size:13px}.year-multi-dropdown{min-width:110px}.filter-spacer{display:none}.preset-bar{flex-wrap:wrap;gap:6px}.preset-btn{padding:4px 8px}.summary-cards{grid-template-columns:1fr 1fr;gap:8px}.production-header{flex-direction:column;align-items:flex-start}.production-subfilter{flex-wrap:wrap}.grid-toolbar{gap:6px}.grid-toolbar .btn{font-size:12px;padding:5px 8px;min-height:32px}table.data-grid{font-size:12px}table.data-grid th{padding:7px 8px;font-size:11px}table.data-grid td{padding:6px 8px}.detail-panel{width:100vw;max-width:100vw}.modal{width:100vw;max-width:100vw;max-height:100vh;border-radius:0}.import-modal,.bulk-edit-modal{width:100vw;max-width:100vw}.modal-header,.modal-body,.detail-header,.detail-body{padding:12px 14px}.detail-tabs button{padding:8px 10px;font-size:12px}.col-picker-panel{width:240px;max-width:80vw}.chart-svg{min-height:200px}.chart-wrap{padding:10px}.btn,select,input{min-height:34px}.feedback-form textarea{min-height:80px}.tour-tooltip{width:95vw}.drivers-card{padding:10px 12px}.drivers-card .driver-row{gap:4px;font-size:11px;padding:3px 4px}.drivers-card .driver-trend-pct{display:none}.drivers-card .driver-py{font-size:10px;min-width:60px}.drivers-card .driver-trend{font-size:11px}.drivers-card-compact .driver-row{gap:3px}.pw-drivers-detail{padding:6px 10px 8px}.pw-drivers-grid{display:flex;flex-direction:column;gap:2px;font-size:10px}.pw-driver-item{display:flex;align-items:center;gap:6px}.pw-driver-name{min-width:80px}.pw-driver-actual,.pw-driver-val{min-width:50px;text-align:right}.pw-driver-avg,.pw-driver-py,.pw-driver-header{display:none}.prod-week-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width:480px){.dash-kpis,.dash-kpis-three,.dash-upcoming,.summary-cards{grid-template-columns:1fr}.dash-kpi-card,.dash-upcoming-card,.summary-card{padding:12px}.production-kpis-compact{grid-template-columns:1fr!important}.summary-card .value,.summary-card .label,.summary-card .sub{overflow-wrap:anywhere}}.drivers-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:14px 16px;margin-top:8px}.drivers-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.drivers-title{font-size:13px;font-weight:600;color:var(--text-primary)}.drivers-subtitle{font-size:11px;color:var(--text-muted)}.drivers-list{display:flex;flex-direction:column;gap:2px}.drivers-section{margin-bottom:6px}.drivers-section:last-child{margin-bottom:0}.drivers-section-label{font-size:10px;text-transform:uppercase;letter-spacing:.8px;padding:2px 0 4px;font-weight:600}.drivers-tailwind{color:var(--green)}.drivers-headwind{color:var(--red)}.driver-row{display:flex;align-items:center;gap:8px;padding:4px 8px;border-radius:4px;font-size:12px}.driver-row:hover{background:var(--bg-hover)}.driver-arrow{font-size:9px;flex-shrink:0;width:12px;text-align:center}.driver-up{color:var(--green)}.driver-down{color:var(--red)}.driver-name{flex:1;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-trend{font-weight:600;white-space:nowrap;font-size:12px}.driver-trend-pct{font-size:11px;white-space:nowrap;min-width:48px;text-align:right}.driver-py{font-size:11px;color:var(--text-secondary);white-space:nowrap;min-width:80px;text-align:right}.drivers-card-compact{padding:10px 12px}.drivers-card-compact .drivers-title{font-size:12px}.drivers-card-compact .driver-row{padding:2px 4px;font-size:11px;gap:6px}.drivers-card-compact .driver-trend{font-size:11px}.drivers-card-compact .driver-py{font-size:10px;min-width:70px}.pw-row-clickable{cursor:pointer}.pw-row-clickable:hover{background:var(--bg-hover)}.pw-row-expanded{background:var(--bg-tertiary)}.pw-drivers-row td{padding:0!important;border-top:none!important}.pw-drivers-detail{background:var(--bg-tertiary);padding:8px 16px 10px;border-bottom:1px solid var(--border)}.pw-drivers-label{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);margin-bottom:6px;font-weight:600}.pw-drivers-grid{display:grid;grid-template-columns:14px 100px 65px 80px 65px 90px;gap:3px 8px;align-items:center;font-size:11px;width:fit-content}.pw-driver-item{display:contents}.pw-driver-name{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pw-driver-actual{color:var(--text-primary);font-weight:500;font-size:11px;white-space:nowrap;text-align:right}.pw-driver-avg{color:var(--text-muted);font-size:10px;white-space:nowrap;text-align:right}.pw-driver-val{font-weight:600;white-space:nowrap;text-align:right}.pw-driver-py{font-size:10px;white-space:nowrap;text-align:right}.pw-driver-header{font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-weight:600}.pw-driver-header span{text-align:right}.pw-driver-header span:nth-child(2){text-align:left}.cal-legend{display:flex;flex-wrap:wrap;gap:6px 14px;padding:4px 0 8px}.cal-legend-item{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary)}.cal-legend-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.pw-forecast-row{font-style:italic;cursor:default}.pw-forecast-row:hover{background:none!important}.pw-forecast-row td{color:var(--text-muted)!important}.pw-forecast-total td{border-top:2px solid var(--accent)!important}.pw-forecast-total td{font-style:italic;color:var(--accent)!important}.pw-drivers-section-label{font-size:10px;text-transform:uppercase;letter-spacing:.8px;font-weight:600;margin:6px 0 2px}.pw-drivers-section-label:first-child{margin-top:0}.anomaly-view{display:flex;flex-direction:column;gap:16px}.anomaly-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.anomaly-controls label{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.anomaly-controls input[type=number]{width:52px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);padding:4px 6px;font-size:12px}.anomaly-controls select{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);padding:4px 8px;font-size:12px}.anomaly-table{width:100%;border-collapse:collapse;font-size:12px}.anomaly-table th{text-align:left;padding:8px 10px;background:var(--bg-tertiary);border-bottom:2px solid var(--border);color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.3px;cursor:pointer;white-space:nowrap;user-select:none}.anomaly-table th:hover{color:var(--text-primary)}.anomaly-table td{padding:7px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.anomaly-table tr:hover{background:var(--bg-hover)}.anomaly-row--over{border-left:3px solid var(--red)}.anomaly-row--under{border-left:3px solid var(--accent)}.anomaly-row--pending td{color:var(--text-muted);font-style:italic}.anomaly-pill{font-size:10px;padding:2px 8px;border-radius:10px;font-weight:500;display:inline-block}.anomaly-pill--on-track{background:#22c55e1f;color:var(--green)}.anomaly-pill--over{background:#ef44441f;color:var(--red)}.anomaly-pill--under{background:#3ba7c91f;color:var(--accent)}.anomaly-pill--pending{background:var(--bg-tertiary);color:var(--text-muted)}.compare-panel{width:min(1200px,92vw)}.compare-panel .detail-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.compare-panel .detail-body{padding:20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:16px}.compare-diff-table{width:100%;border-collapse:collapse;font-size:12px}.compare-diff-table th{text-align:left;padding:7px 8px;background:var(--bg-tertiary);border-bottom:2px solid var(--border);color:var(--text-secondary);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;position:sticky;top:0;z-index:1}.compare-diff-table td{padding:5px 8px;border-bottom:1px solid var(--border);white-space:nowrap;font-size:11px}.compare-diff-table tr:hover{background:var(--bg-hover)}.compare-cell--changed{background:#f59e0b26}.compare-row--file-only{background:#22c55e0f}.compare-row--file-only:hover{background:#22c55e1f}.compare-row--system-only{background:#ef44440f}.compare-row--system-only:hover{background:#ef44441f}.compare-val-sys{color:var(--text-muted);font-size:10px}.compare-val-file{color:var(--amber);font-weight:600}.compare-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.changelog-rail{position:relative;flex-shrink:0;width:24px;background:var(--bg-secondary);border-left:1px solid var(--border);transition:width .2s ease;overflow:hidden}.changelog-rail.open{width:280px}.changelog-toggle{width:24px;height:28px;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:10px;display:flex;align-items:center;justify-content:center;margin-top:8px}.changelog-toggle:hover{color:var(--text-primary)}.changelog-scroll{padding:12px;overflow-y:auto;height:100%}.changelog-entry{display:flex;gap:8px;padding:4px 0;border-bottom:1px solid var(--border);font-size:11px;line-height:1.4}.changelog-date{color:var(--accent);font-weight:600;white-space:nowrap;min-width:46px}.changelog-text{color:var(--text-secondary)}.pw{display:flex;height:100%;min-height:0;overflow:hidden;background:var(--bg-primary)}.pw-rail{width:248px;min-width:248px;background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto}.pw-rail-head{padding:14px 16px 10px;border-bottom:1px solid var(--border)}.pw-rail-head .pw-product{font-size:11px;font-weight:800;letter-spacing:1px;color:var(--accent);text-transform:uppercase}.pw-rail-head .pw-cycle{font-size:14px;font-weight:700;margin-top:2px;color:var(--text-primary)}.pw-rail-sec{padding:12px 10px 4px;font-size:10px;font-weight:800;letter-spacing:.8px;color:var(--text-muted);text-transform:uppercase}.pw-rail-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;margin:1px 6px;cursor:pointer;color:var(--text-secondary);font-size:12.5px;border:none;background:transparent;width:calc(100% - 12px);text-align:left;font-family:inherit}.pw-rail-item:hover{background:var(--bg-hover)}.pw-rail-item.active{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;box-shadow:inset 3px 0 0 var(--accent)}.pw-rail-item .pw-dot{width:9px;height:9px;border-radius:3px;background:var(--purple);flex:none}.pw-rail-item .pw-nm{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pw-rail-item .pw-prog{width:42px;height:4px;border-radius:2px;background:var(--bg-tertiary);overflow:hidden;flex:none}.pw-rail-item .pw-prog i{display:block;height:100%;background:var(--green)}.pw-rail-item .pw-ct{font-size:10px;color:var(--text-muted);flex:none;min-width:34px;text-align:right}.pw-rail-sub{margin-left:22px}.pw-rail-foot{margin-top:auto;border-top:1px solid var(--border);padding:10px 14px;font-size:11px;color:var(--text-muted);display:flex;flex-direction:column;gap:6px}.pw-rail-foot button{background:none;border:none;color:var(--text-muted);font-size:11px;cursor:pointer;text-align:left;padding:0;font-family:inherit}.pw-rail-foot button:hover{color:var(--text-secondary)}.pw-main{flex:1;display:flex;flex-direction:column;min-width:0}.pw-head{padding:13px 22px 0;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.pw-head-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pw-plan-ico{width:30px;height:30px;border-radius:8px;background:var(--purple);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex:none}.pw-title{font-size:18px;font-weight:700;color:var(--text-primary);margin:0}.pw-head-right{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pw-role{font-size:10.5px;color:var(--text-muted);border:1px dashed var(--border);padding:3px 8px;border-radius:999px;background:transparent;font-family:inherit;cursor:pointer}.pw-btn{border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit}.pw-btn:disabled{opacity:.45;cursor:not-allowed}.pw-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.pw-tabs{display:flex;gap:2px;margin-top:11px}.pw-tab{padding:8px 14px 9px;font-size:12.5px;font-weight:600;color:var(--text-secondary);border:none;background:transparent;border-bottom:2px solid transparent;cursor:pointer;font-family:inherit}.pw-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.pw-tab:disabled{opacity:.4;cursor:default}.pw-targets{display:flex;gap:12px;padding:12px 22px 4px;flex-wrap:nowrap;overflow-x:auto}.pw-tcard{flex:1;min-width:220px;max-width:330px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:10px 12px}.pw-tcard .pw-lb{font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted)}.pw-tcard .pw-vl{font-size:16px;font-weight:800;margin-top:2px;font-variant-numeric:tabular-nums;color:var(--text-primary)}.pw-tcard .pw-vl small{font-size:11px;font-weight:600;color:var(--text-muted)}.pw-tcard .pw-vl input{width:88px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);border-radius:4px;font:inherit;font-size:12px;padding:1px 5px}.pw-bar{height:5px;border-radius:3px;background:var(--bg-tertiary);margin-top:7px;overflow:hidden}.pw-bar i{display:block;height:100%}.pw-gap{font-size:10.5px;font-weight:700;margin-top:4px}.pw-toolbar{display:flex;align-items:center;gap:8px;padding:8px 22px 10px;font-size:12px;color:var(--text-secondary);flex-wrap:wrap}.pw-tool{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:6px;cursor:pointer;border:1px solid transparent;background:transparent;color:var(--text-secondary);font:inherit}.pw-tool:hover{background:var(--bg-hover)}.pw-tool.boxed{border-color:var(--border);background:var(--bg-secondary)}.pw-tool.on{border-color:var(--amber);color:var(--amber);font-weight:700}.pw-search{margin-left:auto;display:flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--bg-secondary);border-radius:6px;padding:4px 10px;width:220px}.pw-search input{border:none;background:transparent;color:var(--text-primary);font:inherit;font-size:12px;outline:none;width:100%}.pw-list{flex:1;overflow:auto;padding:0 22px 30px}.pw-table{width:100%;border-collapse:collapse}.pw-table thead th{text-align:left;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);padding:8px 10px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-primary);z-index:2}.pw-table th.num,.pw-table td.num{text-align:right;font-variant-numeric:tabular-nums}.pw-sec td{padding:16px 10px 6px;font-size:13px;font-weight:800;color:var(--text-primary);border:none;cursor:pointer}.pw-sec .pw-sum{font-size:11px;font-weight:600;color:var(--text-muted);margin-left:10px}.pw-sec .pw-tri{display:inline-block;font-size:9px;color:var(--text-muted);margin-right:6px}.pw-rows tr{border-bottom:1px solid var(--border);background:var(--bg-secondary)}.pw-rows tr:hover{background:var(--bg-hover);cursor:pointer}.pw-rows tr.dropped{opacity:.45;text-decoration:line-through}.pw-table td{padding:4px 10px;font-size:12.5px;color:var(--text-primary)}.pw-table td.pw-date{white-space:nowrap;font-size:11px;color:var(--text-secondary)}.pw-chk{width:17px;height:17px;border-radius:50%;border:1.6px solid var(--text-muted);display:inline-flex;align-items:center;justify-content:center;font-size:10px;color:transparent;flex:none;background:transparent;cursor:pointer;padding:0}.pw-chk.done{background:var(--green);border-color:var(--green);color:#fff}.pw-nm{display:flex;align-items:center;gap:9px;min-width:240px}.pw-nm>div{min-width:0;max-width:440px}.pw-nm .t{font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pw-nm .meta{font-size:10px;color:var(--text-muted);margin-top:0;line-height:1.25}.pw-rt{font-size:10px;font-weight:800;padding:2px 8px;border-radius:4px;white-space:nowrap}.pw-rt.mom{background:#f59e0b29;color:var(--amber)}.pw-rt.cm{background:#22c55e24;color:var(--green)}.pw-rv{font-size:10px;font-weight:800;padding:2px 8px;border-radius:999px;white-space:nowrap}.pw-rv.draft{background:var(--bg-tertiary);color:var(--text-secondary)}.pw-rv.ready{background:#3b82f629;color:#3b82f6}.pw-rv.appr{background:#22c55e29;color:var(--green)}.pw-rv.needs{background:#f59e0b2e;color:var(--amber)}.pw-rv.pub{background:#0a4d6540;color:var(--purple)}.pw-fund{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;color:var(--text-muted);white-space:nowrap}.pw-fdot{width:8px;height:8px;border-radius:50%}.pw-fdot.ok{background:var(--green)}.pw-fdot.inf{background:var(--amber)}.pw-fdot.miss{background:transparent;border:1.5px solid var(--red)}.pw-fdot.na{background:var(--bg-tertiary);border:1px solid var(--border)}.pw-ctap{font-weight:800}.pw-ctap.g{color:var(--green)}.pw-ctap.a{color:var(--amber)}.pw-ctap.r{color:var(--red)}.pw-qty{width:80px;padding:3px 6px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-primary);font:inherit;text-align:right;font-variant-numeric:tabular-nums}.pw-rows tr:hover .pw-qty{border-color:var(--border);background:var(--bg-primary)}.pw-info{font-size:9.5px;padding:1px 6px;border-radius:4px;background:var(--bg-tertiary);color:var(--text-secondary);white-space:nowrap}.pw-empty{padding:40px;text-align:center;color:var(--text-muted);font-size:13px}.pw-addrow td{color:var(--text-muted);font-size:12px;padding:7px 10px 7px 36px;cursor:pointer;border-bottom:none}.pw-addrow:hover td{color:var(--accent)}.pw-trend{border:1px solid var(--border);border-left:3px solid var(--purple);border-radius:8px;background:var(--bg-secondary);padding:10px 14px;margin-bottom:16px}.pw-bulkbar{display:flex;align-items:center;gap:8px;margin:0 22px 10px;padding:8px 12px;border:1px solid var(--accent);border-radius:8px;background:#ee682312;font-size:12px;color:var(--text-primary);flex-wrap:wrap}.pw-table input[type=checkbox]{accent-color:var(--accent);cursor:pointer}.pw-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:stretch;justify-content:flex-end;z-index:3000}.pw-panel{width:min(1280px,96vw);background:var(--bg-primary);border-left:1px solid var(--border);display:flex;flex-direction:column;box-shadow:-18px 0 50px #0006}.pw-p-head{padding:14px 26px 0;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.pw-p-crumb{font-size:11px;color:var(--text-muted)}.pw-p-titlerow{display:flex;align-items:center;gap:10px;margin-top:6px;flex-wrap:wrap}.pw-p-title{font-size:17px;font-weight:750;color:var(--text-primary);border:1px solid transparent;background:transparent;font-family:inherit;padding:2px 6px;border-radius:4px;min-width:320px;flex:1}.pw-p-title:hover,.pw-p-title:focus{border-color:var(--border);background:var(--bg-primary);outline:none}.pw-p-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.pw-x{width:30px;height:30px;border-radius:6px;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);font-size:14px;cursor:pointer}.pw-train-panel{width:min(1180px,96vw);background:var(--bg-secondary);border-left:1px solid var(--border);display:flex;flex-direction:column;box-shadow:-18px 0 50px #0006}.pw-train-head{display:flex;align-items:center;gap:10px;padding:11px 18px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.pw-train-title{font-weight:750;font-size:15px;color:var(--text-primary)}.pw-train-frame{flex:1;width:100%;border:0;background:#f6f7f9}.pw-tracker{display:flex;align-items:center;margin:14px 0 16px;overflow-x:auto}.pw-step{display:flex;align-items:center;gap:8px;flex:none}.pw-step .ball{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;border:2px solid var(--border);color:var(--text-muted);background:var(--bg-primary);flex:none}.pw-step.done .ball{background:var(--green);border-color:var(--green);color:#fff}.pw-step.cur .ball{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 4px #ee68232e}.pw-step .slb{font-size:11px;font-weight:700;color:var(--text-secondary);white-space:nowrap}.pw-step.cur .slb{color:var(--accent)}.pw-step.done .slb{color:var(--text-primary)}.pw-conn{flex:1;height:2px;background:var(--border);margin:0 10px;min-width:22px}.pw-conn.done{background:var(--green)}.pw-p-body{flex:1;overflow:auto;display:flex;align-items:flex-start}.pw-p-main{flex:1;padding:18px 26px 80px;min-width:0}.pw-p-main .pw-grp:last-child{margin-bottom:40px}.pw-p-meta{width:268px;min-width:268px;align-self:stretch;border-left:1px solid var(--border);background:var(--bg-secondary);padding:18px;overflow-y:auto}.pw-mlb{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin:14px 0 4px}.pw-mlb:first-child{margin-top:0}.pw-mvl{font-size:12.5px;font-weight:600;color:var(--text-primary)}.pw-mvl select{width:100%;border:1px solid var(--border);border-radius:5px;background:var(--bg-primary);color:var(--text-primary);padding:5px 8px;font:inherit;font-size:12px}.pw-flowlb{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.pw-flow{display:flex;align-items:stretch;margin-bottom:22px;overflow-x:auto}.pw-fcard{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:11px 14px;min-width:136px;flex:none}.pw-fcard.editable{border-style:dashed;border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}.pw-fcard .flb{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.pw-fcard .fvl{font-size:18px;font-weight:850;margin-top:3px;font-variant-numeric:tabular-nums;color:var(--text-primary)}.pw-fcard .fvl input{width:100px;border:none;border-bottom:1px dashed var(--border);background:transparent;color:var(--text-primary);font:inherit;outline:none;padding:0}.pw-fcard .fsub{font-size:10.5px;color:var(--text-muted);margin-top:3px}.pw-fcard.out .fvl{color:var(--green)}.pw-fcard.out.amber .fvl{color:var(--amber)}.pw-fcard.out.red .fvl{color:var(--red)}.pw-farrow{display:flex;align-items:center;padding:0 8px;color:var(--text-muted);font-size:16px;flex:none}.pw-grp{margin-bottom:20px}.pw-grp h3{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--text-secondary);border-bottom:1px solid var(--border);padding-bottom:6px;margin:0 0 10px}.pw-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.pw-fld .flb{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);margin-bottom:3px;line-height:1.3;min-height:26px;display:flex;align-items:flex-start}.pw-fld input,.pw-fld select{width:100%;border:1px solid var(--border);border-radius:6px;background:var(--bg-secondary);padding:7px 10px;font-size:12.5px;font-weight:600;color:var(--text-primary);font-family:inherit}.pw-fld .ro{border:1px solid var(--border);border-radius:6px;background:var(--bg-tertiary);padding:7px 10px;font-size:12.5px;color:var(--text-secondary)}.pw-fld input.pw-asm-derived::placeholder{color:var(--accent);opacity:1;font-weight:700}.pw-fld input.pw-asm-derived{border-style:dashed;border-color:var(--accent)}.pw-funder-row input,.pw-funder-row select{border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:5px;background:var(--bg-primary);color:var(--text-primary);font:inherit;padding:4px 7px}.pw-funder-row input{cursor:text}.pw-funder-row select{cursor:pointer}.pw-funder-row input:hover,.pw-funder-row select:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg-primary))}.pw-funder-row input:focus,.pw-funder-row select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 28%,transparent)}.pw-funder-row input:disabled,.pw-funder-row select:disabled{opacity:.5;border-style:dashed;cursor:not-allowed;background:transparent}.pw-p-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:16px}.pw-compare{display:flex;gap:8px;flex-wrap:wrap}.pw-cchip{border:1px solid var(--border);border-radius:6px;padding:6px 10px;background:var(--bg-secondary);font-size:11px;color:var(--text-secondary)}.pw-cchip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.pw-hist{font-size:12px;color:var(--text-secondary);display:flex;flex-direction:column;gap:8px}.pw-hist .h-item{border-left:2px solid var(--border);padding:2px 0 2px 10px}.pw-hist b{color:var(--text-primary)}.pw-tech{font-family:monospace;font-size:11px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:12px;white-space:pre-wrap;word-break:break-all;color:var(--text-secondary);max-height:480px;overflow:auto}.pw-loading{display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-size:13px}.pw-feed{margin-top:8px;border-top:1px solid var(--border);padding-top:4px}.pw-feed-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:12px}.pw-feed-more{background:none;border:none;color:var(--accent);font-size:11.5px;font-weight:700;cursor:pointer;padding:2px 0 10px;font-family:inherit}.pw-avatar{width:26px;height:26px;border-radius:50%;background:var(--purple);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;flex:none}.pw-feed-comment{display:flex;gap:10px;margin-bottom:12px}.pw-feed-body{flex:1;min-width:0}.pw-feed-head{font-size:12px;color:var(--text-primary)}.pw-feed-head span{color:var(--text-muted);font-size:11px;margin-left:6px}.pw-feed-text{font-size:12.5px;color:var(--text-primary);margin-top:2px;white-space:pre-wrap}.pw-feed-line{font-size:11.5px;color:var(--text-secondary);padding:3px 0 3px 36px}.pw-feed-line b{color:var(--text-primary)}.pw-feed-val{font-weight:700;color:var(--text-primary);background:var(--bg-tertiary);border-radius:3px;padding:0 4px}.pw-feed-when{color:var(--text-muted)}.pw-feed-compose{display:flex;gap:10px;align-items:flex-start;margin-top:12px}.pw-feed-compose textarea{flex:1;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font:inherit;font-size:12.5px;padding:8px 10px;resize:vertical}.pw-feed-compose textarea:focus{outline:none;border-color:var(--accent)}.pw-cal-wrap{flex:1;overflow:auto;padding:14px 22px 30px}.pw-cal{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.pw-cal-month{border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary);padding:10px 10px 12px;min-height:90px}.pw-cal-head{display:flex;justify-content:space-between;align-items:baseline;font-size:12.5px;font-weight:800;color:var(--text-primary);margin-bottom:8px}.pw-cal-sum{font-size:10px;font-weight:700;color:var(--text-muted)}.pw-cal-chip{display:flex;align-items:center;gap:7px;width:100%;text-align:left;border:1px solid var(--border);border-left-width:3px;border-radius:5px;background:var(--bg-primary);color:var(--text-primary);padding:4px 7px;margin-bottom:4px;cursor:pointer;font-family:inherit;font-size:11px}.pw-cal-chip:hover{background:var(--bg-hover)}.pw-cal-day{font-weight:900;font-size:10.5px;color:var(--text-secondary);min-width:16px;text-align:right;flex:none;font-variant-numeric:tabular-nums}.pw-cal-nm{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.pw-cal-qty{font-size:10px;color:var(--text-muted);flex:none;font-variant-numeric:tabular-nums}.pw-p-meta .pw-feed{margin-top:16px}.pw-p-meta .pw-feed-tabs .pw-tab{padding:6px 9px 7px;font-size:11px}.pw-p-meta .pw-feed-line{padding-left:0;font-size:11px;line-height:1.5}.pw-p-meta .pw-avatar{width:20px;height:20px;font-size:8.5px}.pw-p-meta .pw-feed-comment{gap:7px;margin-bottom:10px}.pw-p-meta .pw-feed-text{font-size:11.5px}.pw-p-meta .pw-feed-compose{flex-direction:column;gap:6px}.pw-p-meta .pw-feed-compose .pw-avatar{display:none}.pw-p-meta .pw-feed-compose textarea{width:100%;font-size:11.5px;background:var(--bg-primary)}.pw-p-meta .pw-feed-compose .pw-btn{align-self:flex-end;padding:4px 10px;font-size:11px}.pw-rowact{display:inline-flex;gap:3px;visibility:hidden}.pw-rows tr:hover .pw-rowact{visibility:visible}.assoc-mkt-page{display:flex;flex-direction:column;gap:14px}.assoc-mkt-header,.assoc-mkt-panel,.assoc-mkt-site-preview{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px}.assoc-mkt-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px}.assoc-mkt-header h2,.assoc-mkt-panel h3,.assoc-mkt-site-hero h3{margin:0;color:var(--text-primary)}.assoc-mkt-header p,.assoc-mkt-tool p,.assoc-mkt-assn-card p,.assoc-mkt-panel small{margin:4px 0 0;color:var(--text-muted);font-size:13px}.assoc-mkt-eyebrow{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.assoc-mkt-tabs{display:flex;flex-wrap:wrap;gap:8px}.assoc-mkt-phase-pill{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);flex:0 0 auto;font-size:12px;font-weight:700;padding:7px 10px}.assoc-mkt-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.assoc-mkt-grid,.assoc-mkt-preview-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:14px}.assoc-mkt-panel{padding:16px}.ad-rules-page{display:flex;flex-direction:column;gap:14px}.ad-rules-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.ad-rules-status-badge{background:#f59e0b24;border:1px solid rgba(245,158,11,.35);border-radius:999px;color:#b45309;font-size:10px;font-weight:800;letter-spacing:.06em;padding:3px 7px;text-transform:uppercase}.ad-rules-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.ad-rules-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.ad-rules-toolbar input,.ad-rules-toolbar select,.ad-rules-copy-grid input,.ad-rules-copy-grid select,.ad-rules-copy-grid textarea,.ad-rules-table input[type=text],.ad-rules-table textarea{background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font:inherit;font-size:12px;padding:7px 9px;width:100%}.ad-rules-toolbar input{flex:1 1 260px}.ad-rules-toolbar select{flex:0 1 220px}.ad-rules-table-wrap{border:1px solid var(--border);border-radius:8px;max-height:560px;overflow:auto}.ad-rules-table{border-collapse:collapse;min-width:1080px;width:100%}.ad-rules-table th,.ad-rules-table td{border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:12px;padding:8px;text-align:left;vertical-align:top}.ad-rules-table th{background:var(--bg-tertiary);color:var(--text-muted);font-size:11px;font-weight:800;position:sticky;text-transform:uppercase;top:0;z-index:1}.ad-rules-table td:first-child,.ad-rules-table th:first-child{position:sticky;left:0;z-index:2}.ad-rules-table td:first-child{background:var(--bg-secondary)}.ad-rules-table th:first-child{background:var(--bg-tertiary);z-index:3}.ad-rules-table textarea{min-height:48px;resize:vertical}.ad-rules-table input[type=checkbox]{accent-color:var(--accent);height:14px;width:14px}.ad-rules-delete-btn{background:#ef444414;border:1px solid rgba(239,68,68,.28);border-radius:6px;color:#b91c1c;cursor:pointer;font-size:12px;font-weight:700;padding:7px 9px}.ad-rules-delete-btn:hover{background:#ef444424}.ad-rules-delete-btn.danger{background:#dc2626;border-color:#dc2626;color:#fff}.ad-rules-confirm-delete{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.ad-rules-confirm-delete button:not(.ad-rules-delete-btn){background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:700;padding:7px 9px}.ad-rules-availability-table th:not(:first-child),.ad-rules-availability-table td:not(:first-child){text-align:center;min-width:112px}.ad-rules-availability-table td:first-child{min-width:260px}.ad-rules-availability-table td:first-child strong,.ad-rules-availability-table td:first-child span{display:block}.ad-rules-availability-table td:first-child span{color:var(--text-muted);font-size:11px;margin-top:2px}.ad-rules-footnote{color:var(--text-muted);font-size:12px;margin:10px 0 0}.ad-rules-copy-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.ad-rules-copy-grid label{color:var(--text-muted);display:flex;flex-direction:column;font-size:11px;font-weight:800;gap:5px;letter-spacing:.04em;text-transform:uppercase}.ad-rules-copy-grid label:nth-child(n+3){grid-column:1 / -1}.ad-rules-copy-grid textarea{min-height:64px;resize:vertical}.ad-rules-flyer-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.ad-rules-flyer-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;gap:10px;padding:12px}.ad-rules-flyer-card label{color:var(--text-muted);display:flex;flex-direction:column;font-size:11px;font-weight:800;gap:5px;letter-spacing:.04em;text-transform:uppercase}.ad-rules-flyer-card input,.ad-rules-flyer-card select,.ad-rules-flyer-card textarea{background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font:inherit;font-size:12px;padding:7px 9px;width:100%}.ad-rules-flyer-card textarea{resize:vertical}.assoc-mkt-section-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.assoc-mkt-section-head p{color:var(--text-muted);font-size:13px;line-height:1.45;margin:5px 0 0}.assoc-mkt-section-head>span{background:#ee68231f;border:1px solid rgba(238,104,35,.28);border-radius:999px;color:var(--orange);flex:0 0 auto;font-size:11px;font-weight:800;padding:5px 9px}.assoc-mkt-tool-list,.assoc-mkt-product-list,.assoc-mkt-steps{display:flex;flex-direction:column;gap:10px;margin-top:12px}.assoc-mkt-tool,.assoc-mkt-product-list>div,.assoc-mkt-benefit-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:12px}.assoc-mkt-tool{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.assoc-mkt-tool span,.assoc-mkt-product-list span,.assoc-mkt-benefit-card span{color:var(--text-muted);font-size:12px}.assoc-mkt-assn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.assoc-mkt-assn-card{display:flex;align-items:flex-start;gap:10px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);cursor:pointer;padding:12px;text-align:left}.assoc-mkt-assn-card:hover,.assoc-mkt-assn-card.selected{border-color:var(--accent);background:var(--bg-hover)}.assoc-mkt-logo-dot,.assoc-mkt-brand-row span{display:inline-block;border:1px solid var(--border);border-radius:999px;flex:0 0 auto}.assoc-mkt-logo-dot{width:14px;height:14px;margin-top:3px}.assoc-mkt-panel select{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);padding:10px}.assoc-mkt-panel>select{width:100%;margin-top:12px}.assoc-mkt-brand-row{display:flex;align-items:center;gap:8px;margin-top:12px}.assoc-mkt-brand-row span{width:18px;height:18px}.assoc-mkt-brand-row p{color:var(--text-muted);font-size:12px;margin:0}.assoc-mkt-preview-facts{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.assoc-mkt-preview-facts div,.assoc-mkt-review-list div{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:11px}.assoc-mkt-preview-facts span{color:var(--text-muted);display:block;font-size:11px;margin-bottom:4px}.assoc-mkt-preview-facts strong{color:var(--text-primary);display:block;font-size:13px;line-height:1.3}.assoc-mkt-review-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.assoc-mkt-review-list div{align-items:flex-start;display:flex;gap:10px}.assoc-mkt-review-list span{align-items:center;background:var(--orange);border-radius:999px;color:#fff;display:inline-flex;flex:0 0 22px;font-size:11px;font-weight:800;height:22px;justify-content:center}.assoc-mkt-review-list p{color:var(--text-secondary);font-size:13px;line-height:1.45;margin:1px 0 0}.assoc-mkt-site-preview{overflow:hidden}.assoc-mkt-site-toolbar{align-items:center;border-bottom:1px solid var(--border);color:var(--text-muted);display:flex;font-size:12px;justify-content:space-between;padding:10px 14px}.assoc-mkt-site-toolbar strong{color:var(--text-primary)}.assoc-mkt-site-hero{align-items:center;color:#fff;display:grid;gap:18px;grid-template-columns:auto minmax(0,1fr) auto;padding:28px}.assoc-mkt-site-logo,.assoc-mkt-site-logo-card{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:36px;background:#ffffff2e;border-radius:8px;font-weight:800;margin-bottom:18px;padding:0 10px}.assoc-mkt-site-logo-card{background:#fff;height:70px;margin:0;min-width:96px;padding:12px}.assoc-mkt-site-logo-card img{display:block;max-height:48px;max-width:110px;object-fit:contain}.assoc-mkt-site-hero span{color:#ffffffbd;display:block;font-size:11px;font-weight:800;letter-spacing:.08em;margin-bottom:5px;text-transform:uppercase}.assoc-mkt-site-hero p{color:#ffffffc7;margin:8px 0 0}.assoc-mkt-site-hero button{border:0;border-radius:6px;color:#fff;cursor:pointer;font-weight:700;padding:10px 14px}.assoc-mkt-benefit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;padding:14px}.assoc-mkt-benefit-card p{color:var(--text-muted);font-size:12px;margin:8px 0 0}.assoc-mkt-site-note{border-top:1px solid var(--border);padding:14px}.assoc-mkt-site-note strong{color:var(--text-primary);display:block;font-size:13px}.assoc-mkt-site-note p{color:var(--text-secondary);font-size:13px;line-height:1.5;margin:5px 0 0}.assoc-mkt-generator-port{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3f4f6;border:1px solid var(--border);border-radius:8px;box-sizing:border-box;color:#111827;height:clamp(420px,calc(100vh - 230px),900px);min-height:0;overflow:hidden;padding:14px}.ad-generator{color:#111827;display:flex;flex-direction:column;font-family:var(--font-body);gap:12px;height:100%;min-height:0}.ad-generator h3,.ad-generator h4{color:#111827;font-family:var(--font-heading)}.ad-generator-bar{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:12px 16px}.ad-generator-bar-meta{align-items:baseline;display:flex;flex-wrap:wrap;gap:12px;min-width:0}.ad-generator-bar-count{color:#111827;font-family:var(--font-heading);font-size:22px;font-weight:800;line-height:1}.ad-generator-bar-formula{color:#4b5563;font-size:13px}.ad-generator-bar-path{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;padding:3px 8px}.ad-generator-bar-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:6px}.ad-generator-download-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:8px 16px;transition:background .12s,border-color .12s}.ad-generator-download-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.ad-generator-download-btn-primary{background:#0a4d65;border-color:#0a4d65;color:#fff}.ad-generator-download-btn-primary:hover:not(:disabled){background:#083d52;border-color:#083d52}.ad-generator-download-btn:disabled{cursor:not-allowed;opacity:.55}.ad-generator-status{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;color:#047857;font-size:12px;font-weight:600;margin-bottom:10px;padding:8px 12px}.ad-generator-status.warning{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.ad-generator-layout{align-items:start;display:grid;flex:1 1 auto;gap:12px;grid-template-columns:minmax(280px,320px) minmax(0,1fr);min-height:0;overflow:hidden}.ad-generator-rail{display:flex;flex-direction:column;gap:10px;height:100%;min-height:0;overflow-y:auto;padding-right:4px;scrollbar-gutter:stable}.ad-generator-section{background:#fff;border:1px solid #e5e7eb;border-radius:10px;display:flex;flex-direction:column;gap:10px;padding:14px}.ad-generator-section-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.ad-generator-section-head h4{color:#111827;font-family:var(--font-heading);font-size:12px;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.ad-generator-section-actions{display:flex;flex-wrap:wrap;gap:10px}.ad-generator-section-actions button{background:transparent;border:0;color:#0a4d65;cursor:pointer;font:inherit;font-size:11px;font-weight:600;padding:0}.ad-generator-section-actions button:hover{text-decoration:underline}.ad-generator-section-actions button.on{color:#111827;text-decoration:underline}.ad-generator-assoc-actions{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.ad-generator-assoc-actions button{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font:inherit;font-size:11px;font-weight:700;min-height:28px;padding:6px 8px;transition:background .12s,border-color .12s,color .12s}.ad-generator-assoc-actions button:hover{background:#eef7f9;border-color:#9fc3cf;color:#0a4d65}.ad-generator-assoc-actions button.on{background:#0a4d65;border-color:#0a4d65;color:#fff}.ad-generator-results-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.ad-generator-results-row .ad-generator-section-hint{min-width:0}.ad-generator-results-row button{background:transparent;border:0;color:#0a4d65;cursor:pointer;flex:0 0 auto;font:inherit;font-size:11px;font-weight:700;padding:0}.ad-generator-results-row button:hover{text-decoration:underline}.ad-generator-results-row button:disabled{color:#9ca3af;cursor:default;text-decoration:none}.ad-generator-section-count{color:#6b7280;font-size:11px;font-weight:600}.ad-generator-section-hint{color:#6b7280;font-size:11px;line-height:1.4;margin:0}.ad-generator-assoc-tools{display:grid;gap:6px}.ad-generator-assoc-tools input,.ad-generator-assoc-tools select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#111827;font-family:inherit;font-size:12px;font-weight:500;padding:7px 9px;width:100%}.ad-generator-assoc-tools input:focus,.ad-generator-assoc-tools select:focus{border-color:#0a4d65;box-shadow:0 0 0 2px #0a4d6529;outline:none}.ad-generator-assoc-list{display:flex;flex-direction:column;gap:4px}.ad-generator-assoc-row{align-items:flex-start;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:6px 8px;transition:border-color .12s,background .12s}.ad-generator-assoc-row:hover{background:#f9fafb}.ad-generator-assoc-row.on{background:#0a4d650d;border-color:#0a4d65}.ad-generator-assoc-row input[type=checkbox]{accent-color:#0A4D65;flex:0 0 auto;height:13px;margin:2px 0 0;width:13px}.ad-generator-assoc-swatches{display:inline-flex;flex:0 0 auto;gap:2px;margin-top:2px}.ad-generator-assoc-swatches span{border:1px solid #e5e7eb;border-radius:3px;display:inline-block;height:12px;width:12px}.ad-generator-assoc-copy{display:flex;flex-direction:column;gap:1px;min-width:0}.ad-generator-assoc-name{color:#1f2937;font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-generator-assoc-detail{color:#6b7280;display:-webkit-box;font-size:10px;font-weight:500;line-height:1.2;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal}.ad-generator-assoc-site{color:#8a94a3;font-size:10px;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-generator-assoc-more{color:#6b7280;font-size:11px;padding:6px 8px 2px}.ad-generator-chip-row{display:flex;flex-wrap:wrap;gap:6px}.ad-generator-chip{background:#f3f4f6;border:0;border-radius:8px;color:#4b5563;cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;padding:6px 12px;transition:background .12s,color .12s}.ad-generator-chip:hover{background:#e5e7eb;color:#111827}.ad-generator-chip.on{background:#111827;color:#fff}.ad-generator-chip.muted:not(.on){border:1px dashed #d1d5db;color:#9ca3af}.ad-generator-chip-format{align-items:center;display:inline-flex;gap:6px}.ad-generator-chip-format small{color:#9ca3af;font-size:10px;font-weight:500}.ad-generator-chip-format.on small{color:#ffffffb3}.ad-generator-field{color:#6b7280;display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:4px;letter-spacing:.04em;text-transform:uppercase}.ad-generator-field input[type=text],.ad-generator-field input[type=file],.ad-generator-field select,.ad-generator-field textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#111827;font-family:inherit;font-size:12px;font-weight:500;letter-spacing:0;padding:7px 9px;text-transform:none;width:100%}.ad-generator-field input[type=text]:focus,.ad-generator-field input[type=file]:focus,.ad-generator-field select:focus,.ad-generator-field textarea:focus{border-color:#0a4d65;box-shadow:0 0 0 2px #0a4d6529;outline:none}.ad-generator-field textarea{line-height:1.35;min-height:54px;resize:vertical}.ad-generator-range-row{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto auto}.ad-generator-range-row input[type=range]{accent-color:#0A4D65;width:100%}.ad-generator-range-row strong{color:#374151;font-size:11px;letter-spacing:0;min-width:36px;text-align:right;text-transform:none}.ad-generator-range-row button{background:transparent;border:0;color:#0a4d65;cursor:pointer;font:inherit;font-size:11px;font-weight:700;letter-spacing:0;padding:0;text-transform:none}.ad-generator-range-row button:hover{text-decoration:underline}.ad-generator-field-grid{display:grid;gap:8px;grid-template-columns:1fr 1fr}.ad-generator-color-input{align-items:center;display:flex;gap:6px}.ad-generator-color-input input[type=color]{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;flex:0 0 auto;height:30px;padding:2px;width:38px}.ad-generator-color-input input[type=text]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.ad-generator-brand-queue{display:flex;flex-direction:column;gap:6px}.ad-generator-brand-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#111827;cursor:pointer;display:flex;gap:8px;justify-content:space-between;padding:8px;text-align:left}.ad-generator-brand-card.on{background:#0a4d650d;border-color:#0a4d65}.ad-generator-brand-card-main{display:flex;flex-direction:column;gap:2px;min-width:0}.ad-generator-brand-card-main span{font-size:12px;font-weight:800}.ad-generator-brand-card-main small{color:#6b7280;font-size:10px;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-generator-brand-card-meta{align-items:center;display:inline-flex;flex:0 0 auto;gap:3px}.ad-generator-brand-card-meta span{border:1px solid #e5e7eb;border-radius:3px;display:inline-block;height:12px;width:12px}.ad-generator-brand-card-meta em{color:#0a4d65;font-size:9px;font-style:normal;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.ad-generator-brand-active-row{align-items:center;color:#6b7280;display:flex;font-size:11px;font-weight:700;justify-content:space-between}.ad-generator-brand-active-row button{background:transparent;border:0;color:#ef4444;cursor:pointer;font:inherit;padding:0}.ad-generator-brand-active-row button:hover{text-decoration:underline}.ad-generator-brand-mode{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;gap:8px;padding:8px}.ad-generator-brand-mode button{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;flex:0 0 auto;font:inherit;font-size:11px;font-weight:700;padding:6px 9px}.ad-generator-brand-mode button.on{background:#0a4d65;border-color:#0a4d65;color:#fff}.ad-generator-brand-mode span{color:#6b7280;font-size:11px;line-height:1.3}.ad-generator-copy-override{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;flex-direction:column;gap:8px;padding:8px}.ad-generator-copy-override-head{align-items:center;color:#374151;display:flex;font-size:11px;font-weight:800;justify-content:space-between;letter-spacing:.04em;text-transform:uppercase}.ad-generator-copy-override-head button{background:transparent;border:0;color:#0a4d65;cursor:pointer;font:inherit;font-size:11px;font-weight:700;letter-spacing:0;padding:0;text-transform:none}.ad-generator-copy-override-head button:hover{text-decoration:underline}.ad-generator-copy-product-tabs{display:flex;flex-wrap:wrap;gap:5px}.ad-generator-copy-product-tabs button{background:#fff;border:1px solid #d1d5db;border-radius:999px;color:#374151;cursor:pointer;font:inherit;font-size:11px;font-weight:700;padding:5px 8px}.ad-generator-copy-product-tabs button.on{background:#0a4d65;border-color:#0a4d65;color:#fff}.ad-generator-flyer-feature{border-top:1px solid #e5e7eb;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 70px;padding-top:8px}.ad-generator-flyer-feature .ad-generator-field:nth-child(3),.ad-generator-flyer-feature .ad-generator-field:nth-child(4){grid-column:1 / -1}.ad-generator-logo-row{align-items:center;display:flex;gap:8px}.ad-generator-link-btn{background:transparent;border:0;color:#ef4444;cursor:pointer;font:inherit;font-size:11px;font-weight:600;padding:0}.ad-generator-link-btn:hover{text-decoration:underline}.ad-generator-presets{display:flex;flex-direction:column;gap:6px}.ad-generator-presets-label{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.ad-generator-presets-row{display:flex;flex-wrap:wrap;gap:6px}.ad-generator-preset{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:999px;color:#4b5563;cursor:pointer;display:inline-flex;font-family:inherit;font-size:11px;font-weight:600;gap:6px;padding:4px 12px 4px 6px;transition:border-color .12s,background .12s}.ad-generator-preset:hover{background:#f9fafb;border-color:#9ca3af}.ad-generator-preset-swatches{display:inline-flex;gap:2px}.ad-generator-preset-swatches span{border-radius:999px;display:inline-block;height:10px;width:10px}.ad-generator-workspace{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0;min-width:0;overflow-y:auto;padding-right:4px;scrollbar-gutter:stable}.ad-generator-empty{background:#fff;border:1px dashed #d1d5db;border-radius:10px;color:#6b7280;font-size:13px;padding:32px;text-align:center}.ad-generator-format-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;flex:0 0 auto;overflow:hidden}.ad-generator-format-head{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:12px 18px}.ad-generator-format-head h4{color:#111827;display:inline;font-family:var(--font-heading);font-size:14px;font-weight:700;margin:0}.ad-generator-format-head span{color:#9ca3af;font-size:12px;font-weight:400;margin-left:6px}.ad-generator-format-controls{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;flex-wrap:wrap;gap:16px;padding:10px 18px}.ad-generator-control-group{align-items:center;display:flex;gap:8px;min-width:0}.ad-generator-logo-scale-control{flex:1 1 280px;justify-content:flex-end}.ad-generator-logo-scale-control .ad-generator-range-row{flex:1 1 220px;max-width:360px}.ad-generator-control-label{color:#6b7280;font-size:12px;font-weight:500}.ad-generator-control-label:after{content:":"}.ad-generator-pill-row{display:flex;flex-wrap:wrap;gap:4px}.ad-generator-pill{background:#f3f4f6;border:0;border-radius:6px;color:#4b5563;cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;padding:5px 11px;transition:background .12s,color .12s}.ad-generator-pill:hover{background:#e5e7eb;color:#111827}.ad-generator-pill.on{background:#0a4d65;color:#fff}.ad-generator-photo-picker{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.ad-generator-photo-thumb{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;height:44px;overflow:hidden;padding:0;position:relative;transition:border-color .12s;width:64px}.ad-generator-photo-thumb:hover{border-color:#9ca3af}.ad-generator-photo-thumb.on{border-color:#ee6823;box-shadow:0 0 0 1px #ee6823}.ad-generator-photo-thumb img{display:block;height:100%;object-fit:cover;width:100%}.ad-generator-photo-check{align-items:center;background:#ee6823;border-radius:999px;color:#fff;display:inline-flex;font-size:10px;font-weight:700;height:16px;justify-content:center;position:absolute;right:3px;top:3px;width:16px}.ad-generator-photo-position{align-items:center;color:#6b7280;display:inline-flex;font-size:11px;font-weight:600;gap:8px}.ad-generator-photo-position button{background:transparent;border:0;color:#0a4d65;cursor:pointer;font:inherit;font-weight:700;padding:0}.ad-generator-photo-position button:hover{text-decoration:underline}.ad-generator-canvas-scaler.can-drag-photo{cursor:grab;touch-action:none;user-select:none}.ad-generator-canvas-scaler.can-drag-photo:active{cursor:grabbing}.ad-generator-photo-upload{align-items:center;background:#fff;border:2px dashed #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:11px;font-weight:600;height:44px;justify-content:center;padding:0 12px;transition:border-color .12s,color .12s}.ad-generator-photo-upload:hover{border-color:#9ca3af;color:#374151}.ad-generator-photo-upload input{display:none}.ad-generator-stage{background:#e5e5e5;display:flex;flex-direction:column;gap:18px;padding:24px}.ad-generator-preview-row{display:flex;flex-direction:column;gap:8px}.ad-generator-preview-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.ad-generator-preview-label{color:#374151;font-size:12px;font-weight:700}.ad-generator-preview-actions{display:flex;gap:6px}.ad-generator-preview-actions button{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#4b5563;cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;padding:5px 14px;transition:background .12s,border-color .12s}.ad-generator-preview-actions button:first-child{background:#111827;border-color:#111827;color:#fff}.ad-generator-preview-actions button:first-child:hover{background:#1f2937;border-color:#1f2937}.ad-generator-preview-actions button:not(:first-child):hover{background:#f9fafb;border-color:#9ca3af}.ad-generator-canvas-frame{flex:0 0 auto;overflow:hidden;position:relative}.ad-generator-canvas-scaler{display:block}@media(max-width:1100px){.assoc-mkt-generator-port{height:auto;min-height:0;overflow:visible}.ad-generator-layout{grid-template-columns:1fr;min-height:0;overflow:visible}.ad-generator-rail{height:auto;overflow:visible;position:static}.ad-generator-workspace{height:auto;overflow:visible}.ad-generator-assoc-detail{-webkit-line-clamp:unset}.ad-generator-assoc-site{white-space:normal}}.assoc-mkt-steps{color:var(--text-secondary);padding-left:18px}.assoc-mkt-steps code{color:var(--accent)}.assoc-mkt-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.assoc-mkt-toolbar p{color:var(--text-muted);font-size:13px;margin:4px 0 0}.assoc-mkt-filter-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.assoc-mkt-studio-context,.assoc-mkt-concept-grid{display:grid;gap:10px}.assoc-mkt-studio-context{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px}.assoc-mkt-studio-context div,.assoc-mkt-concept-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:14px}.assoc-mkt-studio-context span{color:var(--text-muted);display:block;font-size:11px;margin-bottom:4px}.assoc-mkt-studio-context strong{color:var(--text-primary);display:block;font-size:14px}.assoc-mkt-studio-context p,.assoc-mkt-save-message{color:var(--text-secondary);font-size:13px;line-height:1.45;margin:5px 0 0}.assoc-mkt-concept-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.assoc-mkt-concept-card h4{color:var(--text-primary);font-size:15px;margin:12px 0 10px}.assoc-mkt-asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.assoc-mkt-asset-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;gap:8px;min-height:190px;padding:14px;text-align:left;transition:border-color .15s,background .15s}.assoc-mkt-asset-card:hover,.assoc-mkt-asset-card.selected{background:var(--bg-hover);border-color:var(--accent)}.assoc-mkt-card-head,.assoc-mkt-asset-card footer,.assoc-mkt-calendar-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.assoc-mkt-card-head span,.assoc-mkt-asset-card footer,.assoc-mkt-calendar-date span{color:var(--text-muted);font-size:12px}.assoc-mkt-card-head strong,.assoc-mkt-channel-pill,.assoc-mkt-asset-pill{border-radius:999px;font-size:11px;font-weight:800;padding:3px 8px}.assoc-mkt-card-head strong.ready{background:#22c55e1f;color:var(--green)}.assoc-mkt-card-head strong.draft{background:#f59e0b1f;color:#f59e0b}.assoc-mkt-asset-card h4{color:var(--text-primary);font-size:15px;margin:0}.assoc-mkt-asset-card p{color:var(--text-secondary);flex:1;font-size:13px;line-height:1.45;margin:0}.assoc-mkt-empty{color:var(--text-muted);margin:0}.assoc-mkt-asset-preview,.assoc-mkt-copy-output{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;margin-top:14px;padding:16px}.assoc-mkt-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.assoc-mkt-preview-head span{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.assoc-mkt-copy-block{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;margin-top:8px;padding:12px}.assoc-mkt-copy-block strong{color:var(--text-primary);font-size:12px}.assoc-mkt-copy-block p,.assoc-mkt-copy-output p,.assoc-mkt-muted{color:var(--text-secondary);font-size:13px;line-height:1.55;margin:6px 0 0}.assoc-mkt-preview-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.assoc-mkt-preview-meta span{background:var(--bg-secondary);border:1px solid var(--border);border-radius:999px;color:var(--text-muted);font-size:11px;padding:3px 8px}.assoc-mkt-form-field{color:var(--text-muted);display:flex;flex-direction:column;font-size:12px;gap:5px;margin-top:12px}.assoc-mkt-form-field input{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);padding:10px}.assoc-mkt-copy-steps{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.assoc-mkt-copy-steps span{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:12px;font-weight:700;padding:10px;text-align:center}.assoc-mkt-copy-output{margin-top:0}.assoc-mkt-copy-output .assoc-mkt-preview-head{align-items:flex-start;gap:12px}.assoc-mkt-copy-output small{color:var(--green);display:block;font-size:12px;margin-top:10px}.assoc-mkt-action-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.assoc-mkt-action-row.left{justify-content:flex-start}.assoc-mkt-copy-editor{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font:inherit;line-height:1.55;margin-top:14px;min-height:170px;padding:12px;resize:vertical;width:100%}.assoc-mkt-copy-editor:focus{border-color:var(--orange);box-shadow:0 0 0 2px #ee682329;outline:none}.assoc-mkt-date-field{color:var(--text-muted);display:flex;flex-direction:column;font-size:12px;gap:4px}.assoc-mkt-date-field input{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);padding:9px 10px}.assoc-mkt-calendar-list{display:flex;flex-direction:column;gap:8px}.assoc-mkt-calendar-row{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:12px}.assoc-mkt-calendar-row>div:nth-child(2){flex:1;min-width:0}.assoc-mkt-calendar-row p{color:var(--text-muted);font-size:12px;margin:3px 0 0}.assoc-mkt-calendar-date{display:flex;flex:0 0 86px;flex-direction:column}.assoc-mkt-channel-pill{background:#3ba7c91f;color:var(--accent)}.assoc-mkt-asset-pill{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary)}@media(max-width:900px){.assoc-mkt-header,.assoc-mkt-tool,.assoc-mkt-toolbar,.assoc-mkt-calendar-row,.assoc-mkt-preview-head{flex-direction:column;align-items:stretch}.assoc-mkt-grid,.assoc-mkt-preview-layout{grid-template-columns:1fr}}
