:root{--pink: #ffdce2;--bg: #0c0e12;--card: #ffffff0a;--line: #ffffff1a;--dim: #9aa1ae}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:#f1f2f5;font:14px ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}button,input,select{font:inherit;color:inherit}.o-page{min-height:100vh}.o-top{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:12px;padding:12px 16px;background:#0c0e12ee;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.o-top>img{width:38px;height:38px}.o-brand{display:flex;flex-direction:column;line-height:1.15}.o-brand b{font-size:15px}.o-brand small{color:var(--pink);font-size:11.5px}.o-sp{flex:1}.o-tabs{display:flex;gap:4px;margin-left:10px}.o-tabs button{padding:7px 12px;border-radius:9px;border:1px solid transparent;background:none;cursor:pointer;color:var(--dim);font-weight:700}.o-tabs button.on{background:var(--card);border-color:var(--line);color:var(--pink)}.o-user{display:flex;align-items:center;gap:8px;font-weight:700;min-width:0}.o-user img{width:30px;height:30px;border-radius:50%}.o-user span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.o-user button{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:var(--card);cursor:pointer}.o-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border-radius:10px;border:1px solid var(--line);background:var(--card);font-weight:800;text-decoration:none;color:inherit;cursor:pointer;white-space:nowrap}.o-btn.primary{background:var(--pink);border-color:var(--pink);color:#2a1218}.o-btn:disabled{opacity:.5;cursor:default}.o-main{max-width:760px;margin:0 auto;padding:20px 16px 48px;display:flex;flex-direction:column;gap:24px}.o-main.wide{max-width:1040px}h2{margin:0 0 10px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}h2 .sub{margin-left:6px;letter-spacing:0;text-transform:none}.sub{color:var(--dim);font-size:12.5px}.n{font:900 15px ui-monospace,Consolas,monospace;color:var(--pink)}.o-note,.o-empty{padding:14px;border-radius:12px;border:1px dashed var(--line);color:var(--dim);text-align:center}.o-mine{display:flex;flex-direction:column;gap:8px}.o-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:16px;border-radius:14px;background:#ffdce21a;border:1px solid var(--pink)}.o-card .n{grid-row:span 2;font-size:20px}.o-card b{font-size:16px}.o-card .sub{grid-column:2;display:inline-flex;align-items:center;gap:5px}.o-card .when{grid-column:3;grid-row:1 / span 2}.o-card.done{background:var(--card);border-color:var(--line)}.when{display:flex;flex-direction:column;align-items:flex-end;flex:none}.when small{color:var(--dim);font-size:11.5px}.o-list{display:flex;flex-direction:column;gap:6px}.o-row{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:11px;background:var(--card);border:1px solid var(--line)}.o-row.making{border-color:#ffdce266}.o-row.mine{background:#ffdce21a;border-color:var(--pink)}.o-row.done{opacity:.55}.o-row .t{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:8px}.o-row .t i{font-style:normal;font-size:11px;font-weight:800;color:var(--pink)}.o-row .t small{flex-basis:100%;color:var(--dim);font-size:12px}.o-foot{margin:8px 0 0;color:var(--dim);font-size:12px}.o-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.o-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--dim);min-width:190px}.o-form label.grow{flex:1}.o-form input,.o-form select{height:40px;padding:0 11px;border-radius:10px;background:#15181e;border:1px solid var(--line);color:#f1f2f5;outline:none}.o-form input:focus,.o-form select:focus{border-color:var(--pink)}.o-form .o-btn{height:40px}.o-stack{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;margin-top:12px}.o-qty{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:11px;background:var(--card);border:1px solid var(--line)}.o-qty.on{background:#ffdce21a;border-color:var(--pink)}.o-qty .t{flex:1;min-width:0;display:flex;flex-direction:column}.o-qty .t small{color:var(--dim);font-size:12px}.o-qty button{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--line);background:var(--card);cursor:pointer}.o-qty button:disabled{opacity:.35;cursor:default}.o-qty .v{min-width:22px;text-align:center;font:900 16px ui-monospace,Consolas,monospace;color:var(--pink)}.o-total{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;color:var(--dim)}.o-linkrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;color:var(--dim);font-size:13px}.o-linkrow code{padding:6px 9px;border-radius:8px;background:var(--card);color:var(--pink);overflow-wrap:anywhere}.o-msg{margin-top:10px;color:var(--pink);font-size:13px}.o-msg.bad{color:#fca5a5}.o-table{display:flex;flex-direction:column;gap:6px}.o-trow{display:grid;grid-template-columns:52px minmax(130px,1fr) 190px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 11px;border-radius:11px;background:var(--card);border:1px solid var(--line)}.o-trow.making{border-color:var(--pink)}.o-trow.closed{opacity:.6}.o-trow .t{display:flex;flex-direction:column;min-width:0}.o-trow .t small{color:var(--dim);font-size:12px}.o-id{padding:4px 6px;border:0;border-radius:6px;background:none;font:12.5px ui-monospace,Consolas,monospace;color:var(--dim);cursor:copy;text-align:left}.o-id:hover{background:var(--card);color:var(--pink)}.o-nt{color:var(--dim);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.o-acts{display:flex;gap:4px}.o-acts button{display:inline-flex;align-items:center;gap:5px;height:32px;min-width:32px;justify-content:center;padding:0 8px;border-radius:8px;border:1px solid var(--line);background:var(--card);cursor:pointer;font-weight:700;font-size:12.5px}.o-acts button:disabled{opacity:.35;cursor:default}.o-acts button.go{background:#ffdce21f;border-color:#ffdce266;color:var(--pink)}.o-acts button.bad{color:#fca5a5}@media (max-width: 820px){.o-trow{grid-template-columns:44px minmax(0,1fr)}.o-id,.o-nt,.o-acts{grid-column:1 / -1}.o-acts{flex-wrap:wrap}.o-form label{min-width:100%}.o-form .o-btn{width:100%}.o-tabs{margin-left:0}.o-brand small{display:none}}
