.byw{--byw-accent:#0e5c57;--byw-ink:#2b2622;--byw-line:rgba(43,38,34,.28);color:inherit;padding:0 0 56px}
.byw *{box-sizing:border-box}
.byw [hidden]{display:none!important}
.byw__intro{text-align:center;padding:48px 16px 28px;max-width:760px;margin:0 auto}
.byw__title{margin:0 0 8px}
.byw__punch{margin:0 0 10px;font-size:1.25em;font-style:italic;opacity:.9}
.byw__copy{margin:0 auto 20px;max-width:52ch;opacity:.85}
.byw__btn,.byw__chip,.byw__tool{appearance:none;font:inherit;font-size:14px;color:inherit;background:transparent;border:1px solid var(--byw-line);border-radius:999px;padding:9px 16px;min-height:44px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;line-height:1.2}
.byw__btn--primary,.byw__chip[aria-pressed=true]{background:var(--byw-accent);border-color:var(--byw-accent);color:#fff}
.byw__btn:disabled,.byw__chip:disabled,.byw__tool:disabled,.byw__btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}
.byw__btn:focus-visible,.byw__chip:focus-visible,.byw__tool:focus-visible,.byw__stage:focus-visible,.byw__search:focus-visible{outline:2px solid var(--byw-accent);outline-offset:2px}
.byw__app{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:28px;max-width:1360px;margin:0 auto;padding:0 16px;align-items:start}
@media(max-width:900px){.byw__app{grid-template-columns:minmax(0,1fr);gap:16px}}
.byw__bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.byw__bar-group{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.byw__bar-sp{flex:1}
.byw__swatch{width:44px;height:44px;border-radius:50%;border:2px solid var(--byw-line);cursor:pointer;padding:0}
.byw__swatch[aria-pressed=true]{border-color:var(--byw-accent);box-shadow:0 0 0 2px #fff,0 0 0 4px var(--byw-accent)}
.byw__stagewrap{position:relative;background:#efe8da;border-radius:6px;overflow:hidden}
.byw__stage{display:block;width:100%;height:auto;max-height:76vh;touch-action:pan-y;user-select:none;-webkit-user-select:none;outline-offset:-2px}
.byw__stage [data-uid],.byw__stage [data-handle]{touch-action:none;cursor:grab}
.byw__badge{position:absolute;top:10px;left:10px;z-index:2;padding:5px 11px;border-radius:999px;font-size:12px;line-height:1.2;background:rgba(255,255,255,.93);color:var(--byw-ink);border:1px solid rgba(0,0,0,.14);max-width:calc(100% - 20px)}
.byw__badge.is-ok{background:#e3f1ee;border-color:var(--byw-accent)}
.byw__empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;pointer-events:none;color:var(--byw-ink);opacity:.75}
.byw__empty p{margin:0;max-width:34ch;background:rgba(255,255,255,.7);padding:10px 14px;border-radius:8px}
.byw__toolbar{margin-top:12px;display:grid;gap:10px;padding:12px;border:1px solid var(--byw-line);border-radius:8px}
.byw__toolbar-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.byw__tool{border-radius:8px;padding:8px 12px;min-width:44px}
.byw__seltitle{margin:0;font-weight:600;font-size:14px}
.byw__selmeta{margin:0;font-size:13px;opacity:.8}
.byw__status{margin:10px 0 0;min-height:1.4em;font-size:13px}
.byw__status.is-warn{color:#8a4b00}
.byw__status.is-err{color:#9d1c14}
.byw__note{font-size:13px;opacity:.85;margin:8px 0 0}
.byw__side{display:grid;gap:16px}
.byw__trayhead{display:flex;gap:8px;align-items:center;justify-content:space-between}
.byw__trayhead h2{margin:0;font-size:1.1em}
.byw__traytoggle{display:none}
@media(max-width:900px){.byw__traytoggle{display:inline-flex}.byw__trayhead h2{display:none}}
.byw__tray{display:grid;gap:12px}
.byw__search{width:100%;min-height:44px;padding:0 14px;font:inherit;font-size:16px;border:1px solid var(--byw-line);border-radius:8px;background:#fff;color:var(--byw-ink)}
.byw__cats{display:flex;gap:6px;flex-wrap:wrap}
.byw__list{list-style:none;margin:0;padding:0;display:grid;gap:12px;max-height:68vh;overflow:auto}
@media(max-width:900px){.byw__list{max-height:56vh}}
.byw__card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;padding:10px;border:1px solid var(--byw-line);border-radius:8px;background:rgba(255,255,255,.5)}
.byw__card img{width:76px;height:76px;object-fit:cover;border-radius:4px;background:#efe8da}
.byw__card h3{margin:0 0 2px;font-size:14px;line-height:1.3;font-weight:600}
.byw__price{margin:0 0 6px;font-size:13px;opacity:.85}
.byw__chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.byw__chips .byw__chip{padding:6px 12px;min-height:44px;font-size:13px}
.byw__add{width:100%}
.byw__nores{margin:0;font-size:14px;opacity:.8}
.byw__hint{font-size:12px;opacity:.75;margin:0}
.byw__report table{border-collapse:collapse;width:100%;font-size:13px}
.byw__report th,.byw__report td{border:1px solid var(--byw-line);padding:6px 8px;text-align:left;vertical-align:middle}
.byw__checker{background:conic-gradient(#ccc 25%,#fff 0 50%,#ccc 0 75%,#fff 0) 0 0/16px 16px;display:inline-block;line-height:0}
.byw__checker img{max-width:120px;max-height:120px}
.byw__app[data-photo=drag] .byw__stagewrap{outline:3px dashed var(--byw-accent);outline-offset:-3px}
@media(prefers-reduced-motion:no-preference){.byw__chip,.byw__btn{transition:background-color .15s}}
