.spp{--spp-ink:#0f172a;--spp-mute:#64748b;--spp-line:#d6dbe3;--spp-accent:#0f766e;--spp-bg:#f6f7f9;background:var(--spp-bg);color:var(--spp-ink);min-height:100vh;font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.spp-wrap{max-width:100%;padding:14px 16px 40px}.spp-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:flex-start}.spp-head h1{font-size:20px;margin:0 0 2px}.spp-muted{color:var(--spp-mute);margin:0}.spp-who{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.spp-pill{font-size:12px;padding:2px 8px;border-radius:999px;background:#e2e8f0}.spp-pill.ok{background:#ccfbf1;color:#115e59}.spp-btn{background:var(--spp-accent);color:#fff;border:1px solid var(--spp-accent);border-radius:6px;padding:6px 12px;font:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.spp-btn.ghost{background:#fff;color:var(--spp-ink);border-color:var(--spp-line)}.spp-btn:disabled{opacity:.6;cursor:default}.spp-link{background:none;border:0;color:var(--spp-accent);text-decoration:underline;cursor:pointer;font:inherit;padding:0}.spp-tabs{display:flex;gap:4px;margin:14px 0 0;overflow-x:auto;border-bottom:1px solid var(--spp-line)}.spp-tabs button{border:1px solid transparent;border-bottom:0;background:none;padding:7px 12px;border-radius:6px 6px 0 0;cursor:pointer;font:inherit;white-space:nowrap;color:var(--spp-mute)}.spp-tabs button.on{background:#fff;border-color:var(--spp-line);color:var(--spp-ink);font-weight:600;margin-bottom:-1px}.spp-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:#fff;border:1px solid var(--spp-line);border-top:0;padding:8px}.spp-bar.small{font-size:13px;border-top:1px solid var(--spp-line);margin-top:6px;border-radius:6px}.spp-bar input,.spp-bar select{font:inherit;border:1px solid var(--spp-line);border-radius:6px;padding:5px 8px;background:#fff}.spp-bar input[type=search]{min-width:200px;flex:1 1 200px;max-width:320px}.spp-qty input{width:64px;margin:0 3px}.spp-save{color:var(--spp-accent);margin-left:auto}.spp-cols{position:relative}.spp-cols summary{cursor:pointer;border:1px solid var(--spp-line);border-radius:6px;padding:5px 10px;list-style:none}.spp-cols summary::-webkit-details-marker{display:none}.spp-colbox{position:absolute;z-index:40;top:calc(100% + 4px);left:0;background:#fff;border:1px solid var(--spp-line);border-radius:8px;padding:8px 10px;box-shadow:0 8px 24px rgba(15,23,42,.12);display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:3px 12px;min-width:320px}.spp-colbox label{display:flex;gap:6px;align-items:center;white-space:nowrap}.spp-note{margin-top:8px;background:#fef3c7;border:1px solid #fcd34d;padding:8px 10px;border-radius:6px}.spp-help{color:var(--spp-mute);font-size:12.5px;margin:8px 0}.spp-err{background:#fee2e2;color:#991b1b;border-radius:6px;padding:8px 10px;margin:6px 0}.spp-grid{background:#fff;border:1px solid var(--spp-line)}.spp-grid .jexcel_content{box-shadow:none}.spp-grid .jexcel>thead>tr>td{background:#eef2f6;font-weight:600;position:sticky;top:0}.spp-grid .jexcel>tbody>tr>td.readonly{color:#334155;background:#eef1f5}.spp-grid .jexcel>tbody>tr>td{white-space:nowrap}.spp-empty td{color:transparent}.spp-toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#0f172a;color:#fff;padding:9px 14px;border-radius:8px;z-index:60;cursor:pointer;max-width:90vw}.spp-modal{position:fixed;inset:0;background:rgba(15,23,42,.45);display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.spp-card{background:#fff;border-radius:10px;padding:18px;width:100%;max-width:420px;display:flex;flex-direction:column;gap:8px;max-height:90vh;overflow:auto}.spp-card.wide{max-width:900px}.spp-card h2{margin:0;font-size:18px}.spp-card label{display:flex;flex-direction:column;gap:3px;font-size:13px}.spp-card input{font:inherit;border:1px solid var(--spp-line);border-radius:6px;padding:7px 9px}.spp-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.spp-row label{flex-direction:row;align-items:center;gap:5px}.spp-hist{overflow:auto}.spp-hist table{border-collapse:collapse;width:100%;font-size:13px}.spp-hist td,.spp-hist th{border:1px solid var(--spp-line);padding:4px 6px;text-align:left}@media (max-width:700px){.spp-head h1{font-size:17px}.spp-save{margin-left:0;width:100%}}.spp-howto{margin-top:8px;background:#f0fdfa;border:1px solid #99f6e4;padding:7px 10px;border-radius:6px;font-size:13px}.spp-k{padding:0 5px;border-radius:3px;border:1px solid #cbd5e1;font-weight:600}.spp-k.yellow{background:#fff8db}.spp-k.white{background:#fff}.spp-k.grey{background:#eef1f5}.spp-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--spp-mute);margin:6px 0;align-items:center}.spp-legend .sw{display:inline-block;width:14px;height:14px;border:1px solid #cbd5e1;vertical-align:-2px;margin-right:4px;border-radius:2px}.sw.grey{background:#eef1f5}.sw.yellow{background:#fff8db}.sw.white{background:#fff}.sw.head{background:#dfe7f1}.spp-legend .red{color:#dc2626}.spp-grid thead tr:first-child td{white-space:nowrap}.spp-sel{display:inline-flex;gap:6px;align-items:center}.spp-totals{display:flex;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid var(--spp-line);border-top:0;padding:8px 10px;font-size:13px}.spp-helplist{margin:4px 0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:14px}.spp-btn:disabled.ghost{color:#94a3b8}.spp-wrap{max-width:100vw;overflow-x:clip}.spp-grid{max-width:100%;overflow:hidden}.spp-subtabs{margin-top:6px}.spp-subtabs button{font-size:13px;padding:5px 10px}.spp-card select,.spp-card textarea{font:inherit;border:1px solid var(--spp-line);border-radius:6px;padding:7px 9px}.spp-query{background:#fff8db;border-radius:6px;padding:4px 6px}.spp-ph{display:inline-flex;align-items:center;gap:3px;cursor:zoom-in}.spp-ph img{height:26px;width:34px;object-fit:cover;border-radius:3px;border:1px solid #cbd5e1;display:block}.spp-ph i{font-style:normal;font-size:11px;color:#64748b}.spp-pic{position:fixed;inset:0;background:rgba(15,23,42,.72);z-index:90;display:flex;align-items:center;justify-content:center;padding:16px}.spp-pic-box{background:#fff;border-radius:10px;max-width:min(900px,96vw);max-height:92vh;overflow:auto;display:flex;flex-direction:column;gap:8px;padding:12px 14px}.spp-pic-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.spp-pic-top button{border:0;background:none;font-size:18px;cursor:pointer;line-height:1}.spp-pic-imgs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.spp-pic-imgs img{max-width:100%;max-height:66vh;border-radius:6px;border:1px solid #e2e8f0}.spp-pic-links{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px}.spp-pic-note{color:#64748b}