*{box-sizing:border-box}body{margin:0;background:#f6f7fb;color:#202638;font-family:system-ui,-apple-system,Noto Sans JP,sans-serif}main{max-width:1250px;margin:auto;padding:30px 22px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}header h1{margin:0;font-size:28px}header h1 span{color:#9068bd}.muted,header p{color:#7b8292;font-size:13px}a{color:#69469b;text-decoration:none}.layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-gap:22px;gap:22px}aside,section{background:white;padding:24px;border-radius:16px;box-shadow:0 4px 20px #25284a0a}h2{font-size:18px;margin:0 0 18px}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:32px}button{cursor:pointer;border:1px solid #e2ddea;border-radius:10px;background:white;padding:10px;font:inherit}.product{text-align:left;display:flex;flex-direction:column;gap:12px;min-height:125px}.product:hover{border-color:#a381c9;background:#fbf8ff}.product small{color:#8b6db0}.product b{color:#69469b}.form{display:grid;grid-template-columns:2fr 1fr 1fr auto;grid-gap:8px;gap:8px}input,select{min-width:0;width:100%;border:1px solid #dfe0e8;border-radius:8px;padding:11px;font:inherit}.checkout,.form button{background:#7954a5;color:white;border:0}.cart{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding:14px 0}.cart p{font-size:13px;color:#737987}.cart button{margin-left:5px}.total{display:flex;justify-content:space-between;margin:30px 0 22px;padding-top:18px;border-top:2px solid #eee}.total strong{font-size:24px}label{display:block;font-size:13px}select{margin-top:8px}.checkout{width:100%;padding:16px;margin-top:16px;font-weight:700}.checkout:disabled{opacity:.4;cursor:not-allowed}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}td,th{padding:12px;text-align:left;border-bottom:1px solid #eee}@media(max-width:800px){.layout{grid-template-columns:1fr}.products{grid-template-columns:repeat(2,1fr)}.form{grid-template-columns:1fr 1fr}.form button{grid-column:span 2}}.login{max-width:470px;margin:8vh auto}.loginform{display:grid;grid-gap:20px;gap:20px}.loginform label{font-weight:600}.loginform input{margin-top:8px}.stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-bottom:20px}.stats strong{font-size:26px}nav{display:flex;gap:8px;align-items:center}nav button{font-size:12px}@media(max-width:700px){header{align-items:flex-start;gap:12px;flex-direction:column}.stats{grid-template-columns:1fr}}