:root{--color-brand-base:#fde4e6;--color-brand-point:#d2668b;--color-brand-cream:#fbf6e8;--color-brand-point-hover:#bd5479;--color-brand-point-active:#a94369;--color-brand-disabled:#ead7dd;--color-bg:#fffaf7;--color-surface:#fff;--color-surface-soft:#fff1f3;--color-surface-cream:var(--color-brand-cream);--color-text:#34242b;--color-text-strong:#20151a;--color-muted:#806f76;--color-line:#f1cbd4;--color-line-soft:#f7dfe5;--color-danger:#b64a58;--color-warning:#9b6b29;--color-success:#8c4e66;--shadow-soft:0 14px 38px #924d6517;--shadow-subtle:0 8px 22px #924d650f;--radius-sm:12px;--radius-md:18px;--radius-lg:28px;--radius-pill:999px;--bg:var(--color-bg);--panel:var(--color-surface);--panel-soft:var(--color-surface-soft);--text:var(--color-text);--muted:var(--color-muted);--line:var(--color-line-soft);--accent:var(--color-brand-point);--accent-strong:var(--color-brand-point-hover);--sun:#f0b35a;--berry:var(--color-brand-point);--ink:var(--color-text-strong);--danger:var(--color-danger);--warning:var(--color-warning);--shadow:var(--shadow-soft)}*{box-sizing:border-box}html,body{background:radial-gradient(circle at 12% 0%, #fde4e6b8, transparent 34%), linear-gradient(180deg, #fffdfb 0%, var(--color-bg) 44%, #fff7f9 100%);min-height:100%;color:var(--color-text);margin:0;font-family:Arial,Apple SD Gothic Neo,Noto Sans KR,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button:disabled,a[aria-disabled=true]{cursor:not-allowed;opacity:.58}:focus-visible{outline-offset:3px;outline:3px solid #d2668b47}.page{width:min(1180px,100% - 32px);margin:0 auto;padding:34px 0 60px}.narrow-page{width:min(480px,100% - 32px);margin:0 auto;padding:72px 0}.topbar{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffaf7e0;border-bottom:1px solid #f1cbd4b3;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:16px;width:min(1180px,100% - 32px);min-height:68px;margin:0 auto;display:flex}.brand{color:var(--color-brand-point-active);letter-spacing:0;font-weight:900}.nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nav a,.ghost-button{border:1px solid var(--color-line-soft);border-radius:var(--radius-pill);min-height:38px;color:var(--color-text);cursor:pointer;background:#ffffffd1;padding:9px 14px;font-weight:800;box-shadow:0 4px 14px #d2668b0d}.nav a.active{border-color:var(--color-brand-point);background:var(--color-brand-point);color:#fff;box-shadow:0 10px 22px #d2668b33}.nav a:hover,.ghost-button:hover{border-color:var(--color-line);background:var(--color-surface-soft)}.nav a.active:hover{border-color:var(--color-brand-point-hover);background:var(--color-brand-point-hover)}.nav-user{border:1px solid var(--color-line-soft);border-radius:var(--radius-pill);background:var(--color-brand-cream);min-height:38px;color:var(--color-brand-point-active);white-space:nowrap;align-items:center;padding:8px 14px;font-size:13px;font-weight:900;display:inline-flex}.danger-button{color:var(--color-danger);border-color:#f2bdc6}.table-link{color:var(--color-brand-point-active);text-underline-offset:3px;font-weight:900;-webkit-text-decoration:underline #d2668b6b;text-decoration:underline #d2668b6b}.panel{border:1px solid var(--color-line-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);background:#ffffffeb}.panel-pad{padding:22px}.section-title{justify-content:space-between;align-items:flex-end;gap:18px;margin:0 0 18px;display:flex}.section-eyebrow,.hero-kicker{color:var(--color-brand-point);margin-bottom:9px;font-size:13px;font-weight:900;display:inline-flex}h1,h2,h3,p{margin-top:0}h1{color:var(--color-text-strong);margin-bottom:8px;font-size:32px;font-weight:900;line-height:1.22}h2{color:var(--color-text-strong);margin-bottom:10px;font-size:21px;font-weight:900}h3{color:var(--color-text-strong)}.muted{color:var(--color-muted)}.stack{gap:18px;display:grid}.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.summary-card{border-radius:var(--radius-md);min-height:120px;padding:18px}.summary-card.highlight{background:linear-gradient(135deg, #fff 0%, var(--color-brand-cream) 100%)}.summary-card p{color:var(--color-muted);margin-bottom:0;font-size:13px;line-height:1.55}.summary-card-head{align-items:center;gap:8px;margin-bottom:10px;display:flex}.summary-icon{border-radius:var(--radius-pill);background:var(--color-brand-base);width:28px;height:28px;color:var(--color-brand-point-active);justify-content:center;align-items:center;font-size:12px;font-weight:900;display:inline-flex}.summary-label{color:var(--color-muted);margin-bottom:0;font-size:13px;font-weight:900}.summary-value{color:var(--color-text-strong);overflow-wrap:anywhere;margin-bottom:8px;font-size:24px;font-weight:900;line-height:1.18}.table-wrap{width:100%;overflow-x:auto}table{border-collapse:separate;border-spacing:0;width:100%;min-width:820px}th,td{border-bottom:1px solid var(--color-line-soft);text-align:left;vertical-align:top;padding:14px 12px;font-size:14px}th{background:var(--color-surface-soft);color:var(--color-muted);white-space:nowrap;font-size:13px;font-weight:900}tbody tr:hover td{background:#fde4e62e}.data-table-panel{overflow:hidden}.badge{border-radius:var(--radius-pill);background:var(--color-brand-base);min-height:28px;color:var(--color-brand-point-active);white-space:nowrap;border:1px solid #d2668b29;align-items:center;padding:5px 11px;font-size:12px;font-weight:900;display:inline-flex}.badge.soft{background:var(--color-brand-cream);color:var(--color-muted)}.badge.danger{color:var(--color-danger);background:#ffe9ed}.badge.warning{color:var(--color-warning);background:#fff3dc}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.field{gap:7px;display:grid}.field label{color:var(--color-muted);font-size:13px;font-weight:900}.field input,.field select{border:1px solid var(--color-line-soft);border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--color-text);background:#fffffff0;padding:11px 13px;box-shadow:inset 0 1px #fff9}.field input:hover,.field select:hover{border-color:var(--color-line)}.field input:focus,.field select:focus{border-color:var(--color-brand-point);outline:3px solid #d2668b29}.button{border-radius:var(--radius-pill);background:var(--color-brand-point);color:#fff;cursor:pointer;border:0;justify-content:center;align-items:center;min-height:44px;padding:11px 18px;font-weight:900;display:inline-flex;box-shadow:0 10px 22px #d2668b38}.button:hover{background:var(--color-brand-point-hover)}.button:active{background:var(--color-brand-point-active)}.button:disabled{background:var(--color-brand-disabled);box-shadow:none}.login-help{border:1px solid var(--color-line-soft);border-radius:var(--radius-md);background:var(--color-surface-soft);color:var(--color-muted);padding:14px;font-size:14px;line-height:1.55}.login-card{background:radial-gradient(circle at 92% 0,#fde4e6b8,#0000 34%),#fffffff0}.filters{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:14px;display:grid}.filter-panel{background:linear-gradient(135deg,#fff 0%,#fff7f9 100%)}.filter-reset{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.filter-note{margin:12px 0 0}.empty-state{color:var(--color-muted);text-align:center;padding:36px 18px}.pagination{align-items:center;gap:8px;display:flex}.pagination a,.pagination button{border:1px solid var(--color-line-soft);border-radius:var(--radius-pill);color:var(--color-text);background:#fff;padding:8px 12px}.public-dashboard{gap:16px;width:min(1240px,100% - 32px)}.public-hero{border:1px solid var(--color-line-soft);border-radius:var(--radius-lg);background:radial-gradient(circle at 22% 12%, #ffffffd6, transparent 30%), linear-gradient(135deg, var(--color-brand-base) 0%, var(--color-brand-cream) 56%, #fff 100%);box-shadow:var(--shadow-soft);grid-template-columns:minmax(520px,1.12fr) minmax(380px,.88fr);align-items:stretch;gap:24px;padding:24px;display:grid}.hero-product-area,.hero-title-area{min-width:0}.hero-title-area{align-content:center;justify-items:start;padding:18px 8px;display:grid}.public-hero h1{color:var(--color-text-strong);margin-bottom:10px;font-size:40px;line-height:1.15}.public-hero p{max-width:720px;color:var(--color-muted);margin-bottom:0;font-size:16px;line-height:1.7}.product-card{border:1px solid var(--color-line-soft);border-radius:var(--radius-md);min-height:150px;box-shadow:var(--shadow-subtle);background:#fffffff0;grid-template-columns:120px minmax(0,1fr);gap:14px;padding:12px;display:grid}.hero-product-card{background:#ffffffdb;border-color:#f1cbd4f2;border-radius:24px;grid-template-columns:minmax(220px,.95fr) minmax(220px,1.05fr);gap:18px;height:100%;min-height:292px;padding:18px}.product-thumb{background:radial-gradient(circle at 35% 30%, #ffffffdb, transparent 34%), linear-gradient(135deg, var(--color-brand-base), var(--color-brand-cream));min-height:126px;color:var(--color-brand-point-active);border-radius:16px;justify-content:center;align-items:center;font-size:13px;font-weight:900;display:flex;overflow:hidden}.hero-product-card .product-thumb{aspect-ratio:1;border-radius:22px;min-height:252px}.product-thumb img{object-fit:cover;width:100%;height:100%}.product-card-body{align-content:center;gap:10px;min-width:0;display:grid}.product-card h3{margin-bottom:0;font-size:16px;line-height:1.35}.hero-product-card h3{font-size:23px;line-height:1.32}.product-card p{margin-bottom:0}.product-price{color:var(--color-text-strong);font-size:20px;font-weight:900}.hero-product-card .product-price{color:var(--color-brand-point-active);font-size:30px}.sales-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.public-orders-panel{border-color:var(--color-line-soft);overflow:hidden}.public-section-head{justify-content:space-between;align-items:flex-end;gap:16px;padding:20px 20px 0;display:flex}.public-section-head h2{margin-bottom:6px;font-size:22px}.sales-table th{background:var(--color-brand-base);color:var(--color-brand-point-active)}.sales-table td{font-size:15px}.quantity-pill,.buyer-id{border-radius:var(--radius-pill);background:var(--color-brand-cream);min-height:30px;color:var(--color-brand-point-active);letter-spacing:0;justify-content:center;align-items:center;padding:5px 11px;font-size:13px;font-weight:900;display:inline-flex}.buyer-id{background:var(--color-brand-base)}.contract-document{background:linear-gradient(135deg, #fff 0%, var(--color-brand-cream) 100%);border-color:var(--color-line-soft)}.contract-document-head{border-bottom:1px solid var(--color-line-soft);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;display:flex}.contract-document-head h2{margin-bottom:0;font-size:22px}.contract-terms{gap:0;margin:0;display:grid}.contract-terms div{border-bottom:1px solid var(--color-line-soft);grid-template-columns:160px minmax(0,1fr);gap:18px;padding:16px 0;display:grid}.contract-terms div:last-child{border-bottom:0}.contract-terms dt{color:var(--color-muted);font-weight:900}.contract-terms dd{color:var(--color-text-strong);overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:900;line-height:1.5}.dashboard-controls{gap:8px;display:grid}.dashboard-summary-title h2{margin-bottom:6px}.dashboard-summary-title p{margin-bottom:0}.dashboard-filters{grid-template-columns:auto minmax(190px,1fr) minmax(190px,1fr) minmax(150px,.75fr) auto auto;align-items:end;gap:10px}.dashboard-summary-title{margin-top:2px}.compact-filter-panel{box-shadow:var(--shadow-subtle);background:#ffffffdb;border-radius:18px;padding:12px 14px}.compact-filter-title{color:var(--color-brand-point-active);white-space:nowrap;align-self:center;font-size:13px;font-weight:900}.compact-filter-panel .field{gap:5px}.compact-filter-panel .field label{font-size:12px}.compact-filter-panel .field input{border-radius:11px;min-height:36px;padding:7px 10px;font-size:13px}.compact-filter-panel .button,.compact-filter-panel .ghost-button{min-height:36px;padding:7px 14px;font-size:13px}@media (max-width:920px){.public-hero{grid-template-columns:1fr}.hero-title-area{order:-1;padding:4px 0 0}.grid,.form-grid,.filters,.sales-grid,.dashboard-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-filter-title{grid-column:1/-1}}@media (max-width:620px){.grid,.form-grid,.filters,.sales-grid,.dashboard-filters{grid-template-columns:1fr}.topbar-inner,.section-title,.public-section-head,.contract-document-head{flex-direction:column;align-items:flex-start}.public-hero{padding:22px}.public-hero h1{font-size:31px}.product-card{grid-template-columns:1fr}.hero-product-card,.hero-product-card .product-thumb{min-height:0}.contract-terms div{grid-template-columns:1fr;gap:6px}}
