:root{--s:#3D4852;--sm:#4a5868;--ink:#1a1a18;--mu:#6b6b67;--fa:#f6f5f1;--bo:#e2e0d8;--wh:#fff;--gr:#1a7a5e;--ac:#c8a96e;--sf:'Cormorant Garamond',Georgia,serif;--ss:'DM Sans',system-ui,sans-serif;--r:10px}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--ss);background:var(--fa);color:var(--ink);overflow:hidden;height:100vh}
.shell{display:grid;grid-template-columns:320px 1fr;height:100vh;overflow:hidden}
.sb{background:var(--wh);border-right:1px solid var(--bo);display:flex;flex-direction:column;height:100vh;overflow-y:auto}
.sbh{padding:1.25rem 1.25rem .75rem;border-bottom:1px solid var(--bo);flex-shrink:0}
.logo{font-family:var(--sf);font-size:20px;letter-spacing:.2em;font-weight:300}
.logo-s{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--mu);margin-bottom:1rem}
.lbl{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mu);font-weight:500;margin:1rem 0 .4rem}
.fld{margin-bottom:.5rem}
.fld label{font-size:11px;color:var(--mu);display:block;margin-bottom:3px}
.fld input,.fld select{width:100%;border:1px solid var(--bo);border-radius:6px;padding:6px 8px;font-size:12px;font-family:var(--ss);color:var(--ink);background:var(--fa);outline:none}
.fld input:focus,.fld select:focus{border-color:var(--s);background:var(--wh)}
.fr2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pw{position:relative}.pw input{padding-right:22px}
.pw::after{content:'%';position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--mu);pointer-events:none}
.toggle-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}
.toggle-row span{font-size:11px;color:var(--mu)}
.tgl{width:40px;height:22px;border-radius:11px;border:none;cursor:pointer;position:relative;transition:background .2s;background:var(--s);flex-shrink:0}
.tgl-k{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s;transform:translateX(18px)}
.color-opts{display:flex;gap:8px;margin-bottom:.75rem}
.co{width:26px;height:26px;border-radius:50%;cursor:pointer;border:2px solid transparent;outline:3px solid transparent;outline-offset:2px;transition:outline-color .15s,transform .15s;flex-shrink:0}
.co.active{outline-color:var(--ink);transform:scale(1.08)}
.sum{padding:1rem 1.25rem;border-top:1px solid var(--bo);margin-top:auto;flex-shrink:0}
.sg{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:.75rem}
.sc{background:var(--fa);border-radius:7px;padding:.45rem .7rem}
.sc.full{grid-column:1/-1}
.sl-{font-size:10px;color:var(--mu);margin-bottom:2px}
.sv{font-size:13px;font-weight:500;color:var(--ink)}
.sv.g{color:var(--gr)}
.sv.big{font-size:17px}
.bgen{width:100%;padding:.7rem;background:var(--s);color:#fff;border:none;border-radius:7px;font-size:12px;font-weight:500;cursor:pointer;font-family:var(--ss);transition:.15s;margin-bottom:.5rem;display:block}
.bgen:hover{background:var(--sm)}
.bgen.grey{background:var(--mu)}.bgen.grey:hover{background:#555}
.mn{padding:1.25rem;overflow-y:auto;height:100vh}
.mn-title{font-size:16px;font-weight:500;margin-bottom:.2rem}
.mn-sub{font-size:12px;color:var(--mu);margin-bottom:1rem}
.fls{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:.75rem}
.fb{padding:3px 11px;border:1px solid var(--bo);border-radius:20px;font-size:11px;cursor:pointer;background:var(--wh);color:var(--mu);font-family:var(--ss)}
.fb:hover{border-color:var(--s);color:var(--s)}
.fb.on{background:var(--s);border-color:var(--s);color:#fff}
.grid{display:flex;flex-direction:column;gap:5px}
.card{background:var(--wh);border:1px solid var(--bo);border-radius:var(--r);overflow:hidden}
.card.sel{border-color:var(--s);background:#f0f4f6}
.card:hover{border-color:#b0bec5}
.ctop{display:flex;align-items:center;gap:9px;padding:.7rem .9rem}
.chk{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--bo);display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;background:var(--wh);transition:.15s}
.card.sel .chk{background:var(--s);border-color:var(--s)}
.chk svg{display:none;width:9px;height:9px}
.card.sel .chk svg{display:block}
.ico{width:44px;height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:10px;font-weight:700;font-family:var(--ss);overflow:hidden}
.ico svg{width:28px;height:28px;display:block;flex-shrink:0}
.cinf{flex:1;min-width:0;cursor:pointer}
.cnm{font-size:12.5px;font-weight:500;color:var(--ink)}
.cmt{font-size:10px;color:var(--mu);margin-top:1px}
.cprc{text-align:right;flex-shrink:0}
.cor{font-size:11px;color:var(--mu);text-decoration:line-through;display:none}
.cfn{font-size:13px;font-weight:500}
.chv{font-size:15px;color:var(--mu);transition:transform .2s;flex-shrink:0;cursor:pointer;padding:0 2px;user-select:none}
.card.open .chv{transform:rotate(90deg)}
.cadj{display:none;align-items:center;gap:6px;padding:.4rem .9rem .5rem 3.2rem;border-top:1px solid var(--bo);background:#f5f8f9}
.card.open .cadj{display:flex}
.cadj label{font-size:10px;color:var(--mu);white-space:nowrap}
.cadj input{width:110px;border:1px solid var(--bo);border-radius:4px;padding:3px 6px;font-size:11px;font-family:var(--ss);outline:none}
.cadj input.mod{border-color:var(--ac);background:#fffbf3}
.cref{font-size:10px;color:var(--mu)}
.cref b{color:var(--ac)}
.rbtn{font-size:10px;color:var(--mu);background:none;border:none;cursor:pointer}
.cdet{display:none;padding:.5rem .9rem .7rem 3.2rem;border-top:1px solid var(--bo);background:#fafaf8;font-size:11px;color:var(--mu);line-height:1.65}
.card.open .cdet{display:block}
.cdlv{margin-top:.3rem;font-size:10.5px;color:#9a9990}
.grplbl{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mu);padding:.35rem 0;font-weight:500;margin-top:.4rem}
.rdot{width:5px;height:5px;border-radius:50%;background:var(--s);display:inline-block;margin-right:3px;vertical-align:middle;opacity:.7}
.lock-btn{font-size:12px;cursor:pointer;opacity:.3;border:none;background:none;padding:0 2px;line-height:1;transition:opacity .15s;flex-shrink:0}
.lock-btn:hover{opacity:.7}
.lock-btn.on{opacity:1;color:var(--s)}
.ext-item-row{display:flex;align-items:flex-start;gap:7px;margin-bottom:.5rem}
.ext-chk-native{width:14px;height:14px;margin-top:2px;cursor:pointer;accent-color:var(--s);flex-shrink:0}
.ext-item-body{flex:1;min-width:0}
.ext-lbl{font-size:11px;color:var(--ink);cursor:pointer;display:block;margin-bottom:3px;line-height:1.3}
.ext-hint{font-size:9px;color:var(--ac);display:block;margin-top:1px}
.ext-pw{position:relative}
.ext-pw::before{content:'$';position:absolute;left:5px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--mu);pointer-events:none}
.ext-pw:has(input:disabled)::before{display:none}
.ext-inp{width:100%;border:1px solid var(--bo);border-radius:4px;padding:3px 4px 3px 13px;font-size:11px;font-family:var(--ss);background:var(--fa);outline:none;color:var(--mu)}
.ext-inp:not(:disabled){color:var(--ink)}
.ext-inp:focus{border-color:var(--s);background:var(--wh)}
.ext-inp:disabled{border-color:transparent;background:transparent;color:var(--mu);padding-left:4px}
.ext-inp-text{width:100%;border:1px solid var(--bo);border-radius:4px;padding:3px 6px;font-size:11px;font-family:var(--ss);background:var(--fa);outline:none;color:var(--ink);margin-bottom:3px}
.ext-inp-text:focus{border-color:var(--s);background:var(--wh)}
.ext-del{border:none;background:none;color:var(--mu);cursor:pointer;font-size:14px;padding:0 2px;flex-shrink:0;margin-top:1px;line-height:1}
.ext-del:hover{color:var(--ink)}
.ext-add{border:none;background:none;color:var(--mu);cursor:pointer;font-size:11px;padding:3px 0;margin-top:.25rem;font-family:var(--ss)}
.ext-add:hover{color:var(--s)}
.ext-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--bo);margin-top:.5rem;padding-top:.5rem}
.ext-total-lbl{font-size:10px;color:var(--mu)}
.ext-total-val{font-size:11.5px;font-weight:500;color:var(--ac)}
</style>
