@font-face{font-family:Barlow Semi Condensed;src:url(/bags/configurator/fonts/barlow_semicondensed_400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Barlow Semi Condensed;src:url(/bags/configurator/fonts/barlow_semicondensed_600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/bags/configurator/fonts/barlow_condensed_600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{--paper: #f5f6f4;--ink: #12333f;--secondary: #4f666f;--line-thin: rgba(18, 51, 63, .42);--line-faint: rgba(18, 51, 63, .22);--scrim: rgba(18, 51, 63, .3);--taped: var(--ink);--derived: #14508f;--assumed: #7a5100;--display: "Barlow Condensed", "Barlow Semi Condensed", Arial, sans-serif;--text: "Barlow Semi Condensed", "Helvetica Neue", Arial, sans-serif;--arrive: cubic-bezier(.16, 1, .3, 1);--stroke: cubic-bezier(.4, .08, .25, 1);--pad: 16px;--sheet-inset: clamp(16px, 2.4vw, 30px);--corner-inset: clamp(18px, 3vh, 30px)}[data-prov=taped]{--prov: var(--taped)}[data-prov=derived]{--prov: var(--derived)}[data-prov=assumed]{--prov: var(--assumed)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--text);font-size:14px;line-height:1.45;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;overscroll-behavior:none}::selection{background:#14508f2e;color:var(--ink)}input{caret-color:var(--ink)}:focus-visible{outline:2px solid var(--derived);outline-offset:3px;border-radius:1px}html{color-scheme:light;scrollbar-color:var(--scrim) var(--paper)}.panel-scroll{scrollbar-width:thin;scrollbar-color:var(--line-faint) transparent}.panel-scroll::-webkit-scrollbar{width:9px}.panel-scroll::-webkit-scrollbar-thumb{background:var(--scrim);border:3px solid transparent;background-clip:content-box;border-radius:5px}.panel-scroll::-webkit-scrollbar-thumb:hover{background:var(--secondary);background-clip:content-box}.app{position:relative;height:100%;overflow:hidden}.stage{position:absolute;inset:0;z-index:0}.stage canvas{display:block;touch-action:none}.brand{position:absolute;top:var(--sheet-inset);left:var(--sheet-inset);pointer-events:none}.brand-mark{display:block;width:clamp(84px,7vw,104px);aspect-ratio:293 / 122;color:var(--ink);background-color:currentColor;-webkit-mask:url(/bags/configurator/trefalke-logo.svg) no-repeat left center / contain;mask:url(/bags/configurator/trefalke-logo.svg) no-repeat left center / contain;pointer-events:auto}.brand h1{margin:10px 0 0;font-family:var(--display);font-size:clamp(1.75rem,3.4vw,2.5rem);font-weight:600;line-height:.9;letter-spacing:-.02em;text-transform:uppercase}.brand p{margin:6px 0 0;font-size:.8125rem;line-height:1.45;color:var(--secondary);max-width:26ch;text-wrap:balance}.readout{position:absolute;left:var(--sheet-inset);bottom:var(--corner-inset);pointer-events:none;transition:opacity .18s var(--arrive)}.readout-big{font-size:clamp(2rem,4vw,2.75rem);font-weight:600;line-height:1;letter-spacing:-.01em;color:var(--prov, var(--derived))}.readout-big em{font-style:normal;font-size:.9375rem;font-weight:400;color:var(--secondary);margin-left:4px}.readout.is-hidden{opacity:0;pointer-events:none}.panel{position:absolute;top:0;right:0;bottom:0;width:336px;display:flex;flex-direction:column;background:var(--paper);border-left:1px solid var(--line-faint);transition:transform .32s var(--arrive),opacity .24s var(--arrive)}.panel.is-hidden{transform:translate(100%);opacity:0;pointer-events:none}.panel-toggle{position:absolute;top:var(--sheet-inset);right:var(--sheet-inset);z-index:3;border:0;background:none;font:inherit;font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--secondary);cursor:pointer;padding:6px 0;transition:color .18s var(--arrive)}.panel-head{display:flex;align-items:center;gap:10px;padding:12px var(--pad);border-bottom:1px solid var(--line-faint)}.panel-head .units{margin-left:auto}.panel-head .hide{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;background:none;padding:0;color:var(--ink);opacity:.72;cursor:pointer;transition:opacity .18s var(--arrive)}.panel-head .hide svg{display:block;width:18px;height:18px}.eyebrow{font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--secondary)}.panel-scroll{flex:1;overflow-y:auto}.panel-foot{display:flex;align-items:center;gap:16px;padding:11px var(--pad);border-top:1px solid var(--line-faint)}.panel-foot .link{margin-left:auto}.section+.section{border-top:1px solid var(--line-faint)}.section-head{width:100%;display:flex;align-items:center;padding:12px var(--pad);border:0;background:none;font:inherit;font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);cursor:pointer;text-align:left}.section-head.static{cursor:default;color:var(--secondary)}.section-summary{margin-left:auto;font-size:.8125rem;font-weight:600;letter-spacing:0;text-transform:none;color:var(--secondary)}.section-summary [data-prov]{color:var(--prov)}.section-head .chev{margin-left:10px;width:7px;height:7px;border-right:1px solid var(--secondary);border-bottom:1px solid var(--secondary);transform:rotate(45deg) translate(-2px,-2px);transition:transform .18s var(--arrive)}.section.is-open .section-head .chev{transform:rotate(-135deg) translate(-2px,-2px)}.section-body{padding:0 var(--pad) var(--pad)}.field{display:block;margin-bottom:15px}.field-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}.field-label{font-size:.875rem;color:var(--ink)}.field-value{font-size:.875rem;font-weight:600;letter-spacing:.01em;color:var(--prov, var(--ink))}.field-value em{font-style:normal;font-weight:400;color:var(--secondary);margin-left:2px;font-size:.75rem}.field-hint{display:block;margin-top:5px;font-size:.8125rem;color:var(--secondary)}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:16px;background:none;cursor:grab;display:block}input[type=range]:active{cursor:grabbing}input[type=range]::-webkit-slider-runnable-track{height:1px;background:var(--line-thin)}input[type=range]::-moz-range-track{height:1px;background:var(--line-thin)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;margin-top:-5px;border-radius:50%;background:var(--ink);border:0}input[type=range]::-moz-range-thumb{width:11px;height:11px;border-radius:50%;background:var(--ink);border:0}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #14508f38}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{border:0;border-bottom:1px solid var(--line-faint);background:transparent;border-radius:0;padding:3px 2px;font:inherit;font-size:.8125rem;color:var(--secondary);cursor:pointer;transition:color .18s var(--arrive),border-color .18s var(--arrive)}.chip.is-active{color:var(--ink);font-weight:600;border-bottom-color:var(--ink)}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.check{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;cursor:pointer;-webkit-user-select:none;user-select:none}.check input{appearance:none;-webkit-appearance:none;width:13px;height:13px;margin:0;border:1px solid var(--line-thin);border-radius:0;background:transparent;cursor:pointer;position:relative;transition:background .18s var(--arrive),border-color .18s var(--arrive)}.check input:checked{background:var(--ink);border-color:var(--ink)}.check input:checked:after{content:"";position:absolute;left:4px;top:1px;width:3px;height:6px;border:solid var(--paper);border-width:0 1.5px 1.5px 0;transform:rotate(42deg)}.link{border:0;background:none;padding:0;font:inherit;font-size:.8125rem;color:var(--secondary);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-faint);transition:color .18s var(--arrive),text-decoration-color .18s var(--arrive)}.btn{width:100%;margin-top:12px;padding:11px 16px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);font:inherit;font-size:.9375rem;letter-spacing:.01em;cursor:pointer;transition:background .22s var(--arrive),border-color .22s var(--arrive),transform .22s var(--arrive)}.btn:focus-visible{background:var(--derived);border-color:var(--derived);transform:translateY(-1px)}.btn:active{background:var(--derived);border-color:var(--derived);transform:translateY(0)}.btn:disabled{background:none;border-color:var(--line-faint);color:var(--secondary);cursor:not-allowed;transform:none}.btn.ghost{background:none;border-color:var(--line-thin);color:var(--ink)}.btn.ghost:focus-visible,.btn.ghost:active{background:none;border-color:var(--derived);color:var(--derived)}.pattern-overlay{position:fixed;inset:0;z-index:10;display:flex;flex-direction:column;background:#fff}.pattern-overlay header{display:flex;align-items:baseline;gap:12px;padding:14px 18px;background:var(--paper);border-bottom:1px solid var(--line-faint)}.pattern-overlay h2{margin:0;font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.pattern-overlay .hint{flex:1;color:var(--secondary);font-size:.8125rem}.pattern-overlay .close{padding:5px 12px;border:1px solid var(--line-thin);border-radius:0;background:none;color:var(--ink);font:inherit;font-size:.8125rem;cursor:pointer;transition:border-color .18s var(--arrive),color .18s var(--arrive)}.pattern-overlay .sheet{flex:1;padding:18px;overflow:auto}.pattern-overlay svg{display:block;min-width:900px}.skip{display:block;width:100%;margin-top:12px;text-align:center}.rail{margin-left:auto;display:flex;gap:4px}.rail-seg{width:17px;padding:6px 0;border:0;background:none;cursor:pointer;display:block}.rail-seg:disabled{cursor:default}.rail-seg i{display:block;height:2px;background:var(--line-faint);transform:scaleY(.5);transition:background .2s var(--arrive),transform .2s var(--arrive)}.rail-seg.is-done i{background:var(--secondary)}.rail-seg.is-now i{transform:scaleY(1);background:var(--ink)}.plate{margin:0 0 15px;border:1px solid var(--line-faint);border-radius:0;background:transparent;overflow:hidden;aspect-ratio:1.45}.plate svg{display:block;width:100%;height:100%}.plate .tube{fill:#12333f29;stroke:none}.plate .tube.is-ink{fill:#12333f6b}.plate .tape{fill:none;stroke:var(--taped);stroke-linecap:butt}.plate .tape-head{fill:var(--taped);stroke:none}@keyframes tape-run{0%{stroke-dashoffset:var(--run)}}@keyframes tape-stop{0%{opacity:0}}.plate .tape{animation:tape-run .5s var(--stroke) .06s both}.plate .tape-head{animation:tape-stop .26s var(--arrive) .42s both}.step-title{margin:0 0 6px;font-family:var(--display);font-size:1.25rem;font-weight:600;line-height:1;letter-spacing:-.01em;text-transform:uppercase}.step-copy{margin:0 0 16px;font-size:.875rem;line-height:1.5;color:var(--secondary);text-wrap:pretty}.lead-entry{display:flex;align-items:baseline;gap:7px;cursor:text}.lead-entry input{width:122px;padding:1px 0 4px;border:0;border-bottom:1px solid var(--line-thin);background:none;font-family:inherit;font-size:1.875rem;font-weight:600;line-height:1.1;color:var(--prov, var(--taped));transition:border-color .18s var(--arrive)}.lead-entry input:focus{outline:none;border-bottom-color:var(--ink)}.lead-entry em{font-style:normal;font-size:.875rem;color:var(--secondary)}.lead-hint{margin:8px 0 0;font-size:.8125rem;color:var(--secondary)}.tally{margin-top:20px;border-top:1px solid var(--line-faint)}.tally-row{width:100%;display:flex;align-items:baseline;gap:10px;padding:8px 0;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.tally-row+.tally-row{border-top:1px solid var(--line-faint)}.tally-label{font-size:.875rem;color:var(--secondary)}.tally-value{margin-left:auto;font-size:.875rem;font-weight:600;color:var(--prov, var(--taped))}.tally-value em{font-style:normal;font-weight:400;font-size:.75rem;color:var(--secondary);margin-left:2px}.tally-edit{width:28px;text-align:right;font-size:.8125rem;color:var(--secondary);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-faint);transition:color .18s var(--arrive),text-decoration-color .18s var(--arrive)}.num{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:8px 0;cursor:text}.num+.num{border-top:1px solid var(--line-faint)}.num-label{font-size:.875rem}.num-label em{display:block;margin-top:2px;font-style:normal;font-size:.75rem;color:var(--secondary)}.num-entry{display:flex;align-items:baseline;gap:4px;flex:none}.num-entry input{width:68px;padding:2px 0;border:0;border-bottom:1px solid var(--line-faint);background:none;font-family:inherit;font-size:.875rem;font-weight:600;color:var(--prov, var(--taped));text-align:right;transition:border-color .18s var(--arrive)}.num-entry input:focus{outline:none;border-bottom-color:var(--ink)}.num-entry em{width:16px;font-style:normal;font-size:.75rem;color:var(--secondary)}.lead-entry.is-off input,.num-entry.is-off input{color:var(--assumed);border-bottom-style:dotted;border-bottom-color:var(--assumed)}.lead-entry.is-out input,.lead-entry.is-out input:focus,.num-entry.is-out input,.num-entry.is-out input:focus{color:var(--assumed);border-bottom-style:solid;border-bottom-color:var(--assumed)}.lead-hint.is-off,.num-label em.is-off{color:var(--assumed)}.lead-hint.is-out,.num-label em.is-out{color:var(--assumed);font-weight:600}.warn{margin:8px 0 0;font-size:.8125rem;line-height:1.45;color:var(--assumed)}.edges{display:grid;grid-template-columns:1fr 1fr;column-gap:16px;margin-bottom:14px}.edge{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:7px 0;border-top:1px solid var(--line-faint);cursor:default}.edge .field-label{font-size:.8125rem;color:var(--secondary)}.edge .field-value{font-size:.8125rem}.edges.check{grid-template-columns:1fr;margin-bottom:10px}.tally+.edges.check{margin-top:18px}.ways{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.way{border:0;border-bottom:1px solid var(--line-faint);background:transparent;border-radius:0;padding:0 0 5px;cursor:pointer;font:inherit;display:flex;flex-direction:column;align-items:stretch;gap:5px;transition:border-color .18s var(--arrive)}.way.is-active{border-bottom-color:var(--ink)}.way i{display:none}.way i:first-child{display:block;width:100%;height:22px;border-radius:0}.way span{font-size:.75rem;color:var(--secondary);letter-spacing:.02em;text-align:center}.way.is-active span{color:var(--ink);font-weight:600}.swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.swatch{display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer}.swatch input[type=color]{-webkit-appearance:none;appearance:none;width:100%;height:26px;padding:0;border:0;background:none;cursor:pointer}.swatch input[type=color]::-webkit-color-swatch-wrapper{padding:0}.swatch input[type=color]::-webkit-color-swatch{border:1px solid var(--line-faint);border-radius:0}.swatch input[type=color]::-moz-color-swatch{border:1px solid var(--line-faint);border-radius:0}.swatch span{font-size:.75rem;letter-spacing:.02em;color:var(--secondary)}.dim{font-size:15px;font-weight:600;letter-spacing:.005em;line-height:1;color:var(--prov, var(--taped));text-shadow:0 1.5px 0 var(--paper),0 -1.5px 0 var(--paper),1.5px 0 0 var(--paper),-1.5px 0 0 var(--paper),1.1px 1.1px 0 var(--paper),-1.1px 1.1px 0 var(--paper),1.1px -1.1px 0 var(--paper),-1.1px -1.1px 0 var(--paper),0 0 3px var(--paper);white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none}.note.tight{margin:16px 0 8px}.note{margin:0 0 14px;font-size:.8125rem;line-height:1.5;color:var(--secondary);text-wrap:pretty}.note a{color:var(--secondary);text-underline-offset:2px}@media(hover:hover){.panel-toggle:hover,.panel-head .hide:hover{color:var(--ink);opacity:1}.chip:hover{color:var(--ink);border-bottom-color:var(--line-thin)}.link:hover,.note a:hover{color:var(--ink);text-decoration-color:var(--secondary)}.btn:hover{background:var(--derived);border-color:var(--derived);transform:translateY(-1px)}.btn.ghost:hover{background:none;border-color:var(--derived);color:var(--derived)}.btn:disabled:hover{background:none;border-color:var(--line-faint);color:var(--secondary);transform:none}.pattern-overlay .close:hover{border-color:var(--ink)}.rail-seg:not(:disabled):hover i{background:var(--ink)}.tally-row:hover .tally-edit,.tally-row:focus-visible .tally-edit{color:var(--ink);text-decoration-color:var(--secondary)}.lead-entry input:hover,.num-entry input:hover{border-bottom-color:var(--secondary)}.way:hover{border-bottom-color:var(--line-thin)}}@media(prefers-reduced-motion:reduce){.plate .tape{stroke-dasharray:none!important;stroke-dashoffset:0!important;animation:none}.plate .tape-head{animation:none}.plate{animation:tape-stop .42s var(--arrive) both}*,*:before,*:after{transition-duration:1ms!important}}@media(max-width:760px){.panel{inset:auto 0 0;width:auto;border-left:0;border-top:1px solid var(--line-faint);max-height:58svh}.panel.is-setup{max-height:76svh}.panel.is-hidden{transform:translateY(100%)}.plate{aspect-ratio:2.1;margin-bottom:13px}.step-copy{margin-bottom:14px}.lead-entry input{font-size:1.625rem;width:108px}.brand p{display:none}.brand h1{margin-top:6px}.readout{bottom:auto;top:var(--sheet-inset);left:auto;right:84px;text-align:right}.readout-big{font-size:1.625rem}}@media(pointer:coarse){.panel-head .hide{width:44px;height:44px;margin:-10px -10px -10px 0}.panel-head .hide svg{width:22px;height:22px}.panel-toggle{padding:14px 0}.rail-seg{width:24px;padding:14px 0}.chip{padding:10px 4px}.check{padding:8px 0}.check input{width:18px;height:18px}.check input:checked:after{left:6px;top:2px;width:4px;height:8px;border-width:0 2px 2px 0}.tally-row{padding:13px 0}.num{padding:12px 0}.link,.skip{padding:8px 0}.way{padding-bottom:10px}input[type=range]{height:30px}input[type=range]::-webkit-slider-thumb{width:18px;height:18px;margin-top:-9px}input[type=range]::-moz-range-thumb{width:18px;height:18px}}
