*{box-sizing:border-box}body{margin:0;background:#f4f1ec;color:#171717;font-family:Arial,Helvetica,sans-serif}header{height:72px;background:#171717;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 5vw}header strong{font-size:22px;letter-spacing:.14em}header small{display:block;color:#aaa;margin-top:4px;font-size:10px;letter-spacing:.16em}button{border:0;border-radius:10px;padding:12px 16px;font-weight:700;cursor:pointer;background:#f03d88;color:#fff}button.secondary{background:#fff;color:#171717;border:1px solid #ddd}main{max-width:1200px;margin:0 auto;padding:48px 5vw}.panel{max-width:470px;margin:60px auto;background:#fff;border-radius:22px;padding:34px;box-shadow:0 10px 40px #00000012}.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:800;color:#f03d88}.panel h1,h1,h2{margin:.2em 0 .4em;font-size:38px}.panel p{color:#666;line-height:1.5}.panel label{display:block;font-size:13px;font-weight:700;margin:18px 0}.panel input,.toolbar input,.toolbar select{width:100%;margin-top:7px;border:1px solid #ddd;border-radius:10px;padding:13px;background:#fff;font:inherit}.panel button{width:100%;margin-top:8px}.message{min-height:20px}.hidden{display:none!important}.topline{display:flex;align-items:center;justify-content:space-between;gap:20px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0}.stats div{background:#fff;border:1px solid #e5e0d9;border-radius:18px;padding:20px}.stats b{display:block;font-size:28px}.stats span{color:#777;font-size:12px;margin-top:5px;display:block}.toolbar{display:grid;grid-template-columns:1fr 220px;gap:12px;margin:18px 0}.orders{display:grid;gap:12px}.order-card{background:#fff;border:1px solid #e5e0d9;border-radius:18px;padding:20px}.order-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.order-no{font-weight:900;font-size:18px}.muted{color:#777;font-size:13px;line-height:1.5}.status{border-radius:999px;padding:7px 10px;background:#eee;font-size:11px;font-weight:800;text-transform:uppercase}.items{margin:16px 0;border-top:1px solid #eee}.item{padding:14px 0;border-bottom:1px solid #eee}.letters{font-family:monospace;font-size:13px;line-height:1.8}.order-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:15px}.status-select{border:1px solid #ddd;border-radius:9px;padding:9px;background:#fff}.production{margin-top:52px}.batches{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.batch{background:#fff;border:1px solid #e5e0d9;border-radius:18px;padding:20px}.batch h3{margin:0 0 14px}.count-grid{display:flex;flex-wrap:wrap;gap:7px}.count{border:1px solid #eee;border-radius:9px;padding:7px 9px;font-family:monospace}.count b{font-size:15px}.count small{color:#777}.empty{padding:30px;text-align:center;color:#777;background:#fff;border-radius:18px}@media(max-width:700px){.stats{grid-template-columns:repeat(2,1fr)}.toolbar,.batches{grid-template-columns:1fr}.panel h1,h1,h2{font-size:30px}.order-head{flex-direction:column}}

.payment-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0;padding:12px 14px;border:1px solid rgba(0,0,0,.12);border-radius:14px;background:#fafafa}
.payment-toggle{display:flex;align-items:center;gap:10px;font-weight:700;cursor:pointer}
.payment-toggle input{width:20px;height:20px;accent-color:inherit;cursor:pointer}
.payment-badge{font-size:12px;font-weight:800;letter-spacing:.04em;padding:7px 10px;border-radius:999px}
.payment-badge.paid{background:#dff6e8;color:#126b3b}
.payment-badge.unpaid{background:#fff0d9;color:#8a5400}
.order-card.is-paid{border-left:4px solid #1d8f5a}
.order-card.is-unpaid{border-left:4px solid #d08a00}
.production-note{margin-top:-8px;max-width:600px}
@media(max-width:700px){.payment-row{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

.referrals{margin-top:52px}.referrer-form{display:grid;grid-template-columns:1.2fr 1fr 1fr .6fr auto;gap:10px;margin:18px 0}.referrer-form input{border:1px solid #ddd;border-radius:10px;padding:13px;background:#fff;font:inherit}.referrer-list{display:grid;gap:12px}.referrer-card{background:#fff;border:1px solid #e5e0d9;border-radius:18px;padding:18px;display:grid;gap:12px}.referrer-card>div{display:flex;gap:12px;align-items:center;justify-content:space-between}.referrer-card .muted{display:block}.code-pill{font-family:monospace;font-weight:900;border:1px solid #ddd;border-radius:999px;padding:7px 10px;background:#fafafa}.ref-link{display:flex!important;gap:8px!important}.ref-link input{flex:1;min-width:0;border:1px solid #ddd;border-radius:9px;padding:10px;font-size:12px}.ref-link button{white-space:nowrap}.hidden-referral{display:none}.referral-notice{margin:0 0 14px;padding:10px 12px;border-radius:10px;background:#f6e3ed;font-size:13px;font-weight:700}@media(max-width:900px){.referrer-form{grid-template-columns:1fr 1fr}.referrer-card>div{align-items:flex-start;flex-direction:column}.ref-link{width:100%;flex-direction:column}.ref-link input,.ref-link button{width:100%}}

.store-control{margin-top:52px;background:#fff;border:1px solid #e5e0d9;border-radius:20px;padding:22px}.store-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.store-option{display:flex;gap:12px;align-items:flex-start;border:1px solid #e5e0d9;border-radius:14px;padding:15px;cursor:pointer}.store-option:has(input:checked){border-color:#f03d88;box-shadow:0 0 0 2px #f03d8822}.store-option input{margin-top:4px}.store-option b{display:block}.store-option small{display:block;color:#777;margin-top:5px;line-height:1.4}.store-fields{display:grid;grid-template-columns:1fr 240px;gap:12px;margin-bottom:14px}.store-fields label{font-size:13px;font-weight:700}.store-fields textarea,.store-fields input{width:100%;margin-top:7px;border:1px solid #ddd;border-radius:10px;padding:12px;background:#fff;font:inherit}.store-fields textarea{resize:vertical}.store-control .message{display:inline-block;margin-left:10px;color:#126b3b;font-weight:700}@media(max-width:800px){.store-grid,.store-fields{grid-template-columns:1fr}}

.referral-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.ref-summary-card{background:#fff;border:1px solid #e5e0d9;border-radius:16px;padding:16px}.ref-summary-card b{display:block;font-size:22px}.ref-summary-card span{display:block;color:#777;font-size:12px;margin-top:5px}.ref-earnings{display:grid!important;grid-template-columns:repeat(4,1fr);gap:10px;justify-content:stretch!important}.ref-earnings span{display:flex;flex-direction:column;gap:4px;border:1px solid #eee;border-radius:10px;padding:10px}.ref-earnings small{color:#777;font-size:11px}.ref-earnings b{font-size:16px}@media(max-width:900px){.referral-summary{grid-template-columns:repeat(2,1fr)}.ref-earnings{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:500px){.referral-summary{grid-template-columns:1fr}.ref-earnings{grid-template-columns:1fr!important}}
.referral-order-line{margin-top:8px;padding:8px 10px;border-radius:9px;background:#f6e3ed;font-size:12px;display:inline-block}

.production-section{margin-top:28px}.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin:0 0 12px}.section-title h3{margin:0;font-size:16px;letter-spacing:.04em}.section-title span{font-size:12px;color:#888}.source-list{border-top:1px solid #eee;margin-top:10px}.source-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eee;font-size:13px}.batch-total{margin-top:14px;padding:11px 12px;background:#f7f4ef;border-radius:10px;font-size:12px;letter-spacing:.04em}.printed-check{display:flex!important;align-items:center;gap:10px;margin-top:14px;padding:12px;border:1px solid #ddd;border-radius:12px;background:#fff;font-weight:800;cursor:pointer}.printed-check input{width:21px;height:21px;cursor:pointer}.letter-focus{display:flex;align-items:center;gap:10px;margin:8px 0 2px;font-size:12px;color:#777}.letter-focus b{font-size:28px;color:#171717}.letter-focus span{font-family:monospace;border:1px solid #eee;border-radius:8px;padding:6px 8px;color:#171717}.history-list{display:grid;gap:8px}.history-row{background:#fff;border:1px solid #e5e0d9;border-radius:14px;padding:12px 14px}.history-row>div:first-child{font-size:13px}.history-row .muted{font-size:11px;margin-top:3px}@media(max-width:700px){.section-title{align-items:flex-start;flex-direction:column}}

.restore-print{margin-top:8px;font-size:12px;padding:7px 10px}
.history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}

.plate-meta{display:inline-block;margin:2px 0 10px;padding:7px 9px;border-radius:9px;background:#f7f4ef;font-size:11px;letter-spacing:.05em;color:#555}.keycap-plate-batch .count-grid{margin:8px 0 12px}

/* V34 assembly checklist */
.assembly-control{margin-top:28px}
.assembly-list{display:grid;gap:10px}
.assembly-row{display:flex;align-items:center;gap:14px;padding:15px 16px;border:1px solid var(--line,#ddd);border-radius:14px;background:var(--card,#fff);cursor:pointer}
.assembly-check-wrap{display:flex;align-items:center;justify-content:center}
.assembly-check{width:22px;height:22px;accent-color:#111;cursor:pointer}
.assembly-main{display:flex;flex-direction:column;gap:3px;flex:1}
.assembly-main b{font-size:15px}
.assembly-main strong{font-size:14px}
.assembly-main small{color:#777}
.assembly-status{font-size:11px;font-weight:800;letter-spacing:.08em;padding:6px 9px;border-radius:999px;background:#eef8ee}
.assembly-history-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.assembly-history-row>div:first-child{flex:1}
@media(max-width:700px){.assembly-status{display:none}.assembly-row{align-items:flex-start}.assembly-check{margin-top:2px}}
/* V45 product-separated admin */
.admin-nav{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.admin-nav a{padding:10px 13px;border-radius:10px;background:#fff;border:1px solid #ddd;color:#171717;text-decoration:none;font-size:13px;font-weight:800}.admin-nav a.active{background:#171717;color:#fff;border-color:#171717}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:24px 0}.product-card{background:#fff;border:1px solid #e5e0d9;border-radius:20px;padding:24px;text-decoration:none;color:#171717;display:block;transition:.15s}.product-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #0000000d}.product-card .pc-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.product-card h3{font-size:24px;margin:4px 0}.product-card p{color:#777;margin:6px 0 18px}.product-card .pc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pc-stat{background:#f7f4ef;border-radius:12px;padding:12px}.pc-stat b{display:block;font-size:20px}.pc-stat span{font-size:11px;color:#777}.badge{display:inline-block;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase;background:#eee}.badge.pink{background:#f6e3ed}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.quick-card{background:#fff;border:1px solid #e5e0d9;border-radius:16px;padding:16px}.quick-card b{display:block;font-size:24px}.quick-card span{font-size:12px;color:#777}.section-box{margin-top:30px}.page-message{min-height:20px;color:#777}.workflow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.workflow .wf{background:#fff;border:1px solid #e5e0d9;border-radius:14px;padding:14px;text-align:center}.workflow .wf b{display:block;font-size:20px}.workflow .wf span{font-size:11px;color:#777}.production-order{background:#fff;border:1px solid #e5e0d9;border-radius:18px;padding:18px;margin-bottom:12px}.production-order .po-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.production-order .po-title{font-weight:900;font-size:18px}.production-order .po-meta{color:#777;font-size:12px;line-height:1.5}.po-items{margin:14px 0;border-top:1px solid #eee}.po-item{padding:12px 0;border-bottom:1px solid #eee}.po-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.po-actions select{border:1px solid #ddd;border-radius:9px;padding:9px;background:#fff}.product-pill{font-size:10px;font-weight:900;letter-spacing:.08em;padding:6px 9px;border-radius:999px;background:#f7f4ef}.bubble-print-card{background:#fff;border:1px solid #e5e0d9;border-radius:18px;padding:20px;display:grid;gap:14px}.bubble-print-main{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.bubble-spec{display:flex;gap:8px;flex-wrap:wrap}.colour-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #eee;border-radius:999px;font-size:11px;font-weight:800}.colour-dot{width:11px;height:11px;border-radius:50%;display:inline-block;border:1px solid #bbb}.bubble-steps{display:flex;gap:8px;flex-wrap:wrap}.bubble-steps span{padding:7px 9px;border-radius:9px;background:#f7f4ef;font-size:11px;font-weight:800}.bubble-steps .current{background:#f6e3ed}.notice-card{background:#fff8ec;border:1px solid #f0d5a4;border-radius:16px;padding:15px;margin:18px 0}.notice-card b{display:block;margin-bottom:5px}.nav-back{font-size:12px;color:#777;text-decoration:none}.dashboard-recent{display:grid;gap:9px}.recent-row{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#fff;border:1px solid #e5e0d9;border-radius:13px;padding:12px 14px}.recent-row .left{display:flex;gap:10px;align-items:center}.recent-row small{color:#777}.@media(max-width:800px){.product-grid,.quick-grid{grid-template-columns:1fr}.workflow{grid-template-columns:repeat(2,1fr)}}
.trail-colors{display:flex;flex-wrap:wrap;gap:8px 18px;margin:8px 0 4px;font-size:14px;color:#555}.trail-colors span{display:inline-flex;gap:4px}.trail-colors b{color:#222}
