.quotekit{--bg:#fbfbfa;--surface:#fff;--sunk:#f6f6f4;--ink:#141414;--muted:#6e6e6e;--faint:#9a9a96;--line:#e2e2de;--line-soft:#efefec;--accent:#d6431f;--accent-soft:#d6431f17;--ok:#2e7d4f;--warn:#9a6a00;--warn-bg:#fbf1d8;--bad:#b23a26;--bad-bg:#f8e3dd;--mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:36px;--r:8px;background:var(--bg);color:var(--ink)}.quotekit *,.quotekit :before,.quotekit :after{box-sizing:border-box}.quotekit .wrap{width:100%;max-width:1620px;padding:var(--s4) var(--s4) var(--s6);gap:var(--s4);margin:0 auto;display:grid}.quotekit .wrap>*,.quotekit .screen>*,.quotekit .studio>*{min-width:0}.quotekit p{max-width:72ch;margin:0}.quotekit a{color:var(--accent)}.quotekit h1,.quotekit h2,.quotekit h3{margin:0;line-height:1.15}.quotekit .masthead{align-items:baseline;gap:var(--s4);flex-wrap:wrap;display:flex}.quotekit .masthead h1{font-size:var(--t-page);letter-spacing:-.015em;font-weight:700}.quotekit .masthead .lede{color:var(--muted)}.quotekit .masthead .acts{margin-left:auto}.quotekit .bar{position:relative}.quotekit .trail{background:var(--accent);border-radius:2px;width:0;height:2px;transition:width .5s;position:absolute;bottom:-1px;left:0}.quotekit .bar-group[data-state=current]{box-shadow:0 0 0 4px var(--accent-soft);background:var(--accent-soft);border-radius:6px}.quotekit .bar-group[data-state=current] .k{color:var(--accent)}.quotekit [data-step]{transition:opacity .3s,filter .3s,border-color .3s,box-shadow .3s}.quotekit [data-step][data-state=ahead]{opacity:.5;filter:saturate(.3)}.quotekit [data-step][data-state=ahead]:hover,.quotekit [data-step][data-state=ahead]:focus-within{opacity:1;filter:none}.quotekit .panel[data-state=current]{box-shadow:0 0 0 4px var(--accent-soft);border-color:#d6431f73}.quotekit .viewport[data-state=current] .drop .ring{border-color:var(--accent);color:var(--accent);animation:2.2s ease-in-out infinite qk-pulse}@keyframes qk-pulse{0%,to{box-shadow:0 0 #d6431f4d}50%{box-shadow:0 0 0 8px #d6431f00}}.quotekit .panel.fresh .total b{animation:.7s ease-out qk-fresh}@keyframes qk-fresh{0%{color:var(--accent)}}.quotekit .rows span[data-tip]{border-bottom:1px dotted var(--faint)}@media (prefers-reduced-motion:reduce){.quotekit [data-step],.quotekit .trail{transition:none}.quotekit .drop .ring,.quotekit .panel.fresh .total b{animation:none!important}}.quotekit dialog{border:1px solid var(--line);border-radius:var(--r);width:calc(100% - 32px);max-width:680px;color:var(--ink);padding:0}.quotekit dialog::backdrop{background:#14141459}.quotekit dialog .d-in{padding:var(--s5);gap:var(--s3);font-size:var(--t-base);line-height:1.55;display:grid}.quotekit dialog h2{font-size:var(--t-title)}.quotekit dialog h3{font:600 var(--t-base)/1.3 inherit;letter-spacing:0;text-transform:none;color:var(--ink);margin:var(--s2) 0 0;border:0;padding:0}.quotekit dialog .d-sec{gap:var(--s2);display:grid}.quotekit dialog p,.quotekit dialog li{color:var(--muted)}.quotekit dialog ul{gap:4px;margin:0;padding-left:1.1em;display:grid}.quotekit dialog .close{justify-self:end}.quotekit .screen{gap:var(--s3);grid-template-rows:auto minmax(0,1fr);height:calc(100vh - 160px);min-height:620px;display:grid}.quotekit .studio{gap:var(--s3);grid-template-columns:286px minmax(0,1fr) 340px;min-height:0;display:grid}.quotekit .bar{align-items:center;gap:var(--s2) var(--s4);padding:var(--s2) var(--s3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-wrap:wrap;display:flex}.quotekit .bar-group{align-items:center;gap:var(--s2);min-height:30px;display:flex}.quotekit .bar-sep{background:var(--line-soft);align-self:stretch;width:1px;margin:2px 0}.quotekit .k{font:600 var(--t-label)/1 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--faint);white-space:nowrap}.quotekit .seg{border:1px solid var(--line);background:var(--sunk);border-radius:6px;display:flex;overflow:hidden}.quotekit .seg button{cursor:pointer;color:var(--muted);font:600 var(--t-base)/1.4 inherit;background:0 0;border:0;padding:5px 11px;transition:background .12s,color .12s}.quotekit .seg button:hover{color:var(--ink);background:#fff}.quotekit .seg button[aria-pressed=true]{background:var(--ink);color:#fff}.quotekit .btn{border:1px solid var(--line);color:var(--ink);cursor:pointer;font:600 var(--t-base)/1.4 inherit;white-space:nowrap;background:#fff;border-radius:6px;align-items:center;gap:6px;padding:5px 11px;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.quotekit .btn:hover{border-color:var(--accent);color:var(--accent)}.quotekit .btn.primary{background:var(--ink);border-color:var(--ink);color:#fff}.quotekit .btn.primary:hover{background:var(--accent);border-color:var(--accent);color:#fff}.quotekit .btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.quotekit .btn.ghost:hover{color:var(--accent);background:var(--accent-soft)}.quotekit .chip{background:var(--sunk);border:1px solid var(--line-soft);max-width:32ch;font-size:var(--t-base);border-radius:999px;align-items:center;gap:7px;padding:4px 10px;display:inline-flex}.quotekit .chip .nm{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.quotekit .chip .ct{font-family:var(--mono);font-size:var(--t-small);color:var(--muted);white-space:nowrap}.quotekit .chip[data-empty=yes]{color:var(--faint)}.quotekit .chip[data-empty=yes] .nm{font-style:italic;font-weight:400}.quotekit select,.quotekit input[type=number]{font:inherit;font-size:var(--t-base);border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;padding:4px 7px}.quotekit select:focus-visible,.quotekit input:focus-visible,.quotekit button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.quotekit #qkQty{width:62px;font-family:var(--mono)}.quotekit #qkSection{width:120px;accent-color:var(--ink)}.quotekit #qkSectionRow{display:flex}.quotekit [hidden]{display:none!important}.quotekit .col{grid-template-rows:minmax(0,1fr);min-height:0;display:grid}.quotekit .panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.quotekit .panel-head{justify-content:space-between;align-items:baseline;gap:var(--s2);padding:var(--s3) var(--s4);border-bottom:1px solid var(--line-soft);background:linear-gradient(var(--surface),var(--sunk));display:flex}.quotekit .panel-head h2{font-size:var(--t-title);letter-spacing:-.01em;font-weight:650}.quotekit .panel-head .hint{font-size:var(--t-small);color:var(--faint);text-align:right}.quotekit .panel-body{padding:var(--s3) var(--s4) var(--s4);gap:var(--s2);align-content:start;display:grid;overflow-y:auto}.quotekit .note{font-size:var(--t-small);color:var(--muted);line-height:1.5}.quotekit h3{font:600 var(--t-label)/1 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--faint);margin:var(--s4) 0 var(--s1);padding-bottom:var(--s1);border-bottom:1px solid var(--line-soft)}.quotekit .panel-body>h3:first-child{margin-top:0}.quotekit .stage{grid-template-rows:minmax(0,1fr);min-width:0;display:grid;position:relative}.quotekit .viewport{border:1px solid var(--line);border-radius:var(--r);background:radial-gradient(120% 90% at 50% 0,#fff 0%,#f1f3f4 100%);min-height:0;position:relative;overflow:hidden}.quotekit .viewport[data-over=yes]{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent-soft)}.quotekit canvas{width:100%;height:100%;display:block}.quotekit .drop{place-content:center;justify-items:center;gap:var(--s2);text-align:center;cursor:pointer;background:#fbfbfad1;display:grid;position:absolute;inset:0}.quotekit .drop .ring{border:2px dashed var(--line);width:54px;height:54px;color:var(--faint);margin-bottom:var(--s1);border-radius:14px;place-content:center;transition:border-color .12s,color .12s;display:grid}.quotekit .viewport[data-over=yes] .drop .ring{border-color:var(--accent);color:var(--accent)}.quotekit .drop b{font-size:var(--t-title);font-weight:650}.quotekit .drop span{font-size:var(--t-base);color:var(--muted)}.quotekit .overlay{left:var(--s3);right:var(--s3);top:var(--s3);justify-content:space-between;align-items:flex-start;gap:var(--s2);pointer-events:none;display:flex;position:absolute}.quotekit .hud{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.quotekit .hud span{border:1px solid var(--line-soft);font:500 var(--t-small)/1.5 var(--mono);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;background:#ffffffe6;border-radius:999px;padding:3px 9px;overflow:hidden}.quotekit .viewhint{left:0;right:0;bottom:var(--s3);text-align:center;pointer-events:none;font:500 var(--t-small)/1.5 var(--mono);color:var(--faint);position:absolute}.quotekit .cam{pointer-events:auto;border:1px solid var(--line-soft);background:#ffffffe6;border-radius:999px;flex:none;gap:3px;padding:3px;display:flex}.quotekit .cam button{cursor:pointer;color:var(--muted);font:600 var(--t-small)/1.5 var(--mono);background:0 0;border:0;border-radius:999px;padding:3px 10px;transition:background .12s,color .12s}.quotekit .cam button:hover{background:var(--ink);color:#fff}.quotekit .status{left:var(--s3);bottom:var(--s3);background:var(--ink);color:#fff;max-width:min(46ch,72%);font-size:var(--t-base);border-radius:7px;padding:7px 11px;line-height:1.4;position:absolute;box-shadow:0 2px 10px #00000024}.quotekit .status[data-bad=yes]{background:var(--bad)}.quotekit .legend{right:var(--s3);bottom:var(--s3);border:1px solid var(--line);font-size:var(--t-small);color:var(--muted);background:#ffffffed;border-radius:7px;gap:3px;padding:8px 11px;display:grid;position:absolute}.quotekit .legend i{vertical-align:middle;background:linear-gradient(90deg,#d93526,#f3b833,#5a8cd1);border-radius:4px;width:56px;height:8px;margin-right:7px;display:inline-block}.quotekit .rows{display:grid}.quotekit .rows div{justify-content:space-between;gap:var(--s3);border-bottom:1px solid var(--line-soft);font-size:var(--t-base);align-items:baseline;padding:5px 0;display:flex}.quotekit .rows div:last-child{border-bottom:0}.quotekit .rows span{color:var(--muted);line-height:1.35}.quotekit .rows b{font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.quotekit .rows b.ok{color:var(--ok)}.quotekit .rows b.warn{color:var(--warn)}.quotekit .rows b.bad{color:var(--bad)}.quotekit .total{align-items:baseline;gap:var(--s2);padding-bottom:var(--s3);border-bottom:2px solid var(--ink);margin-bottom:var(--s1);display:flex}.quotekit .total b{font-size:var(--t-hero);font-family:var(--mono);letter-spacing:-.035em;font-weight:700;line-height:1}.quotekit .total span{color:var(--muted);font-size:var(--t-small)}.quotekit .flag{font-size:var(--t-base);margin:var(--s2) 0 0;border-left:3px solid;border-radius:7px;padding:9px 11px;line-height:1.45}.quotekit .flag.bad{background:var(--bad-bg);color:#6f2418;border-color:var(--bad)}.quotekit .flag.warn{background:var(--warn-bg);color:#6a4a00;border-color:var(--warn)}.quotekit .flag.info{background:var(--sunk);color:var(--muted);border-color:var(--line)}.quotekit .field{gap:var(--s2) var(--s2);font-size:var(--t-base);border-bottom:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) 84px;align-items:center;padding:6px 0;display:grid}.quotekit .field:last-child{border-bottom:0}.quotekit .field label{color:var(--muted);grid-area:1/1;line-height:1.25}.quotekit .field label .mono{font-family:var(--mono);font-size:var(--t-small);color:var(--faint)}.quotekit .field input[type=number]{width:100%;font-family:var(--mono);text-align:right;grid-area:1/2}.quotekit .field input[type=range]{width:100%;accent-color:var(--ink);opacity:.72;grid-area:2/1/auto/-1;margin:0}.quotekit .field input[type=range]:hover{opacity:1}.quotekit .field .unit{display:none}.quotekit .check{gap:var(--s2);font-size:var(--t-base);padding:var(--s2);margin-bottom:var(--s2);background:var(--sunk);cursor:pointer;border-radius:6px;align-items:flex-start;line-height:1.35;display:flex}.quotekit .check input{accent-color:var(--ink);margin-top:2px}@media (width<=1280px){.quotekit .screen{height:auto;min-height:0}.quotekit .studio{grid-template-columns:260px minmax(0,1fr)}.quotekit .stage{min-height:56vh}.quotekit .col.right{grid-column:1/-1}.quotekit .col.right .panel-body{max-height:360px}}@media (width<=880px){.quotekit .screen{height:auto;min-height:0}.quotekit .studio{grid-template-columns:minmax(0,1fr)}.quotekit .viewport{height:58vh}.quotekit .col.right .panel-body{max-height:none}.quotekit .bar{gap:var(--s2)}.quotekit .bar-sep{display:none}.quotekit .stage{order:1}.quotekit .col.right{order:2}.quotekit .col.left{order:3}}
