*{box-sizing:border-box}body{margin:0;font-family:Arial,'Noto Sans KR',sans-serif;background:#f4f6f8;color:#20252b}header{background:#18222d;color:white;padding:18px 4%;display:flex;justify-content:space-between;align-items:center;gap:20px}header b{font-size:25px;letter-spacing:2px}header span{opacity:.7}nav{display:flex;gap:18px;flex-wrap:wrap}a{color:inherit;text-decoration:none}nav a{color:#eaf0f5}main{max-width:1500px;margin:30px auto;padding:0 24px}h1{font-size:25px}.search{display:flex;gap:8px;margin:20px 0}.search input{flex:1}.search input,input,select{padding:10px;border:1px solid #cbd2d9;border-radius:6px}button,.small{border:0;background:#263a4d;color:white;padding:10px 15px;border-radius:6px;cursor:pointer}.table{overflow:auto;background:white;border-radius:10px;box-shadow:0 2px 10px #0000000d}table{width:100%;border-collapse:collapse}th,td{padding:13px 14px;border-bottom:1px solid #edf0f2;text-align:left;white-space:nowrap}th{background:#eef2f5}.qty{font-size:18px;font-weight:bold}.low{background:#fff4f1}.move{display:inline-flex;gap:5px;margin-left:8px}.move input[name=amount]{width:80px}.card{max-width:500px;margin:50px auto;background:white;padding:28px;border-radius:10px}.card label{display:block;margin:14px 0}.card label input{display:block;width:100%;margin-top:6px}.flash{padding:12px;background:#fff0cf;margin-bottom:12px;border-radius:6px}.empty{text-align:center;padding:40px;color:#7b858e}@media(max-width:800px){header{align-items:flex-start;flex-direction:column}.move{display:flex;margin:8px 0 0;flex-wrap:wrap}}

textarea{width:100%;box-sizing:border-box;padding:10px;border:1px solid #cbd5e1;border-radius:7px;font:inherit;resize:vertical;}
.remarks-cell{min-width:300px}.remarks-form{display:flex;gap:6px;align-items:center}.remarks-form input{min-width:210px;flex:1}.remarks-form button{padding:9px 12px}

/* V1.4 responsive mobile layout */
@media(max-width:800px){
  body{font-size:14px}
  header{padding:14px 16px;gap:10px}
  header b{font-size:22px}
  nav{width:100%;gap:8px 14px;font-size:14px}
  main{margin:18px auto;padding:0 12px}
  h1{font-size:22px;margin:0 0 14px}
  .search{margin:14px 0 18px;gap:6px}
  .search input{min-width:0;width:100%;font-size:16px}
  .search button{flex:0 0 auto}
  .table{overflow:visible;background:transparent;box-shadow:none;border-radius:0}
  .inventory-table table,.history-table table{display:block;width:100%}
  .inventory-table thead,.history-table thead{display:none}
  .inventory-table tbody,.history-table tbody{display:grid;gap:12px}
  .inventory-table tr,.history-table tr{display:block;background:#fff;border:1px solid #e3e8ed;border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden}
  .inventory-table tr.low{background:#fff4f1;border-color:#f2dcd5}
  .inventory-table td,.history-table td{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:10px 12px;border-bottom:1px solid #edf0f2;white-space:normal;overflow-wrap:anywhere}
  .inventory-table td:last-child,.history-table td:last-child{border-bottom:0}
  .inventory-table td::before,.history-table td::before{content:attr(data-label);font-weight:700;color:#59636d;font-size:13px}
  .inventory-table td[data-label="품번"]{font-size:18px}
  .inventory-table td[data-label="현재고"]{font-size:18px}
  .remarks-cell{min-width:0}
  .remarks-form{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}
  .remarks-form input{min-width:0;width:100%;font-size:16px}
  .manage-cell{align-items:start!important}
  .move{display:grid;grid-template-columns:90px 80px minmax(120px,1fr) auto;width:100%;margin:8px 0 0;gap:6px}
  .move input[name=amount]{width:100%}
  .move input,.move select{min-width:0;width:100%;font-size:16px}
  .small{display:inline-block;text-align:center}
  .card{margin:20px auto;padding:20px 16px;border-radius:12px}
  .card input,.card textarea,.card select{font-size:16px}
  .empty{display:block!important;padding:30px 15px!important;text-align:center!important}
  .empty::before{display:none}
}
@media(max-width:520px){
  header{align-items:stretch}
  nav{justify-content:flex-start}
  .search{display:grid;grid-template-columns:minmax(0,1fr) auto}
  .inventory-table td,.history-table td{grid-template-columns:82px minmax(0,1fr);padding:9px 10px}
  .move{grid-template-columns:1fr 1fr}
  .move input[name=note]{grid-column:1 / -1}
  .move button{grid-column:1 / -1;width:100%}
}
