/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
@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-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--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;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:"Inter Variable", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-medium:500;--radius-md:calc(var(--radius) * .8);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Inter Variable", sans-serif;--default-mono-font-family:var(--font-mono);--color-border:var(--border)}}@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;-webkit-text-decoration:inherit;-webkit-text-decoration: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}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:Inter Variable,sans-serif}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.hidden\!{display:none!important}.inline-flex{display:inline-flex}.table{display:table}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.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}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.rounded-\[min\(var\(--radius-md\)\,8px\)\]{border-radius:min(var(--radius-md), 8px)}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-md{border-radius:calc(var(--radius) * .8)}.border{border-style:var(--tw-border-style);border-width:1px}.border-border{border-color:var(--border)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--background)}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-clip-padding{background-clip:padding-box}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-destructive{color:var(--destructive)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.underline-offset-4{text-underline-offset:4px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.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,)}.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))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.paused{animation-play-state:paused}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-destructive\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-md{border-radius:calc(var(--radius) * .8)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}@media (hover:hover){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");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}:root{--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--radius:.625rem;--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}:root{--pp-canvas:#eff4f7;--pp-surface:#fbfdfe;--pp-raised:#f2f7fa;--pp-text:#1e3342;--pp-muted:#536b7a;--pp-border:#d3e0e8;--pp-blue:#276a91;--pp-navy:#173b56;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scrollbar-gutter:stable}@supports (scrollbar-gutter:stable){html body[data-scroll-locked]{margin-right:0!important}}@supports not (scrollbar-gutter:stable){html{overflow-y:scroll}html:has(.design-page){overflow-y:hidden}}body{background:var(--pp-canvas);color:var(--pp-text);margin:0;font-family:Inter Variable,sans-serif}button,input,select{font:inherit;color:inherit}.number-stepper{border:1px solid var(--pp-border);background:var(--pp-input-bg,#fff);border-radius:6px;width:100%;min-width:0;height:36px;display:flex;overflow:hidden}.number-stepper>input{flex:1;width:100%;min-width:0;height:100%;padding:6px 9px;background:0 0!important;border:0!important;border-radius:0!important}.number-stepper>input[type=number]{appearance:textfield}.number-stepper>input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-stepper>input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-stepper-controls{border-left:1px solid var(--pp-border);display:flex}.number-stepper-arrows{flex-direction:column;width:20px;display:flex}.number-stepper-arrows button,.number-stepper-grip{color:var(--pp-muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;line-height:1}.number-stepper-arrows button{flex:1}.number-stepper-arrows button:hover,.number-stepper-grip:hover{background:var(--pp-raised);color:var(--pp-text)}.number-stepper-grip{border-left:1px solid var(--pp-border);touch-action:none;cursor:ns-resize;-webkit-user-select:none;user-select:none;width:17px;font-size:14px}.number-field{gap:5px;min-width:0;display:grid}.number-field>label{color:var(--pp-muted);font-size:11px;display:block}.units-row .number-field{grid-template-rows:minmax(30px,1fr) 36px}.part-row>.number-field{flex:1;min-width:0}.stock-fields .number-field,.stock-fields .number-field>label{font-size:10px}.number-stepper:focus-within{outline-offset:3px;outline:3px solid #276a91}.number-stepper>input:focus-visible{outline:none}button,a,input,select{outline-offset:3px}:focus-visible{outline:3px solid #276a91}.skip-link{z-index:5;background:#fff;padding:12px;position:absolute;top:0;left:-10000px}.skip-link:focus{left:12px}.app-shell{max-width:1160px;min-height:100vh;margin:0 auto;padding:0 28px 56px}.topbar{border-bottom:1px solid var(--pp-border);justify-content:space-between;align-items:center;gap:16px;height:74px;display:flex}.brand{color:var(--pp-navy);letter-spacing:-.4px;align-items:center;gap:11px;font-size:18px;text-decoration:none;display:flex}.brand img{width:34px;height:34px}.brand b{font-weight:750}.local-badge{border:1px solid var(--pp-border);color:var(--pp-muted);background:var(--pp-surface);border-radius:20px;padding:7px 11px;font-size:12px}.hero{border-bottom:1px solid var(--pp-border);padding:57px 0 45px}.eyebrow{letter-spacing:1.2px;color:var(--pp-blue);margin:0 0 9px;font-size:11px;font-weight:750}.hero h1{letter-spacing:-2px;color:var(--pp-navy);margin:0 0 12px;font-size:clamp(34px,5vw,53px);line-height:1.08}.hero>p:not(.eyebrow){color:var(--pp-muted);max-width:560px;margin:0;font-size:16px}.entry-actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.primary,.secondary{cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:11px 16px;font-weight:650;text-decoration:none;display:inline-flex}.primary{background:var(--pp-blue);color:#fff}.primary:hover{background:#174a6b}.secondary{background:var(--pp-surface);border-color:var(--pp-border);color:var(--pp-navy)}.secondary:hover{background:var(--pp-raised)}.secondary small{color:var(--pp-muted);font-size:11px;font-weight:500}.availability{color:var(--pp-muted);gap:24px;margin-top:21px;font-size:12px;display:flex}.availability span{align-items:center;gap:7px;display:flex}.availability b{color:var(--pp-text);font-weight:600}.dot{background:#49634e;border-radius:50%;width:8px;height:8px}.dot.planned{background:#936326}.project-section{padding-top:34px}.section-heading,.panel-title{justify-content:space-between;align-items:center;gap:14px;display:flex}.section-heading h2,.panel h2{color:var(--pp-navy);margin:0;font-size:20px}.import-button{cursor:pointer;position:relative}.import-button input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:20px;display:grid}.panel{background:var(--pp-surface);border:1px solid var(--pp-border);border-radius:12px;padding:19px}.muted{color:var(--pp-muted);font-size:13px}.text-link,.back-link{color:var(--pp-blue);font-size:13px;font-weight:650;text-decoration:none}.empty-state{text-align:center;background:#f6fafc;border:1px dashed #b8cbd7;border-radius:12px;margin-top:21px;padding:42px 20px}.empty-mark{color:var(--pp-blue);font-size:31px}.empty-state h3{margin:6px}.empty-state p{color:var(--pp-muted);margin:7px 0 18px;font-size:13px}.workspace{padding-bottom:45px}.workspace-head{border-bottom:1px solid var(--pp-border);justify-content:space-between;align-items:flex-end;padding:24px 0 19px;display:flex}.workspace-head h1{color:var(--pp-navy);margin:6px 0 0;font-size:25px}.project-name{background:0 0;border:0;width:min(480px,70vw);padding:5px 0;font-size:25px;font-weight:750;display:block}.tabs{gap:6px;display:flex}.tab{color:var(--pp-muted);border-radius:8px;padding:10px 14px;font-size:13px;font-weight:650;text-decoration:none}.tab.active{color:var(--pp-navy);box-shadow:inset 0 -2px var(--pp-blue);background:#e5f0f6}.tab span{margin-left:5px;font-size:10px}.workspace-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);align-items:start;gap:18px;padding-top:20px;display:grid}.editor-column{gap:16px;display:grid}.panel-title{margin-bottom:18px}.compact{min-height:36px;padding:8px 11px;font-size:12px}.settings-tabs{border-bottom:1px solid var(--pp-border);gap:4px;margin-bottom:12px;display:flex}.settings-tab{color:var(--pp-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 11px;font-size:12px;font-weight:650}.settings-tab.active{color:var(--pp-text);border-bottom-color:var(--pp-blue)}.settings-tab:focus-visible{outline:2px solid var(--pp-blue);outline-offset:2px}.units-row{background:var(--pp-raised);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:10px;display:grid}.currency-row{grid-template-columns:repeat(2,minmax(0,1fr))}.units-row>label,.part-row label,.material-row label{color:var(--pp-muted);flex:1;gap:5px;min-width:0;font-size:11px;display:grid}.units-row>label{grid-template-rows:minmax(30px,1fr) 36px}.units-row input,.units-row select,.part-row input,.material-row input{border:1px solid var(--pp-border);background:#fff;border-radius:6px;width:100%;min-width:0;height:36px;padding:6px 9px}.parts-list{gap:8px;margin-top:12px;display:grid}.part-row{align-items:end;gap:10px;display:flex}.part-row>button,.material-row>button{color:var(--pp-muted);cursor:pointer;background:0 0;border:0;height:36px;font-size:21px}.material-row{border-top:1px solid var(--pp-border);align-items:end;gap:10px;padding:10px 0;display:flex}.material-row>input{align-self:end;width:125px}.result-panel{position:sticky;top:14px}.result-panel h2{margin-bottom:20px}.cost-total{background:#e5f0f6;border-radius:8px;flex-direction:column;gap:5px;padding:15px;display:flex}.cost-total span{color:var(--pp-muted);font-size:12px}.cost-total strong{color:var(--pp-navy);font-variant-numeric:tabular-nums;font-size:28px}.result-panel h3{margin:22px 0 8px;font-size:14px}.plan-row{border-top:1px solid var(--pp-border);gap:5px;padding:11px 0;font-size:12px;display:grid}.plan-row span,.plan-row small{color:var(--pp-muted)}.warning{color:#694814;background:#fff3d9;border-radius:7px;padding:10px;font-size:13px}.design-layout{grid-template-columns:minmax(0,1fr) 285px;gap:16px;padding-top:20px;display:grid}.design-viewport{border:1px solid var(--pp-border);background:#e8f0f4;border-radius:12px;place-items:center;height:min(65vh,590px);min-height:360px;display:grid;position:relative;overflow:hidden}.viewport-grid{background-image:linear-gradient(#276a9110 1px,#0000 1px),linear-gradient(90deg,#276a9110 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.viewport-center{text-align:center;color:var(--pp-navy);position:relative}.cube-mark{color:#276a91;font-size:62px}.viewport-center p{margin:2px;font-weight:700}.viewport-center small{color:var(--pp-muted)}.axis-label{letter-spacing:1px;color:var(--pp-muted);font-size:10px;position:absolute;top:15px;left:16px}.design-side{background:var(--pp-surface);border:1px solid var(--pp-border);border-radius:12px;padding:20px}.design-side h2{color:var(--pp-navy);font-size:18px}.design-side p:not(.eyebrow){color:var(--pp-muted);font-size:13px;line-height:1.6}.reserved-area{text-align:center;min-height:125px;color:var(--pp-muted);border:1px dashed #b8cbd7;border-radius:8px;place-items:center;margin:22px 0;font-size:12px;display:grid}.link-button{width:100%;font-size:12px}.workspace-actions{align-items:center;gap:8px;display:flex}.material-card{border-top:1px solid var(--pp-border);padding:12px 0}.material-heading,.stock-editor-head{justify-content:space-between;align-items:end;gap:12px;display:flex}.material-heading label{color:var(--pp-muted);gap:5px;width:min(360px,70%);font-size:11px;display:grid}.material-heading input,.stock-fields input,.stock-fields select,.part-row select{border:1px solid var(--pp-border);background:#fff;border-radius:6px;width:100%;min-width:0;height:36px;padding:6px 9px}.text-button{color:var(--pp-blue);cursor:pointer;background:0 0;border:0;padding:6px;font-size:11px}.stock-editor{background:var(--pp-raised);border-radius:8px;margin:10px 0;padding:12px}.stock-editor-head{margin-bottom:8px;font-size:12px}.stock-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.stock-fields label{color:var(--pp-muted);gap:4px;min-width:0;font-size:10px;display:grid}.shopping-row{border-top:1px solid var(--pp-border);gap:4px;padding:10px 0;font-size:11px;display:grid}.shopping-row span{color:var(--pp-muted)}.plan-card{border-top:1px solid var(--pp-border);padding:8px 0}.cut-diagram{width:100%;height:auto;margin:2px 0;display:block}.diagram-legend{color:var(--pp-muted);flex-wrap:wrap;gap:5px 10px;font-size:10px;display:flex}.offcut{color:var(--pp-navy);font-weight:700}@media (width<=760px){.app-shell{padding:0 16px 35px}.hero{padding:40px 0 30px}.project-grid,.workspace-grid,.design-layout{grid-template-columns:1fr}.result-panel{position:static}.design-viewport{height:48vh;min-height:280px}.design-side{order:-1}.section-heading{align-items:flex-start}.units-row{grid-template-columns:repeat(2,minmax(0,1fr))}.units-row label{min-width:0}.material-row{flex-wrap:wrap}.material-row>input{width:100%}.part-row{flex-wrap:wrap;align-items:stretch}.part-row label{min-width:27%}.workspace-head{flex-direction:column;align-items:flex-start;gap:15px}.tabs{width:100%}.tab{text-align:center;flex:1}.local-badge{font-size:10px}.topbar>strong{display:none}}.import-backup{cursor:pointer;position:relative;overflow:hidden}.import-backup input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.grain-lock{color:var(--pp-muted);align-items:center;gap:6px;font-size:11px;display:flex}.sheet-diagram{object-fit:contain;border:1px solid var(--pp-border);background:#f6fafc;border-radius:6px;width:100%;max-height:480px;display:block}.sheet-plan .muted{margin:8px 0}@media (width<=760px){.workspace-actions{flex-wrap:wrap;width:100%}.workspace-actions>.compact{flex:1}.sheet-diagram{max-height:340px}.part-row label{min-width:42%}}@media (width>=761px) and (width<=1000px){.workspace-head{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;display:grid}.workspace-head>div:first-child{min-width:0}.workspace-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;display:grid}.workspace-actions>.compact{white-space:nowrap;justify-content:center;min-width:0;padding-inline:8px}.workspace-actions>.tabs{grid-column:1/-1;width:100%;min-width:0}}@media (width>=761px) and (width<=900px){.workspace-grid{grid-template-columns:minmax(0,1fr)}.result-panel{position:static}}@media print{body{color:#172b37;background:#fff}.app-shell{max-width:none;min-height:0;padding:0}.topbar,.editor-column,.workspace-actions,.back-link,.tabs,.local-badge,.workspace-head .notes-field,.plan-actions{display:none!important}.workspace-head{border-bottom:1px solid #687b86;padding:0 0 12px}.workspace-head>div:first-child{width:100%}.project-name{width:100%;font-size:22px}.workspace-grid{padding:0;display:block}.result-panel{border:0;padding:0;position:static}.panel{break-inside:avoid;background:#fff;border-color:#aebbc1}.plan-card,.shopping-row,.cost-total{break-inside:avoid}.sheet-diagram,.cut-diagram{-webkit-print-color-adjust:exact;print-color-adjust:exact;max-width:100%}.warning{color:#49350f;background:#fff;border:1px solid #936326}.muted{color:#405560!important}a{color:inherit;text-decoration:none}@page{margin:14mm}}.primary,.secondary,[data-slot=button][data-variant=default],[data-slot=button][data-variant=outline],[data-slot=button][data-variant=secondary]{isolation:isolate;border-radius:9px;transition:background-color .14s,border-color .14s,color .14s,box-shadow .14s;position:relative}.primary:after,.secondary:after,.project-navigation-back:after,.project-info-icon:after,[data-slot=button][data-variant=default]:after,[data-slot=button][data-variant=outline]:after,[data-slot=button][data-variant=secondary]:after{content:"";z-index:0;opacity:.48;pointer-events:none;background-color:#0000;background-image:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor);background-position:0 0,0 0,100% 100%,100% 100%;background-repeat:no-repeat;background-size:7px 1px,1px 7px,7px 1px,1px 7px;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;border-radius:4px;position:absolute;inset:4px}.primary,[data-slot=button][data-variant=default]{background-color:var(--pp-blue);border-color:var(--pp-blue);color:#fff;box-shadow:inset 0 0 0 1px #ffffff1a,0 1px 2px #173b561f}.primary:hover,[data-slot=button][data-variant=default]:hover:not(:disabled){background-color:#174a6b;border-color:#174a6b;box-shadow:inset 0 0 0 1px #ffffff21,0 2px 5px #173b562e}.secondary,[data-slot=button][data-variant=outline],[data-slot=button][data-variant=secondary]{background-color:var(--pp-surface);color:var(--pp-navy);border:1px solid #9eb8c8;box-shadow:inset 0 0 0 1px #276a910d}.secondary:hover,[data-slot=button][data-variant=outline]:hover:not(:disabled),[data-slot=button][data-variant=secondary]:hover:not(:disabled){border-color:var(--pp-blue);background-color:#eaf3f8;box-shadow:inset 0 0 0 1px #276a911f}[data-slot=button][data-variant=ghost],[data-slot=button][data-variant=link]{color:var(--pp-blue)}[data-slot=button][data-variant=ghost]:hover:not(:disabled){color:var(--pp-navy);background-color:#eaf3f8}[data-slot=button][data-variant=destructive]{color:#8b332b;background-color:#fff8f7;border-color:#d9aaa5}[data-slot=button][data-variant=destructive]:hover:not(:disabled){color:#78261f;background-color:#fff1ef;border-color:#c9857e}.primary:active,.secondary:active,[data-slot=button]:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 1px 2px #173b5629}.primary:focus-visible,.secondary:focus-visible,[data-slot=button]:focus-visible{outline:3px solid var(--pp-navy);outline-offset:3px;box-shadow:0 0 0 2px var(--pp-surface)}.primary:disabled,.secondary:disabled,[data-slot=button]:disabled,[data-slot=button][aria-disabled=true],.primary[aria-disabled=true],.secondary[aria-disabled=true]{cursor:not-allowed;opacity:.55;box-shadow:none}.secondary small{color:#536b7a}.compact{border-radius:8px}.link-button{min-height:44px}.card-actions button,.text-button{min-height:32px;color:var(--pp-blue);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:6px 9px;font-weight:600;line-height:1.25;transition:background-color .14s,border-color .14s,color .14s}.card-actions button:hover,.text-button:hover{color:var(--pp-navy);background:#eaf3f8;border-color:#c2d5e0}.card-actions button[aria-label^=Delete],.text-button[aria-label^=Remove]{color:#8b332b}.card-actions button[aria-label^=Delete]:hover,.text-button[aria-label^=Remove]:hover{color:#78261f;background:#fff1ef;border-color:#d9aaa5}.card-actions button:focus-visible,.text-button:focus-visible,.part-row>button:focus-visible{outline:3px solid var(--pp-navy);outline-offset:2px}.part-row>button{isolation:isolate;border:1px solid var(--pp-border);background:var(--pp-surface);color:#8b332b;border-radius:7px;flex:0 0 36px;width:36px;min-width:36px;min-height:36px;line-height:1;transition:background-color .14s,border-color .14s;position:relative}.part-row>button:hover{background:#fff1ef;border-color:#d9aaa5}:is(.import-button:has(input:focus-visible),.import-backup:has(input:focus-visible)){outline:3px solid var(--pp-navy);outline-offset:3px}@media (prefers-reduced-motion:reduce){.primary,.secondary,.card-actions button,.text-button,.part-row>button{transition:none}}@media (width<=760px){.workspace-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workspace-actions>.compact{flex:initial;min-height:44px}.workspace-actions>.tabs{grid-column:1/-1;width:100%}}@media (forced-colors:active){.primary,.secondary,[data-slot=button],.card-actions button,.text-button,.part-row>button{forced-color-adjust:auto;color:buttontext;box-shadow:none;background:buttonface;border:1px solid buttontext}.primary:after,.secondary:after,[data-slot=button]:after{display:none}.primary:focus-visible,.secondary:focus-visible,[data-slot=button]:focus-visible,.card-actions button:focus-visible,.text-button:focus-visible,.part-row>button:focus-visible{outline-offset:3px;box-shadow:none;outline:2px solid highlight}.import-button:has(input:focus-visible){outline-offset:3px;box-shadow:none;outline:2px solid highlight}.import-backup:has(input:focus-visible){outline-offset:3px;box-shadow:none;outline:2px solid highlight}.primary:disabled,.secondary:disabled,[data-slot=button]:disabled,[data-slot=button][aria-disabled=true],.primary[aria-disabled=true],.secondary[aria-disabled=true]{color:graytext;border-color:graytext}}:root{--pp-canvas:#eff4f7;--pp-surface:#fbfdfe;--pp-raised:#f2f7fa;--pp-text:#1e3342;--pp-muted:#536b7a;--pp-border:#d3e0e8;--pp-blue:#276a91;--pp-navy:#173b56;--pp-input-bg:#fff;--pp-hover:#eaf3f8;--pp-soft-blue:#e5f0f6;--pp-grid:#276a9114;--pp-warning-bg:#fff3d9;--pp-warning-text:#694814;--pp-danger-bg:#fff8f7;--pp-danger-border:#d9aaa5;--pp-danger:#8b332b;--pp-focus:#173b56;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.dark{--background:#111a20;--foreground:#e4edf2;--card:#1a2831;--card-foreground:#e4edf2;--popover:#1a2831;--popover-foreground:#e4edf2;--primary:#91c8e7;--primary-foreground:#132b3a;--secondary:#263842;--secondary-foreground:#dbe8ef;--muted:#263842;--muted-foreground:#a2b5c1;--accent:#2b414e;--accent-foreground:#e4edf2;--destructive:#f1988b;--border:#344854;--input:#3a505d;--ring:#83bfe0;--sidebar:#1a2831;--sidebar-foreground:#e4edf2;--sidebar-primary:#91c8e7;--sidebar-primary-foreground:#132b3a;--sidebar-accent:#263842;--sidebar-accent-foreground:#e4edf2;--sidebar-border:#344854;--sidebar-ring:#83bfe0;--pp-canvas:#111a20;--pp-surface:#1a2831;--pp-raised:#22343e;--pp-text:#e4edf2;--pp-muted:#a2b5c1;--pp-border:#344854;--pp-blue:#80badb;--pp-navy:#c1d8e5;--pp-input-bg:#192830;--pp-hover:#2b414e;--pp-soft-blue:#243a47;--pp-grid:#80badb1c;--pp-warning-bg:#49391f;--pp-warning-text:#f1d294;--pp-danger-bg:#3b2829;--pp-danger-border:#754a49;--pp-danger:#f0a39a;--pp-focus:#91c8e7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.dark .topbar-tools,.topbar-tools{align-items:center;gap:10px;display:flex}.topbar>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.segmented-control.theme-picker{border:1px solid var(--pp-border);background:var(--pp-raised);border-radius:9px;flex:none;align-items:center;gap:2px;min-height:0;padding:3px;display:inline-flex;overflow:visible}.theme-picker .segmented-control-option{box-sizing:border-box;width:34px;min-width:34px;height:32px;min-height:32px;color:var(--pp-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:4px 7px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.theme-picker .segmented-control-option~.segmented-control-option{border-left:1px solid #0000}.theme-picker .segmented-control-option svg{width:14px;height:14px}@media (hover:hover){.theme-picker .segmented-control-option:hover{background:var(--pp-hover);color:var(--pp-text)}}.theme-picker .segmented-control-option[aria-checked=true]{border-color:var(--pp-border);background:var(--pp-surface);color:var(--pp-navy);box-shadow:0 1px 2px #0000001a}.theme-picker .segmented-control-option:focus-visible{outline:3px solid var(--pp-focus);outline-offset:2px}.dark .secondary,.dark [data-slot=button][data-variant=outline],.dark [data-slot=button][data-variant=secondary]{border-color:var(--pp-border)}.dark .primary,.dark [data-slot=button][data-variant=default]{color:var(--primary-foreground)}.dark .primary:hover,.dark [data-slot=button][data-variant=default]:hover:not(:disabled){background-color:#6ca7ca;border-color:#6ca7ca}.dark .secondary:hover,.dark [data-slot=button][data-variant=outline]:hover:not(:disabled),.dark [data-slot=button][data-variant=secondary]:hover:not(:disabled),.dark [data-slot=button][data-variant=ghost]:hover:not(:disabled),.dark .card-actions button:hover,.dark .text-button:hover{background-color:var(--pp-hover);border-color:#547083}.dark [data-slot=button][data-variant=destructive]{border-color:var(--pp-danger-border);background-color:var(--pp-danger-bg);color:var(--pp-danger)}.dark [data-slot=button][data-variant=destructive]:hover:not(:disabled){color:#ffd0c9;background-color:#4b3031;border-color:#94605c}.dark .card-actions button[aria-label^=Delete],.dark .text-button[aria-label^=Remove],.dark .part-row>button{color:var(--pp-danger)}.dark .card-actions button[aria-label^=Delete]:hover,.dark .text-button[aria-label^=Remove]:hover,.dark .part-row>button:hover{color:#ffd0c9;background:#4b3031;border-color:#94605c}.dark .primary:focus-visible,.dark .secondary:focus-visible,.dark [data-slot=button]:focus-visible,.dark .card-actions button:focus-visible,.dark .text-button:focus-visible,.dark .part-row>button:focus-visible{outline-color:var(--pp-focus);box-shadow:0 0 0 2px var(--pp-surface)}.dark .empty-state{background:var(--pp-surface);border-color:var(--pp-border)}.dark .tab.active,.dark .cost-total{background:var(--pp-soft-blue)}.dark .warning{background:var(--pp-warning-bg);color:var(--pp-warning-text)}.dark .viewport-grid{background-image:linear-gradient(var(--pp-grid) 1px, transparent 1px), linear-gradient(90deg, var(--pp-grid) 1px, transparent 1px)}.dark .reserved-area,.dark .empty-state{border-color:var(--pp-border)}.dark .units-row input,.dark .units-row select,.dark .part-row input,.dark .part-row select,.dark .material-row input,.dark .material-heading input,.dark .stock-fields input,.dark .stock-fields select,.dark .notes-field textarea{background:var(--pp-input-bg);border-color:var(--pp-border);color:var(--pp-text)}.cutlist-workspace-head{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px;padding-bottom:16px;display:grid}.cutlist-page .project-navigation{margin-bottom:0}.cutlist-workspace-head{padding-top:16px}.cutlist-title-row{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.cutlist-title-row .project-name{width:min(480px,100%)}.cutlist-action-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.cutlist-action-row .tabs{width:auto}.cutlist-export-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.project-info-overlay{z-index:100;background:#0e1d278c;animation:.14s ease-out project-info-fade;position:fixed;inset:0}.project-info-dialog{z-index:101;background:var(--pp-surface);width:min(620px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--pp-text);border:1px solid var(--pp-border);border-radius:14px;padding:24px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 24px 70px #0a1c2847}.project-info-title{color:var(--pp-navy);margin:0;font-size:20px}.project-info-description{color:var(--pp-muted);margin:6px 0 14px;font-size:13px}.project-info-dialog textarea{resize:vertical;border:1px solid var(--pp-border);background:var(--pp-surface);width:100%;min-height:180px;color:var(--pp-text);font:inherit;border-radius:8px;padding:11px 12px;line-height:1.5;display:block}.parts-editor-panel{container:parts-panel/inline-size}.parts-panel-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.parts-add-controls{align-items:center;gap:8px;min-width:0;display:flex}.parts-add-controls>.pp-select-trigger{width:min(170px,100%);min-width:0}.parts-add-controls>.primary{white-space:nowrap;flex-shrink:0}.project-settings{opacity:1;grid-template-rows:1fr;transition:grid-template-rows .22s,opacity .18s;display:grid}.project-settings.collapsed{opacity:0;grid-template-rows:0fr}.project-settings-content{min-height:0;overflow:hidden}@keyframes project-info-fade{0%{opacity:0}to{opacity:1}}.dark .project-info-dialog textarea{background:var(--pp-input-bg)}@media (width<=760px){.cutlist-export-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.cutlist-export-actions>.compact{white-space:normal;text-align:center;min-width:0}.project-info-dialog{padding:18px}.project-info-dialog textarea{min-height:180px}}@container parts-panel (width<=660px){.parts-editor-panel .panel-title:has(.parts-panel-actions){flex-direction:column;align-items:stretch;gap:14px}.parts-panel-actions{grid-template-columns:auto minmax(0,1fr);align-items:center;width:100%;display:grid}.parts-add-controls{grid-template-columns:minmax(0,1fr) auto;width:100%;display:grid}.parts-add-controls>.pp-select-trigger{width:100%}}@container parts-panel (width<=440px){.parts-panel-actions{grid-template-columns:minmax(0,1fr)}.parts-panel-actions>.secondary{justify-self:start}.parts-add-controls{grid-template-columns:minmax(0,1fr) auto}}@media (prefers-reduced-motion:reduce){.project-settings{transition:none}}@media print{.project-info-overlay,.project-info-dialog{display:none!important}}.dark .sheet-diagram{background:var(--pp-raised)}.dark .cut-diagram .stock-outline,.dark .sheet-diagram .stock-outline{fill:var(--pp-soft-blue);stroke:#7994a5}.dark .cut-diagram .part-block,.dark .sheet-diagram .part-block{fill:#276a91;stroke:#d7e7ef}@media (width<=760px){.topbar{flex-wrap:wrap;height:auto;min-height:74px;padding:12px 0}.topbar-tools{gap:6px;margin-left:auto}.topbar-tools .local-badge{padding:6px 8px}.theme-picker .segmented-control-option{width:32px;min-width:32px;padding-inline:5px}.topbar>strong{display:none}}@media print{.dark{--pp-canvas:#fff;--pp-surface:#fff;--pp-raised:#f6fafc;--pp-text:#172b37;--pp-muted:#405560;--pp-border:#aebbc1;--pp-blue:#276a91;--pp-navy:#173b56;--pp-input-bg:#fff;--pp-soft-blue:#e5f0f6;--pp-warning-bg:#fff;--pp-warning-text:#49350f}body,.dark body{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#172b37!important;background:#fff!important}.dark .panel,.dark .design-side,.dark .sheet-diagram{color:#172b37!important;background:#fff!important}.dark .warning{color:#49350f!important;background:#fff!important}}.pp-select-trigger{border:1px solid var(--pp-border);background:var(--pp-input-bg,#fff);width:100%;min-width:0;height:36px;color:var(--pp-text);font:inherit;text-align:left;cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:6px 9px;font-size:12px;display:flex}.pp-select-trigger:focus-visible{outline:2px solid var(--pp-focus,var(--pp-blue));outline-offset:2px}.pp-select-trigger:disabled{opacity:.58;cursor:not-allowed}.pp-select-trigger[data-state=open]{border-color:var(--pp-blue)}.pp-select-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pp-select-chevron{width:16px;height:16px;color:var(--pp-muted);flex:none;place-items:center;display:grid}.pp-select-chevron svg{stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;display:block}.pp-select-trigger[data-state=open] .pp-select-chevron svg{transform:rotate(180deg)}.pp-select-content{z-index:1000;width:var(--radix-popover-trigger-width);max-height:var(--radix-popover-content-available-height);border:1px solid var(--pp-border);background:var(--pp-surface);color:var(--pp-text);border-radius:8px;overflow:hidden;box-shadow:0 8px 24px #102b3b2b}.pp-select-viewport{max-height:var(--radix-popover-content-available-height);padding:4px;overflow-y:auto}.pp-select-item{min-height:34px;color:var(--pp-text);cursor:pointer;border-radius:5px;outline:none;align-items:center;padding:6px 30px 6px 9px;font-size:12px;display:flex;position:relative}.pp-select-item[data-active=true],.pp-select-item:hover{background:var(--pp-raised);color:var(--pp-navy)}.pp-select-indicator{color:var(--pp-blue);position:absolute;right:9px}.dark .pp-select-trigger{background:var(--pp-input-bg)}.materials-panel-title{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;display:grid}.materials-panel-title>.material-form-toggle{justify-self:start;width:auto}.stable-toggle-label{display:inline-grid}.stable-toggle-label:after{content:attr(data-width-label);visibility:hidden;height:0;overflow:hidden}.material-form-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px;transition:transform .12s}.material-form-toggle svg.is-expanded{transform:rotate(180deg)}.material-heading>label:first-child{grid-area:1/1;width:auto;max-width:none}.material-heading>.quick-actions-trigger{grid-area:1/3;align-self:end;width:42px;height:38px}.stock-creation-form{border:1px solid var(--pp-border);background:var(--pp-raised);border-radius:8px;gap:10px;margin:12px 0;padding:12px;display:grid}.stock-creation-form label{min-width:0;color:var(--pp-muted);gap:5px;font-size:11px;display:grid}.stock-creation-form input{box-sizing:border-box;border:1px solid var(--pp-border);background:var(--pp-surface);width:100%;min-width:0;min-height:36px;color:var(--pp-text);font:inherit;border-radius:6px;padding:6px 9px;font-size:12px}.stock-creation-form input[aria-invalid=true]{border-color:var(--pp-danger)}.stock-creation-heading{color:var(--pp-navy);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.stock-creation-material-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.stock-type-fieldset{border:0;min-width:0;margin:0;padding:0}.stock-type-fieldset legend{color:var(--pp-muted);margin-bottom:6px;font-size:11px}.stock-source-fieldset{align-self:start;min-width:0}.segmented-control{border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:6px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;min-height:36px;display:grid;overflow:hidden}.segmented-control button{min-width:0;color:var(--pp-muted);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:6px 8px;font-size:11px;display:flex}.segmented-control-option~.segmented-control-option{border-left:1px solid var(--pp-border)}.segmented-control button[aria-checked=true]{background:var(--pp-raised);color:var(--pp-text);box-shadow:inset 0 0 0 1px var(--pp-focus)}.segmented-control button:focus-visible{z-index:1;outline:2px solid var(--pp-focus);outline-offset:-2px;position:relative}.segmented-control svg{flex:none;width:15px;height:15px}.material-heading .stock-type-fieldset legend{margin-bottom:4px}.segmented-control-icon-only{width:max-content}.segmented-control-icon-only button{width:42px;height:36px;padding:6px}.segmented-control-icon-only svg{width:23px;height:23px}.material-type-toggle button[aria-checked=true] .material-type-icon-face{fill:currentColor;fill-opacity:.16}.material-type-fieldset[data-disabled] .material-type-toggle{border-style:dashed}.material-type-fieldset[data-disabled] .material-type-toggle button{opacity:1;color:var(--pp-muted);cursor:not-allowed}.material-type-fieldset[data-disabled] .material-type-toggle button[aria-checked=true]{background:var(--pp-raised);color:var(--pp-text);box-shadow:inset 0 0 0 1px var(--pp-border)}.material-type-fieldset[data-disabled] .material-type-toggle button[aria-checked=false] svg{opacity:.45}.material-type-lock{vertical-align:middle;color:var(--pp-muted);cursor:help;border-radius:2px;margin-left:5px;display:inline-flex}.material-type-lock svg{width:12px;height:12px}.material-type-lock:focus-visible{outline:2px solid var(--pp-focus);outline-offset:2px}@media (forced-colors:active){.segmented-control button[aria-checked=true]{outline-offset:-3px;outline:2px solid highlight}}.stock-creation-controls{grid-template-columns:minmax(130px,.8fr) minmax(130px,.8fr) minmax(220px,1.5fr);align-items:end;gap:8px;transition:grid-template-columns .2s;display:grid}.stock-creation-controls-preset{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.stock-creation-preset{grid-column:auto}.stock-source-custom-fields{grid-column:2/-1;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;display:grid}.stock-source-detail{animation:.18s cubic-bezier(.2,0,0,1) both stock-source-enter}@keyframes stock-source-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.stock-creation-dimensions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.field-error{color:var(--pp-danger);margin:0;font-size:11px;line-height:1.5}@media (width<=650px){.stock-creation-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-creation-controls-preset{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.stock-creation-preset{grid-column:auto}.stock-source-custom-fields{grid-column:1/-1}.stock-creation-dimensions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.stock-creation-controls,.stock-creation-dimensions{grid-template-columns:minmax(0,1fr)}.stock-creation-preset,.stock-source-custom-fields,.stock-creation-dimensions{grid-column:auto}}@media (prefers-reduced-motion:reduce){.stock-creation-controls{transition:none}.stock-source-detail{animation:none}}.reorderable-row{position:relative}.material-card.reorderable-row{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px;display:grid}.material-card-content,.stock-editor-content{min-width:0}.stock-editor.reorderable-row{grid-template-columns:24px minmax(0,1fr);align-items:start;gap:8px;display:grid}.stock-editor-head{align-items:center}.reorder-handle{width:28px;height:32px;color:var(--pp-muted);cursor:grab;touch-action:none;background:0 0;border:1px solid #0000;border-radius:6px;flex:none;margin:2px 0 0;font-size:17px;line-height:1}.stock-editor .reorder-handle{width:24px}.reorder-handle:hover{background:var(--pp-raised);color:var(--pp-text)}.reorder-handle:active{cursor:grabbing}.reorder-handle:focus-visible,.quick-actions-trigger:focus-visible{outline:2px solid var(--pp-focus);outline-offset:2px}.quick-actions-trigger{border:1px solid var(--pp-border);background:var(--pp-surface);width:34px;height:32px;color:var(--pp-text);letter-spacing:1px;cursor:pointer;border-radius:6px;flex:none;font-size:15px}.quick-actions-trigger:hover{border-color:var(--pp-focus);background:var(--pp-raised)}.quick-actions-menu{z-index:1000;border:1px solid var(--pp-border);background:var(--pp-surface);min-width:150px;color:var(--pp-text);border-radius:8px;padding:5px;box-shadow:0 8px 24px #0003}.quick-actions-menu [role=menuitem]{cursor:pointer;border-radius:5px;outline:none;align-items:center;min-height:34px;padding:6px 9px;font-size:12px;display:flex}.quick-actions-menu [role=menuitem]:focus,.quick-actions-menu [role=menuitem]:hover{background:var(--pp-raised)}.quick-actions-menu [role=menuitem][data-disabled]{opacity:.45;cursor:not-allowed}.quick-actions-menu [role=separator]{background:var(--pp-border);height:1px;margin:4px}.quick-actions-menu .destructive-action{color:var(--pp-danger)}.reorderable-row.drop-target{outline:2px solid var(--pp-focus);outline-offset:1px;border-radius:8px}.part-row.reorderable-row{border-radius:8px;padding:4px}.part-row.reorderable-row.drop-target{background:var(--pp-raised)}.part-row.reorderable-row .reorder-handle,.part-row.reorderable-row .quick-actions-trigger{align-self:flex-end}.design-page{max-width:1680px}.app-shell.design-page{flex-direction:column;height:100dvh;min-height:0;padding-bottom:12px;display:flex}.design-page .project-navigation{flex:none;margin-bottom:8px}.design-workspace{grid-template-columns:minmax(0,1fr) 300px;gap:12px;min-height:min(760px,100vh - 180px);padding-top:16px;display:grid}.design-tool-rail,.design-info-rail{border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:10px;min-width:0}.design-tool-rail{box-sizing:border-box;z-index:5;overscroll-behavior:contain;border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:9px;flex-direction:column;align-items:center;gap:3px;width:54px;max-height:calc(100% - 24px);padding:5px;display:flex;position:absolute;top:12px;left:12px;overflow:hidden auto}@supports (color:color-mix(in lab, red, red)){.design-tool-rail{background:color-mix(in srgb, var(--pp-surface) 94%, transparent)}}.design-tool-rail{pointer-events:none;box-shadow:0 4px 14px #102a3b20}.pp-scrollbar{scrollbar-width:thin;scrollbar-color:var(--pp-muted) var(--pp-raised)}.pp-scrollbar::-webkit-scrollbar{width:7px}.pp-scrollbar::-webkit-scrollbar-track{background:var(--pp-raised);border-radius:999px;margin:5px 2px}@supports (color:color-mix(in lab, red, red)){.pp-scrollbar::-webkit-scrollbar-track{background:color-mix(in srgb, var(--pp-raised) 75%, transparent)}}.pp-scrollbar::-webkit-scrollbar-thumb{background:var(--pp-muted);background-clip:padding-box;border:2px solid #0000;border-radius:999px;min-height:28px}.pp-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--pp-navy);background-clip:padding-box}.design-tool{width:34px;min-height:34px;color:var(--pp-muted);cursor:pointer;pointer-events:auto;background:0 0;border:1px solid #0000;border-radius:7px;flex:0 0 34px;place-items:center;padding:0;display:grid}.design-tool-icon{color:currentColor;place-items:center;width:24px;height:24px;display:grid}.design-tool-icon svg{width:20px;height:20px;color:inherit;display:block;overflow:visible}.design-tool small{display:none}.design-tool.is-active,.design-tool:hover{border-color:var(--pp-border);background:var(--pp-raised);color:var(--pp-navy)}.design-tool:disabled{opacity:.46;cursor:not-allowed}.design-canvas-panel{border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:10px;grid-template-rows:auto minmax(0,1fr) auto;width:100%;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.design-view-controls{border-bottom:1px solid var(--pp-border);flex-wrap:wrap;align-items:center;gap:5px;padding:8px;display:flex}.design-view-controls>button{border:1px solid var(--pp-border);background:var(--pp-surface);min-height:30px;color:var(--pp-text);font:inherit;cursor:pointer;border-radius:6px;padding:5px 8px;font-size:10px}.design-view-controls>button[aria-pressed=true]{border-color:var(--pp-blue);background:var(--pp-raised);color:var(--pp-navy)}.design-view-controls>button:focus-visible,.design-tool:focus-visible,.design-info-rail button:focus-visible{outline:2px solid var(--pp-blue);outline-offset:2px}.design-control-separator{background:var(--pp-border);width:1px;height:20px;margin:0 2px}.design-viewport{background:#edf3f5;border:0;border-radius:0;width:100%;height:100%;min-height:0;display:block;position:relative;overflow:hidden}.design-viewport-canvas,.design-canvas{inset:0;width:100%!important;height:100%!important;position:absolute!important}.design-measurement-box{color:var(--pp-text);box-shadow:none;background:0 0;border:0;align-items:center;gap:8px;margin-left:auto;padding:0;display:flex;position:static}.segmented-control.design-rotation-axis{min-height:25px}.design-rotation-axis button{border:1px solid var(--pp-border);background:var(--pp-surface);min-width:25px;height:25px;min-height:25px;color:var(--pp-muted);font:inherit;cursor:pointer;border-radius:0;padding:2px 5px;font-size:10px;font-weight:700}.design-rotation-axis button[aria-checked=true]{border-color:var(--pp-blue);background:var(--pp-raised);color:var(--pp-navy);box-shadow:none}.design-rotation-axis button[value=x]{border-color:#e66}.design-rotation-axis button[value=y]{border-color:#65c886}.design-rotation-axis button[value=z]{border-color:#64b5f6}.design-rotation-axis button[value=x][aria-checked=true]{color:#fff;background:#e66}.design-rotation-axis button[value=y][aria-checked=true]{color:#fff;background:#3f9f60}.design-rotation-axis button[value=z][aria-checked=true]{color:#fff;background:#367cad}.design-rotation-axis button:focus-visible{outline:2px solid var(--pp-blue);outline-offset:-2px}.design-measurement-box label{align-items:center;gap:5px;font-size:10px;font-weight:700;display:flex}.design-measurement-input-wrap{align-items:center;gap:4px;display:flex}.design-measurement-input-wrap input{box-sizing:border-box;border:1px solid var(--pp-border);background:var(--pp-surface);width:82px;height:26px;color:var(--pp-text);font-variant-numeric:tabular-nums;border-radius:4px;padding:3px 6px;font-family:inherit;font-size:11px;font-weight:600}.design-measurement-input-wrap input[aria-invalid=true]{border-color:#b5423c}.design-measurement-box label small{color:#a52f2f}.design-axis-label{z-index:2;color:#405967;letter-spacing:.7px;pointer-events:none;background:#f8fbfcdd;border:1px solid #a9bdc7;border-radius:4px;padding:4px 6px;font-size:9px;position:absolute;top:10px;left:12px}.design-loading,.design-viewport-paused{color:var(--pp-muted);place-items:center;margin:0;font-size:13px;display:grid;position:absolute;inset:0}.design-canvas-alert{z-index:3;color:#543c18;background:#fff8e9;border:1px solid #d5a45b;border-radius:8px;gap:6px;padding:12px;font-size:12px;display:grid;position:absolute;inset:12px 12px auto}.design-canvas-alert button{justify-self:start;min-height:32px;padding:5px 9px}.design-status{box-sizing:border-box;border-top:1px solid var(--pp-border);min-height:44px;color:var(--pp-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;padding:8px 10px;font-size:10px;display:flex}.design-info-rail{flex-direction:column;padding:15px;display:flex;overflow:auto}.design-drawer-tabs{border-bottom:1px solid var(--pp-border);flex-wrap:wrap;gap:3px;padding-bottom:8px;display:flex}.design-drawer-tabs button{min-height:30px;color:var(--pp-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:5px 7px;font-size:10px}.design-drawer-tabs button[aria-selected=true]{background:var(--pp-raised);color:var(--pp-navy);font-weight:700}.design-info-panel{border-bottom:1px solid var(--pp-border);min-height:130px;padding:11px 0}.design-info-panel h3,.design-selection-list h3{color:var(--pp-navy);margin:0 0 9px;font-size:12px}.design-properties{gap:7px;margin:0;display:grid}.design-properties div{justify-content:space-between;gap:10px;font-size:11px;display:flex}.design-properties dt{color:var(--pp-muted)}.design-properties dd{color:var(--pp-text);text-align:right;margin:0;font-weight:600}.projection-review{border-top:1px solid var(--pp-border);gap:9px;margin-top:12px;padding-top:11px;display:grid}.projection-review h4{color:var(--pp-navy);margin:0;font-size:12px}.projection-review-row{border:1px solid var(--pp-border);background:var(--pp-raised);border-radius:7px;gap:7px;padding:9px;display:grid}.projection-review-row strong,.projection-review-row p{margin:0;font-size:10px}.projection-review-row label{color:var(--pp-muted);gap:4px;font-size:10px;display:grid}.projection-review-row select,.projection-review select{border:1px solid var(--pp-border);background:var(--pp-surface);width:100%;min-height:32px;color:var(--pp-text);border-radius:5px;padding:5px 7px}.projection-review>button{width:100%}.design-empty-hint,.design-readonly-note{color:var(--pp-muted);font-size:11px;line-height:1.5}.design-readonly-note{margin:12px 0 0}.design-toggle{min-height:34px;color:var(--pp-text);align-items:center;gap:8px;font-size:11px;display:flex}.design-object-list,.design-selection-list ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.design-object-list button,.design-selection-list li button{width:100%;min-height:34px;color:var(--pp-text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;justify-content:space-between;gap:8px;padding:6px 7px;font-size:10px;display:flex}.design-object-list button[aria-pressed=true],.design-selection-list li button[aria-current=true]{border-color:var(--pp-border);background:var(--pp-raised)}.design-object-list small,.design-selection-list li span{color:var(--pp-muted);flex:none;font-size:9px}.design-selection-list{padding-top:12px}.dark .design-viewport{background:#1b2b35}.design-context-menu{z-index:1000;border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:9px;min-width:190px;padding:5px;box-shadow:0 12px 35px #102a3b30}.design-context-menu [role=menuitem]{text-align:left;width:100%;color:var(--pp-text);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:8px 10px;display:block}.design-context-menu [role=menuitem]:focus,.design-context-menu [role=menuitem]:hover{background:var(--pp-surface-raised);outline:0}.design-help-dialog{z-index:1100;border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:12px;width:min(440px,100vw - 32px);max-height:70vh;padding:20px;position:fixed;inset:15vh auto auto 50%;overflow:auto;transform:translate(-50%);box-shadow:0 16px 50px #102a3b40}.design-help-dialog ul{padding:0;list-style:none}.design-help-dialog li{border-bottom:1px solid var(--pp-border);justify-content:space-between;gap:16px;padding:7px 0;display:flex}.dark .design-axis-label{color:#d6e2e8;background:#213540dd;border-color:#4d6572}.dark .design-measurement-input-wrap input{color:#eff6f8;background:#17252d;border-color:#4d6572}.dark .design-canvas-alert{color:#f1d9a8;background:#3b3020;border-color:#9f7841}@media (width<=1050px){.design-workspace{grid-template-columns:minmax(0,1fr)}.design-info-rail{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:0 16px;display:grid}.design-info-title,.design-drawer-tabs{grid-column:1/-1}.design-info-panel,.design-selection-list{min-width:0}}@media (width<=650px){.design-workspace{grid-template-columns:1fr;min-height:0}.design-tool-rail{width:50px;max-height:calc(100% - 16px);top:8px;left:8px}.design-tool{flex-basis:32px;width:32px;min-height:32px}.design-canvas-panel{min-height:0}.design-info-rail{display:flex}.design-view-controls{gap:4px}.design-view-controls>button{flex:1 0 auto}.design-status span:nth-child(2){display:none}.design-measurement-box{flex-wrap:wrap;margin-left:auto}.design-measurement-input-wrap input{width:74px}}.design-renderer-fallback{z-index:4;border:1px solid var(--pp-border);background:var(--pp-surface);color:var(--pp-text);text-align:center;border-radius:8px;align-content:center;justify-items:center;gap:10px;padding:20px;font-size:12px;display:grid;position:absolute;inset:12px}.design-renderer-fallback span{max-width:320px;color:var(--pp-muted);line-height:1.5}.design-renderer-fallback a{color:var(--pp-blue);font-weight:650}.design-renderer-fallback button{border:1px solid var(--pp-border);background:var(--pp-surface);min-height:34px;color:var(--pp-text);cursor:pointer;border-radius:6px;padding:5px 10px}.project-info-dialog{gap:10px;max-height:min(90vh,760px);display:grid;overflow:auto}.project-info-dialog>label{color:var(--pp-text);gap:5px;font-size:12px;font-weight:650;display:grid}.project-info-dialog>input,.project-info-dialog>textarea{box-sizing:border-box;border:1px solid var(--pp-border);background:var(--pp-input-bg,var(--pp-surface));width:100%;min-height:38px;color:var(--pp-text);font:inherit;border-radius:6px;padding:8px 10px}.project-info-dialog>textarea{resize:vertical;min-height:140px}.project-info-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.project-card{border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:12px;flex-direction:column;min-width:0;display:flex}.project-thumb{border-bottom:1px solid var(--pp-border);background-color:var(--pp-raised);background-image:linear-gradient(90deg,var(--pp-border) 1px,transparent 1px),linear-gradient(var(--pp-border) 1px,transparent 1px);background-size:22px 22px;border-radius:11px 11px 0 0;flex-shrink:0;height:132px;position:relative;overflow:hidden}.project-timber{gap:3px;display:grid;position:absolute;top:51px;left:18%;right:18%;transform:rotate(-8deg)}.project-timber span{background:repeating-linear-gradient(0deg,#cfa67b 0 3px,#c39a6e 3px 4px);border:1px solid #926b49;border-radius:2px;height:13px;display:block}.project-timber span:nth-child(2){margin-left:12px;margin-right:-8px}.project-timber span:nth-child(3){margin-left:4px;margin-right:5px}.project-tools{gap:6px;display:flex;position:absolute;top:10px;right:10px}.project-icon-button{border:1px solid var(--pp-border);width:36px;height:36px;color:var(--pp-muted);background:var(--pp-surface);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:7px;place-items:center;padding:0;display:grid}.project-body{flex-direction:column;flex:1;min-width:0;padding:18px;display:flex}.project-body h3{color:var(--pp-navy);overflow-wrap:anywhere;margin:0;font-size:16px;font-weight:650;line-height:1.5}.project-body .project-materials{color:var(--pp-muted);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:4px 0 12px;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.project-body .project-meta{color:var(--pp-muted);flex-wrap:wrap;gap:4px 12px;margin:0 0 18px;font-size:11px;line-height:1.5;display:flex}.project-open-actions{gap:8px;margin-top:auto;display:grid}.project-open-link{border:1px solid var(--pp-border);min-height:42px;color:var(--pp-navy);background:var(--pp-raised);-webkit-tap-highlight-color:transparent;border-radius:7px;align-items:center;gap:9px;padding:10px 12px;font-size:13px;font-weight:650;line-height:1.4;text-decoration:none;display:flex}.project-open-link>svg{flex-shrink:0}.project-open-link>svg:last-child{margin-left:auto}.project-cutlist-link{background:var(--pp-blue);color:#fff;border-color:#0000}.dark .project-cutlist-link{color:var(--pp-canvas)}.project-tooltip{z-index:50;border:1px solid var(--pp-border);max-width:240px;color:var(--pp-text);background:var(--pp-surface);border-radius:6px;padding:7px 10px;font-size:12px;box-shadow:0 3px 10px #0002}.project-tooltip-arrow{fill:var(--pp-surface)}.project-delete{color:var(--pp-danger)}@media (hover:hover){.project-icon-button:hover{background:var(--pp-raised);color:var(--pp-blue)}.project-delete:hover{color:var(--pp-danger);background:var(--pp-danger-bg)}.project-open-link:hover{background:var(--pp-surface)}.project-cutlist-link:hover{background:var(--pp-blue);filter:brightness(.92)}}@media (prefers-reduced-motion:no-preference){.project-icon-button,.project-open-link{transition:scale .15s ease-out}.project-icon-button:not(:disabled):active,.project-open-link:active{scale:.96}}@media (width>=761px) and (width<=1050px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pp-tooltip{z-index:1200;border:1px solid var(--pp-border);background:var(--pp-surface);max-width:240px;color:var(--pp-text);border-radius:6px;padding:6px 9px;font-size:11px;line-height:1.35;box-shadow:0 4px 14px #102a3b28}.pp-tooltip-arrow{fill:var(--pp-surface)}.design-axis-label{left:68px}.design-canvas-alert,.design-renderer-fallback{z-index:10}@media (width<=650px){.design-axis-label{left:58px}}.design-page>.topbar,.cutlist-page>.topbar{border-bottom:0}.project-navigation{box-sizing:border-box;border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:10px;align-items:center;gap:10px;width:100%;min-width:0;margin:0 0 18px;padding:10px 12px;display:flex}.project-navigation-back,.project-info-icon{isolation:isolate;box-sizing:border-box;border:1px solid var(--pp-border);background:var(--pp-raised);width:38px;height:38px;color:var(--pp-blue);-webkit-tap-highlight-color:transparent;border-radius:9px;flex:0 0 38px;justify-content:center;align-items:center;padding:0;text-decoration:none;display:flex;position:relative}.project-navigation-back svg,.project-info-icon svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}[dir=rtl] .project-navigation-back svg{transform:scaleX(-1)}.project-navigation-back:active,.project-info-icon:active{background:var(--pp-surface);border-color:var(--pp-blue)}@media (hover:hover){.project-navigation-back:hover,.project-info-icon:hover{background:var(--pp-surface);border-color:var(--pp-blue)}}@media (prefers-reduced-motion:no-preference){.project-navigation-back,.project-info-icon{transition:scale .15s ease-out}.project-navigation-back:active,.project-info-icon:active{scale:.96}}.project-navigation-title{min-width:0;color:var(--pp-navy);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:18px;font-weight:750;overflow:hidden}.project-navigation-info{flex:0 0 38px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.project-info-icon{cursor:pointer}.project-navigation-tabs{border:1px solid var(--pp-border);background:var(--pp-raised);border-radius:9px;flex:none;gap:3px;padding:3px;display:flex;box-shadow:inset 0 2px 4px #172b371f}.project-navigation-tabs a{min-height:32px;color:var(--pp-muted);white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:0 13px;font-size:12px;font-weight:700;text-decoration:none;display:flex}.project-navigation-beta{text-transform:uppercase;border:1px solid;border-radius:4px;margin-left:5px;padding:2px 5px;font-size:9px;line-height:1}.project-navigation-tabs a.active{border-color:var(--pp-border);background:var(--pp-surface);color:var(--pp-navy);box-shadow:0 1px 3px #172b3724}.project-navigation a:focus-visible,.project-navigation button:focus-visible{outline:2px solid var(--pp-focus);outline-offset:2px}@media (width<=760px){.project-navigation{grid-template-columns:auto minmax(0,1fr) auto;gap:7px;padding:8px;display:grid}.project-navigation-back{padding-inline:5px}.project-navigation-back span{display:none}.project-navigation-title{font-size:16px}.project-navigation-tabs{box-sizing:border-box;grid-column:1/-1;width:100%}.project-navigation-tabs a{flex:1}.cutlist-action-row{flex-direction:column;align-items:stretch}.cutlist-export-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.cutlist-export-actions>.compact{white-space:normal;text-align:center;min-width:0}}@media print{.project-navigation{background:0 0;border:0;border-bottom:1px solid #687b86;border-radius:0;margin:0 0 12px;padding:0;display:block}.project-navigation-back,.project-navigation-info,.project-navigation-tabs{display:none!important}.project-navigation-title{color:#172b37;text-overflow:clip;white-space:normal;font-size:22px;display:block;overflow:visible}}.design-workspace{flex:auto;min-height:0;padding-top:8px;display:block;position:relative}.design-canvas-panel{width:100%;height:100%}.design-info-rail{--design-drawer-width:min(247.5px, calc(75vw - 82.5px));--design-drawer-motion:.22s cubic-bezier(.2,.7,.2,1);z-index:12;pointer-events:none;width:min(372px,100vw - 30px);transform:translateX(var(--design-drawer-width));transition:transform var(--design-drawer-motion);background:0 0;border:0;padding:0;display:block;position:absolute;top:0;bottom:0;right:0;overflow:visible}.design-info-rail.is-open{transform:translate(0)}.design-drawer-tabs{z-index:2;top:50%;right:var(--design-drawer-width);box-sizing:border-box;border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:9px;flex-direction:column;gap:4px;width:42px;padding:4px;display:flex;position:absolute}@supports (color:color-mix(in lab, red, red)){.design-drawer-tabs{background:color-mix(in srgb, var(--pp-surface) 96%, transparent)}}.design-drawer-tabs{pointer-events:auto;transform:translateY(-50%);box-shadow:0 4px 14px #102a3b20}.design-drawer-tabs button{box-sizing:border-box;width:32px;min-width:32px;height:32px;min-height:32px;color:var(--pp-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex:0 0 32px;place-items:center;padding:5px;display:grid}.design-drawer-tabs button svg{width:20px;height:20px}.design-drawer-tabs button[aria-selected=true]{border-color:var(--pp-border);background:var(--pp-raised);color:var(--pp-navy)}.design-drawer-content{box-sizing:border-box;width:var(--design-drawer-width);border:1px solid var(--pp-border);background:var(--pp-surface);pointer-events:auto;opacity:0;visibility:hidden;border-radius:10px 0 0 10px;flex-direction:column;max-height:min(680px,100% - 10px);padding:0;transition:opacity .16s,visibility 0s .22s;display:flex;position:absolute;top:0;right:0;overflow:hidden;box-shadow:0 10px 32px #102a3b30}.design-info-rail.is-open .design-drawer-content{opacity:1;visibility:visible;transition-delay:0s}.design-drawer-scroll{box-sizing:border-box;overscroll-behavior:contain;flex:auto;min-width:0;min-height:0;padding:14px;overflow:auto}.design-drawer-scroll>*{flex:none;min-width:0}.design-info-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.design-info-title h2{color:var(--pp-navy);margin:0 0 10px;font-size:16px}.design-info-title .eyebrow{margin-bottom:4px}.design-drawer-collapse{z-index:3;top:calc(50% - 131px);right:calc(var(--design-drawer-width) + 4px);box-sizing:border-box;border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:8px;place-items:center;width:34px;height:34px;padding:7px;display:grid;position:absolute}@supports (color:color-mix(in lab, red, red)){.design-drawer-collapse{background:color-mix(in srgb, var(--pp-surface) 96%, transparent)}}.design-drawer-collapse{color:var(--pp-muted);cursor:pointer;pointer-events:auto;box-shadow:0 4px 14px #102a3b20}.design-drawer-collapse svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px;height:20px;display:block}.design-drawer-collapse:focus-visible{outline:2px solid var(--pp-blue);outline-offset:2px}@media (hover:hover){.design-drawer-collapse:hover{background:var(--pp-raised);color:var(--pp-navy)}}.design-info-rail button:focus-visible{outline:2px solid var(--pp-blue);outline-offset:2px}.design-info-panel{align-content:start;gap:10px;min-height:0;display:grid;overflow:visible}.design-info-panel>h3,.design-info-panel>h4,.design-info-panel>p{margin:0}.design-info-panel>h4{margin-top:4px;font-size:12px}.design-info-panel>label:not(.design-toggle){color:var(--pp-muted);gap:5px;font-size:11px;display:grid}.design-info-panel input:not([type=checkbox]):not([type=color]),.design-info-panel select{box-sizing:border-box;border:1px solid var(--pp-border);background:var(--pp-surface);width:100%;min-width:0;min-height:32px;color:var(--pp-text);font:inherit;border-radius:5px;padding:6px 8px;font-size:11px}.design-info-panel>button{border:1px solid var(--pp-border);background:var(--pp-raised);min-height:32px;color:var(--pp-text);font:inherit;text-align:left;cursor:pointer;border-radius:5px;padding:6px 8px;font-size:11px}.design-info-panel>button:disabled{opacity:.5;cursor:default}.design-shape-dimensions,.design-shape-dimensions form{gap:8px;display:grid}.design-shape-dimensions label{color:var(--pp-muted);gap:4px;font-size:11px;display:grid}.design-shape-dimension-actions{flex-wrap:wrap;gap:6px;display:flex}.design-shape-dimension-actions button{border:1px solid var(--pp-border);background:var(--pp-raised);min-height:32px;color:var(--pp-text);font:inherit;cursor:pointer;border-radius:5px;padding:6px 8px;font-size:11px}.design-shape-dimension-actions button:disabled{opacity:.5;cursor:default}.design-stock-default{border:1px solid var(--pp-border);overflow-wrap:anywhere;border-radius:5px;gap:4px;padding:8px;font-size:11px;display:grid}.design-stock-default small{color:var(--pp-muted);font-size:10px;line-height:1.5}.design-object-list li,.design-selection-list li{min-width:0}.design-object-list button,.design-selection-list li button{align-items:start}.design-object-list button>span{overflow-wrap:anywhere;min-width:0}.design-object-list small,.design-selection-list li span{text-align:right;overflow-wrap:anywhere;max-width:60%}@media (width<=650px){.design-info-rail{--design-drawer-width:min(225px, calc(75vw - 48px));width:calc(100vw - 16px);top:0;bottom:0;right:0}.design-drawer-content{max-height:calc(100% - 4px)}}@media (prefers-reduced-motion:reduce){.design-info-rail{transition:none}.design-drawer-content{transition:opacity .1s,visibility 0s .1s}.design-info-rail.is-open .design-drawer-content{transition-delay:0s}}.page-skeleton{flex:1;gap:1rem;min-height:0;padding:1rem;display:grid;overflow:hidden}.design-page .page-skeleton{flex:auto;grid-template-rows:minmax(0,1fr);min-height:0;padding:0}.design-page .skeleton-canvas{min-height:0}.design-skeleton{grid-template-columns:minmax(0,1fr) 19rem}.cutlist-skeleton{grid-template-columns:minmax(0,1.6fr) minmax(18rem,1fr)}.page-skeleton [aria-hidden=true]{border:1px solid var(--pp-border);background:var(--pp-surface);border-radius:12px}.skeleton-inspector,.skeleton-editor,.skeleton-results{flex-direction:column;gap:.8rem;padding:1rem;display:flex}.page-skeleton i{background:linear-gradient(90deg, var(--pp-muted), var(--pp-muted), var(--pp-muted));border-radius:6px;flex:none;height:2.4rem;display:block}@supports (color:color-mix(in lab, red, red)){.page-skeleton i{background:linear-gradient(90deg, color-mix(in srgb, var(--pp-muted) 25%, var(--pp-surface)), color-mix(in srgb, var(--pp-muted) 45%, var(--pp-surface)), color-mix(in srgb, var(--pp-muted) 25%, var(--pp-surface)))}}.page-skeleton i{background-size:200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}.skeleton-canvas{min-height:25rem;background:repeating-linear-gradient(0deg, transparent, transparent 31px, var(--pp-border) 32px), repeating-linear-gradient(90deg, transparent, transparent 31px, var(--pp-border) 32px), var(--pp-surface)!important}@supports (color:color-mix(in lab, red, red)){.skeleton-canvas{background:repeating-linear-gradient(0deg, transparent, transparent 31px, color-mix(in srgb, var(--pp-border) 55%, transparent) 32px), repeating-linear-gradient(90deg, transparent, transparent 31px, color-mix(in srgb, var(--pp-border) 55%, transparent) 32px), var(--pp-surface)!important}}.skeleton-inspector i:nth-child(2n),.skeleton-editor i:nth-child(2n){width:78%}.skeleton-results i{height:5rem}.project-load-error{padding:2rem}@keyframes skeleton-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.page-skeleton i{animation:none}}@media (width<=760px){.page-skeleton{flex:none;grid-auto-rows:minmax(12rem,auto);min-height:0;padding:.75rem;overflow:visible}.design-skeleton,.cutlist-skeleton{grid-template-columns:minmax(0,1fr)}.skeleton-canvas{min-height:18rem}.skeleton-inspector,.skeleton-editor{min-height:12rem}.skeleton-results{min-height:9rem}.design-page .page-skeleton{flex:auto;grid-auto-rows:minmax(0,1fr);min-height:0;padding:0;overflow:hidden}.design-page .skeleton-canvas{min-height:0}}.home-intro{color:#f8f6ee;background:#173b56;border:1px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;gap:24px;min-height:160px;margin-top:28px;padding:24px 30px;display:flex;position:relative;overflow:hidden}.home-intro-copy{z-index:1;max-width:650px;position:relative}.home-intro h1{letter-spacing:-1px;margin:0;font-size:clamp(25px,3.2vw,36px);font-weight:650;line-height:1.18}.home-intro h1 span{color:#8ac3df}.home-intro p{color:#cfdee7;max-width:550px;margin:10px 0 0;font-size:14px;line-height:1.6}.home-intro-art{flex:0 0 210px;align-self:stretch;place-items:center;margin:-14px -10px -14px 0;display:grid;position:relative}.home-intro-art:before{content:"";background-image:linear-gradient(#cfdee714 1px,#0000 1px),linear-gradient(90deg,#cfdee714 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:-30px -40px;-webkit-mask-image:linear-gradient(90deg,#0000,#000);mask-image:linear-gradient(90deg,#0000,#000)}.home-intro-art svg{width:100%;height:138px;display:block;position:relative}@media (width<=650px){.home-intro{gap:0;min-height:0;margin-top:22px;padding:22px}.home-intro-copy{max-width:100%}.home-intro h1{max-width:340px;font-size:28px}.home-intro p{max-width:440px;font-size:13px}.home-intro-art{display:none}}.home-preview-label{white-space:nowrap;font-weight:700}.home-preview-notice{border:1px solid var(--pp-border);background:var(--pp-surface);color:var(--pp-text);border-radius:10px;margin-top:20px;padding:14px 18px;font-size:13px;line-height:1.5}.home-preview-notice strong{color:var(--pp-navy)}.home-preview-notice p{color:var(--pp-muted);margin:4px 0 0}.home-projects{padding-top:38px}.home-project-heading,.home-title,.home-project-actions{align-items:center;gap:12px;display:flex}.home-project-heading{justify-content:space-between;gap:20px;margin-bottom:24px}.home-title h2{color:var(--pp-navy);letter-spacing:-.8px;margin:0;font-size:30px;font-weight:700;line-height:1.2}.home-project-count{border:1px solid var(--pp-border);background:var(--pp-surface);min-width:27px;height:27px;color:var(--pp-muted);font-variant-numeric:tabular-nums;border-radius:20px;place-items:center;padding:0 8px;font-size:12px;display:grid}.home-project-actions{gap:8px}.home-file-input{display:none}.home-projects .project-grid{margin-top:0}.home-info-button,.home-popover-close{width:36px;height:36px;color:var(--pp-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;border-radius:8px;flex-shrink:0;place-items:center;padding:0;display:grid}.home-info-button[data-state=open]{background:var(--pp-raised);color:var(--pp-navy)}.home-popover{z-index:1200;box-sizing:border-box;width:320px;max-width:calc(100vw - 32px);max-height:min(480px,var(--radix-popover-content-available-height));overscroll-behavior:contain;border:1px solid var(--pp-border);background:var(--pp-surface);color:var(--pp-text);border-radius:12px;padding:20px;position:relative;overflow-y:auto;box-shadow:0 8px 28px #102a3b28}.home-popover h2{color:var(--pp-navy);margin:0 26px 12px 0;font-size:15px;line-height:1.5}.home-popover p{color:var(--pp-muted);margin:0 0 14px;font-size:12px;line-height:1.7}.home-popover-close{width:30px;height:30px;position:absolute;top:10px;right:10px}.home-popover .secondary{width:100%}.home-recovery-button{color:var(--pp-blue)}.home-recovery-popover button:disabled{opacity:.55;cursor:wait}.home-text-button{min-height:32px;color:var(--pp-blue);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;border-radius:4px;padding:4px 6px;font-size:12px;font-weight:650}.home-recovery-item{border-top:1px solid var(--pp-border);overflow-wrap:anywhere;gap:7px;padding:14px 0;font-size:12px;display:grid}.home-recovery-item>span{color:var(--pp-muted);font-size:11px}.home-status{color:var(--pp-muted);align-items:center;gap:10px;margin:0 0 20px;font-size:13px;line-height:1.6;display:flex}.home-projects .empty-state{background:var(--pp-surface);border-color:var(--pp-border);margin-top:0}.home-projects .empty-state h2{color:var(--pp-navy);margin:12px 0 0;font-size:20px}.home-projects .empty-state p{margin:8px 0 20px}.home-page button:focus-visible,.home-popover button:focus-visible{outline:2px solid var(--pp-focus);outline-offset:3px}@media (hover:hover){.home-info-button:hover,.home-popover-close:hover{background:var(--pp-raised);color:var(--pp-navy)}.home-text-button:hover{text-decoration:underline}}@media (prefers-reduced-motion:no-preference){.home-info-button,.home-popover-close{transition:scale .15s ease-out}.home-info-button:not(:disabled):active,.home-popover-close:not(:disabled):active{scale:.96}}@media (width<=520px){.home-projects{padding-top:26px}.home-project-heading{flex-wrap:wrap;align-items:flex-start;gap:18px;margin-bottom:20px}.home-title h2{font-size:27px}.home-project-actions{grid-template-columns:auto 1fr 1fr;width:100%;display:grid}.home-project-actions>.primary{grid-area:1/3}.home-project-actions:not(:has(.home-recovery-button)){grid-template-columns:1fr 1fr}.home-project-actions:not(:has(.home-recovery-button))>.primary{grid-column:2}.home-page .brand{gap:7px;font-size:16px}.home-page .brand img{width:28px;height:28px}.home-page .topbar{gap:8px}.home-page .topbar-tools{gap:4px}.home-recovery-notice{flex-wrap:wrap;gap:4px 7px}}.rectangle-controls,.rectangle-plane-controls,.rectangle-direction-control{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.rectangle-controls{gap:10px;max-width:100%}.rectangle-controls span{font-size:11px}.rectangle-controls .rectangle-direction-control{flex-direction:row;align-items:center;gap:5px;min-width:0;margin:0;display:flex}.rectangle-direction-control .pp-select-trigger{width:130px;min-width:130px}.rectangle-plane-hint{color:var(--pp-muted)}.part-row.reorderable-row{border:1px solid var(--pp-border);border-radius:9px;min-width:0;padding:10px;display:block;container:part-editor/inline-size}.part-main-row{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:8px 6px;min-width:0;display:grid}.part-identity-row{grid-area:1/2;grid-template-columns:minmax(0,1fr) 76px;align-items:end;gap:8px;min-width:0;display:grid}.part-secondary-row{grid-area:2/2;gap:8px;min-width:0;display:grid}.part-dimensions-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px;min-width:0;display:grid}.part-actions-row{justify-content:flex-end;align-items:end;gap:6px;min-width:0;display:flex}.part-main-row label,.part-details-fields label{min-width:0}.part-main-row .number-field>label{white-space:nowrap}.part-row .part-main-row>.reorder-handle{grid-area:1/1/4;place-self:start;width:28px;margin:0}.part-main-row .part-name-field{box-sizing:border-box;width:100%;min-width:0}.part-main-row .part-type-field{width:76px;min-width:76px}.part-type-field .stock-type-fieldset{min-width:0;margin:0;padding:0}.part-type-field .stock-type-fieldset>legend{font-size:11px}.part-type-field .material-type-toggle{width:74px}.part-type-field .material-type-toggle button{width:36px;min-width:36px;height:36px;padding:6px}.part-main-row .part-lumber-field{min-width:0}.part-main-row .part-optional-width.is-visible{min-width:0;max-width:none}.part-main-row .part-quantity-field{flex:none;width:70px;min-width:70px;max-width:70px}.part-quantity-field .number-stepper-grip{display:none}.part-quantity-field .number-stepper>input{padding-inline:6px}.part-main-row .part-optional-width:not(.is-visible){display:none}.part-expand{border:1px solid var(--pp-border);background:var(--pp-surface);width:34px;height:36px;color:var(--pp-blue);cursor:pointer;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.part-expand svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.part-expand[aria-expanded=true] svg{rotate:180deg}.part-expand:focus-visible{outline:2px solid var(--pp-focus);outline-offset:2px}.part-expand:active{background:var(--pp-raised)}@media (hover:hover){.part-expand:hover{background:var(--pp-raised);border-color:var(--pp-blue)}}.part-main-row .quick-actions-trigger{flex:none;width:34px;height:36px}.part-details{opacity:0;visibility:hidden;grid-template-rows:0fr;display:grid}.part-details.is-expanded{opacity:1;visibility:visible;grid-template-rows:1fr}.part-details-clip{min-height:0;overflow:hidden}.part-details-fields{grid-template-columns:minmax(70px,1fr) minmax(100px,1fr) minmax(0,0fr) minmax(100px,1.5fr);align-items:end;gap:10px;padding:14px 0 4px 34px;display:grid}.part-details-fields:has(.part-optional-grain.is-visible){grid-template-columns:minmax(70px,1fr) minmax(100px,1fr) minmax(95px,.8fr) minmax(100px,1.5fr)}.part-details-fields .grain-lock{white-space:nowrap;align-items:center;gap:6px;min-height:36px;display:flex}.part-details-fields .grain-lock input{width:16px;height:16px;accent-color:var(--pp-blue);padding:0}.part-details-fields .part-optional-grain{opacity:0;visibility:hidden;min-width:0;overflow:hidden}.part-details-fields .part-optional-grain.is-visible{opacity:1;visibility:visible}@media (prefers-reduced-motion:no-preference){.part-details{transition:grid-template-rows .22s ease-out,opacity .15s ease-out,visibility .22s}.part-expand svg{transition:rotate .15s ease-out}.part-main-row,.part-details-fields{transition:grid-template-columns .22s ease-out}.part-optional-grain{transition:opacity .15s ease-out,visibility .22s}}@media (prefers-reduced-motion:reduce){.part-details,.part-optional-grain{transition:opacity .1s ease-out}}@container part-editor (width>=450px){.part-main-row>.reorder-handle{grid-row:1/3}.part-main-row>.part-secondary-row{grid-template-columns:minmax(0,1fr) auto;align-items:end}.part-main-row .part-dimensions-row{grid-template-columns:repeat(2,minmax(80px,1fr))}.part-details-fields{grid-template-columns:repeat(2,minmax(0,1fr));padding-inline-start:0}.part-details-fields label:has(.number-stepper){grid-column:span 2}}@container part-editor (width>=700px){.part-main-row{grid-template-columns:28px minmax(120px,1.2fr) 76px minmax(90px,1fr) minmax(90px,1fr) 70px 34px 34px;align-items:end;gap:6px}.part-main-row>.part-identity-row,.part-main-row>.part-secondary-row,.part-main-row .part-dimensions-row,.part-main-row .part-actions-row{display:contents}.part-main-row>.reorder-handle,.part-main-row .part-name-field,.part-main-row .part-type-field,.part-main-row .part-lumber-field,.part-main-row .part-length-field,.part-main-row .part-optional-width.is-visible,.part-main-row .part-quantity-field,.part-main-row .part-expand,.part-main-row .quick-actions-trigger{grid-row:1;min-width:0;max-width:none}.part-main-row>.reorder-handle{grid-column:1;width:28px}.part-main-row .part-name-field{grid-column:2;width:100%}.part-main-row .part-type-field{grid-column:3}.part-main-row:not(.is-sheet) .part-lumber-field,.part-main-row .part-length-field{grid-column:4}.part-main-row:not(.is-sheet) .part-length-field,.part-main-row.is-sheet .part-optional-width.is-visible{grid-column:5}.part-main-row .part-quantity-field{grid-column:6}.part-main-row .part-expand{grid-column:7;width:34px}.part-main-row .quick-actions-trigger{grid-column:8;width:34px}.part-details-fields{grid-template-columns:minmax(70px,1fr) minmax(100px,1fr) minmax(0,0fr) minmax(100px,1.5fr);padding-inline-start:0}.part-details-fields:has(.part-optional-grain.is-visible){grid-template-columns:minmax(70px,1fr) minmax(100px,1fr) minmax(95px,.8fr) minmax(100px,1.5fr)}.part-details-fields label:has(.number-stepper){grid-column:auto}}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}::view-transition-group(*){animation-duration:.22s;animation-timing-function:ease-out}::view-transition-old(*){animation-duration:.22s;animation-timing-function:ease-out}::view-transition-new(*){animation-duration:.22s;animation-timing-function:ease-out}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none}::view-transition-old(*){animation:none}::view-transition-new(*){animation:none}}.material-card-content,.stock-editor-content{grid-template-rows:auto 1fr;min-width:0;display:grid}.material-heading{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:end;gap:8px 10px;display:grid}.material-heading>.material-collapse-toggle{grid-area:1/1}.material-heading>label{grid-area:1/2;width:auto;min-width:0;max-width:none}.material-heading>.stock-type-fieldset{grid-area:1/3}.material-heading>.quick-actions-trigger{grid-area:1/4}.collapse-toggle{border:1px solid var(--pp-border);background:var(--pp-surface);min-width:32px;min-height:36px;color:var(--pp-text);font:inherit;cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:5px 8px;font-size:11px;display:flex}.collapse-toggle:hover{border-color:var(--pp-focus);background:var(--pp-raised)}.collapse-toggle:focus-visible{outline:2px solid var(--pp-focus);outline-offset:2px}.collapse-toggle svg{flex:none;width:16px;height:16px;transition:rotate .16s ease-out}.collapse-toggle[aria-expanded=false] svg{rotate:-90deg}.material-collapse-toggle{flex:none;align-self:end}.stock-collapse-toggle{background:0 0;border:0;padding:3px 5px;font-size:12px;font-weight:700}.stock-collapse-toggle svg{color:var(--pp-blue)}.stock-editor:has(.stock-collapse-toggle[aria-expanded=false]){align-items:center}.stock-editor:has(.stock-collapse-toggle[aria-expanded=false]) .stock-editor-head{margin-bottom:0}.stock-collapsed-name{color:var(--pp-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:400;overflow:hidden}.collapsible-region{opacity:1;grid-template-rows:1fr;min-height:0;transition:grid-template-rows .22s ease-out,opacity .16s ease-out;display:grid}.collapsible-region-inner{min-height:0;overflow:hidden}.collapsible-region.is-collapsed{opacity:0;grid-template-rows:0fr}@media (prefers-reduced-motion:reduce){.collapse-toggle svg{transition:none}.collapsible-region{transition:opacity .1s ease-out}}.reorderable-row[data-drop-intent=before]:before,.reorderable-row[data-drop-intent=after]:before{content:"";background:var(--pp-focus);pointer-events:none;z-index:3;border-radius:2px;height:3px;position:absolute;left:0;right:0}.reorderable-row[data-drop-intent=before]:before{top:-3px}.reorderable-row[data-drop-intent=after]:before{bottom:-3px}.reorderable-row[data-drop-intent=swap],.reorderable-row[data-swap-source]{outline:2px dashed var(--pp-focus);outline-offset:1px;background:var(--pp-raised)}.reorderable-row[data-drop-intent=swap]:after{content:"Swap";z-index:3;border:1px solid var(--pp-focus);background:var(--pp-surface);color:var(--pp-text);pointer-events:none;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:600;position:absolute;top:4px;right:8px}.reorderable-row{--drop-marker-radius:8px}.part-row.reorderable-row{--drop-marker-radius:9px}.reorderable-row[data-drop-intent=before]:before,.reorderable-row[data-drop-intent=after]:before{border:3px solid var(--pp-focus);background:0 0;height:12px;left:-1px;right:-1px}.reorderable-row[data-drop-intent=before]:before{border-radius:var(--drop-marker-radius) var(--drop-marker-radius) 0 0;border-bottom:0;top:-1px}.reorderable-row[data-drop-intent=after]:before{border-radius:0 0 var(--drop-marker-radius) var(--drop-marker-radius);border-top:0;bottom:-1px}.segmented-control button:disabled{cursor:not-allowed;opacity:.5}.segmented-control-icon{flex:none;display:inline-flex}.delete-confirm-button{background:var(--pp-danger,#a33d32);border-color:var(--pp-danger,#a33d32);color:#fff}.delete-confirm-button:hover{filter:brightness(.92)}.cutlist-page{--cutlist-group-gap:12px;--cutlist-section-gap:24px}:is(.cutlist-page .material-card-content:has(>.collapsible-region:not(.is-collapsed)),.cutlist-page .stock-editor-content:has(>.collapsible-region:not(.is-collapsed))){row-gap:var(--cutlist-group-gap)}.cutlist-page .material-content-stack{gap:var(--cutlist-group-gap);display:grid}.cutlist-page .material-content-stack>.stock-editor,.cutlist-page .material-content-stack>.stock-creation-form,.cutlist-page .material-content-stack>.sheet-material-help{margin:0}.cutlist-page .material-content-stack>label{min-width:0;color:var(--pp-muted);gap:5px;font-size:11px;display:grid}.cutlist-page .add-stock-option{justify-self:start}.cutlist-page .stock-editor-head{margin-bottom:0}.cutlist-page .stock-editor-content>.collapsible-region>.collapsible-region-inner{gap:var(--cutlist-group-gap);display:grid}.cutlist-page .stock-editor-content .field-help{margin:0;line-height:1.5;display:block}.cutlist-page .stock-creation-form{gap:var(--cutlist-group-gap)}.cutlist-page .result-panel>h3{margin:var(--cutlist-section-gap) 0 var(--cutlist-group-gap)}.cutlist-page .result-panel>.muted{margin:var(--cutlist-group-gap) 0;line-height:1.5}.cutlist-page .plan-card>.plan-row{padding-top:0;padding-bottom:var(--cutlist-group-gap);border-top:0}.settings-panel-layout{display:grid}.settings-panel-layout>.units-row{grid-area:1/1;align-content:start}.settings-panel-layout>.units-row[aria-hidden=true]{visibility:hidden}@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-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@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}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}
