:root{--ink:#171b20;--ink-2:#3c434b;--mute:#6b727a;--line:#d8dbd7;--ground:#f0f1ee;--paper:#fff;--mark:#ffc629;--mark-deep:#e0a800;--go:#0f7a4c;--go-soft:#e3f3ea;--due:#b9340f;--due-soft:#fbe9e2;--r:6px;--r-photo:10px;--font:"Pretendard Variable", Pretendard, -apple-system, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--ink);background:var(--ground);word-break:keep-all;margin:0;font-size:16px;line-height:1.55}h1,h2,h3,p,ul,ol,dl,dd{margin:0;padding:0}ul,ol{list-style:none}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{border-radius:var(--r);white-space:nowrap;cursor:pointer;border:1.5px solid #0000;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-size:15px;font-weight:650;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.btn:disabled{opacity:.55;cursor:default}.btn-ink{background:var(--ink);color:#fff}.btn-ink:hover{background:#000}.btn-mark{background:var(--mark);color:var(--ink)}.btn-mark:hover{background:var(--mark-deep)}.btn-line{background:var(--paper);border-color:var(--line);color:var(--ink)}.btn-line:hover{border-color:var(--ink)}.btn-wide{width:100%}.photo{object-fit:cover;background:var(--ground);border-radius:var(--r-photo);display:block}.photo-md{aspect-ratio:4/3;width:100%}.photo-sm{border-radius:5px;flex:none;width:56px;height:42px}.photo-empty{color:var(--mute);background:repeating-linear-gradient(135deg,#e6e8e4 0 10px,#eef0ec 10px 20px);place-items:center;font-size:13px;display:grid}.photo-empty span{background:var(--paper);border-radius:3px;padding:2px 8px}.tag{vertical-align:middle;background:var(--ground);color:var(--ink-2);border-radius:4px;padding:2px 9px;font-size:13px;font-weight:650;line-height:1.6;display:inline-block}.tag-sent{color:#2b426b;background:#e9edf5}.tag-submitted{background:var(--due-soft);color:var(--due)}.tag-confirmed{color:#6b5200;background:#fff3c9}.tag-delivered{background:var(--go-soft);color:var(--go)}.sub{color:var(--mute);font-size:13px;font-weight:400;display:block}.sub-inline{color:var(--mute);margin-left:6px;font-size:14px;font-weight:400}.admin-bar{background:var(--ink);color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;display:flex}.admin-brand{font-size:17px;font-weight:750;text-decoration:none}.admin-brand span{color:var(--mark);margin-left:6px}.admin-nav{align-items:center;gap:20px;display:flex}.admin-nav a:not(.btn){opacity:.85;font-weight:550;text-decoration:none}.admin-nav a:not(.btn):hover{opacity:1;text-underline-offset:5px;text-decoration:underline}.admin-nav .btn{min-height:38px}.admin-main{max-width:1080px;margin:0 auto;padding:28px 24px 80px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:20px;display:flex}.page-head h1{letter-spacing:-.02em;font-size:28px;font-weight:780;line-height:1.25}.page-head h1 .tag{margin-left:8px}.notice{color:var(--mute);max-width:62ch;font-size:15px}.notice-on{color:var(--due);font-weight:650}.route{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);grid-template-columns:repeat(5,1fr);display:grid;overflow:hidden}.route-stop{border-left:1px solid var(--line);border-bottom:4px solid #0000;padding:16px 18px 14px;text-decoration:none;position:relative}.route-stop:first-child{border-left:0}.route-stop:hover{background:#fafaf8}.route-stop.is-active{border-bottom-color:var(--mark);background:#fffbea}.route-count{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:30px;font-weight:780;line-height:1.1;display:block}.route-label{color:var(--ink-2);font-size:14px}.route-stop.is-due .route-count{color:var(--due)}.route-stop.is-due .route-label{color:var(--due);font-weight:650}.table-head{justify-content:space-between;align-items:baseline;margin:28px 0 10px;display:flex}.table-head h2{font-size:18px;font-weight:720}.table-head a{color:var(--mute);font-size:14px}.table-wrap{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow-x:auto}.table{border-collapse:collapse;width:100%;min-width:720px;font-size:15px}.table th{text-align:left;color:var(--mute);border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 14px;font-size:13px;font-weight:600}.table td{vertical-align:top;border-bottom:1px solid #ecedea;padding:12px 14px}.table tr:last-child td{border-bottom:0}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.row-link{text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px;font-weight:680}.row-link:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.empty{color:var(--mute);padding:14px 0;font-size:15px}.steps{grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:22px;display:grid}.steps li{border-top:4px solid var(--line);padding-top:8px}.steps li.is-done{border-top-color:var(--ink)}.steps li.is-now{border-top-color:var(--mark)}.steps-label{color:var(--mute);font-size:14px;font-weight:650;display:block}.steps li.is-done .steps-label,.steps li.is-now .steps-label{color:var(--ink)}.steps-time{color:var(--mute);font-variant-numeric:tabular-nums;font-size:13px}.detail{grid-template-columns:1.4fr 1fr;gap:16px;display:grid}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);margin-bottom:16px;padding:20px 22px}.panel h2{margin-bottom:12px;font-size:17px;font-weight:720}.help{color:var(--mute);max-width:64ch;margin-top:10px;font-size:14px}.copy{flex-wrap:wrap;gap:8px;display:flex}.copy input{border:1.5px solid var(--line);border-radius:var(--r);background:var(--ground);flex:240px;min-width:0;min-height:44px;padding:0 12px;font-size:14px}.copy-sent{margin-top:8px}.facts{grid-template-columns:max-content 1fr;gap:6px 18px;font-size:15px;display:grid}.facts dt{color:var(--mute)}.optlist+.optlist{margin-top:18px}.optlist h3{color:var(--mute);margin-bottom:4px;font-size:14px;font-weight:650}.optlist li{border-bottom:1px solid #ecedea;align-items:center;gap:12px;padding:9px 0;display:flex}.optlist-name{flex:1;font-weight:600}.optlist-price{font-variant-numeric:tabular-nums;white-space:nowrap}.note{border-left:4px solid var(--mark);background:#fffbea;margin-top:16px;padding:12px 14px;font-size:15px}.note strong{margin-right:8px}.grand{text-align:right;margin-top:18px;font-size:15px}.grand strong{font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-left:10px;font-size:24px;font-weight:780}.form fieldset{border:1px solid var(--line);border-radius:var(--r);background:var(--paper);margin:0 0 16px;padding:18px 22px 20px}.form legend{padding:0 6px;font-size:16px;font-weight:720}.form label{color:var(--ink-2);font-size:14px;font-weight:600;display:block}.form input:not([type=checkbox]):not([type=file]),.form select,.form textarea{border:1.5px solid var(--line);border-radius:var(--r);background:var(--paper);width:100%;min-height:44px;margin-top:5px;padding:9px 12px;font-size:16px;font-weight:400;display:block}.form input[type=file]{margin-top:6px;font-size:14px;display:block}.form textarea{resize:vertical}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--ink);outline:none}.grid-2{grid-template-columns:1fr 1fr;gap:14px 18px;display:grid}.grid-3{grid-template-columns:2fr 1fr 1fr;gap:14px 18px;display:grid}.form-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.form-inline{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.form-inline label{flex:180px}.checks li{border-bottom:1px solid #ecedea}.checks li:last-child{border-bottom:0}.check{cursor:pointer;grid-template-columns:22px 1fr auto auto;align-items:center;gap:12px;padding:11px 4px;color:var(--ink)!important;font-size:15px!important;display:grid!important}.check input{width:20px;height:20px;accent-color:var(--ink);margin:0}.check-cat{color:var(--mute);font-size:13px;font-weight:400}.check-price{font-variant-numeric:tabular-nums;text-align:right;min-width:86px;font-weight:500}.sum-line{text-align:right;margin-top:12px;font-size:15px}.sum-line strong{font-variant-numeric:tabular-nums;margin-left:8px;font-size:19px}.optadmin li{border-bottom:1px solid #ecedea}.optadmin li.is-off summary{opacity:.5}.optadmin summary,.adder summary{cursor:pointer;list-style:none}.optadmin summary::-webkit-details-marker{display:none}.adder summary::-webkit-details-marker{display:none}.optadmin summary{align-items:center;gap:12px;padding:10px 0;display:flex}.optadmin-name{flex:1;font-weight:600}.optadmin-price{font-variant-numeric:tabular-nums}.optadmin-edit{color:var(--mute);text-underline-offset:4px;margin-left:8px;font-size:14px;text-decoration:underline}.optadmin details[open] .optadmin-edit{color:var(--ink)}.form-option{gap:14px;padding:6px 0 14px;display:grid}.optadmin-toggle{padding-bottom:16px}.adder{margin-top:14px}.adder>summary{border:1.5px dashed var(--line);border-radius:var(--r);align-items:center;min-height:40px;padding:0 14px;font-size:15px;font-weight:650;display:inline-flex}.adder[open]>summary{border-style:solid;border-color:var(--ink);margin-bottom:8px}.cust{background:var(--paper);max-width:760px;min-height:100vh;margin:0 auto;padding-bottom:150px}.cust-top{background:var(--ink);color:#fff;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;font-size:14px;display:flex}.cust-top span{font-weight:720}.cust-top a{color:var(--mark);font-weight:600;text-decoration:none}.cust-hero{background:var(--mark);padding:26px 20px 28px}.cust-who{font-size:16px;font-weight:650}.cust-hero h1{letter-spacing:-.045em;margin:6px 0 14px;font-size:clamp(44px,14vw,76px);font-weight:850;line-height:1}.cust-hero h1 span{letter-spacing:0;margin-top:10px;font-size:17px;font-weight:600;display:block}.cust-lead{max-width:34em;font-size:16px}.cust-section{padding:28px 20px 4px}.cust-section h2{letter-spacing:-.02em;font-size:21px;font-weight:780}.cust-sub{color:var(--mute);margin-top:4px;font-size:15px}.cust-group h3{color:var(--ink-2);border-bottom:2px solid var(--ink);margin:24px 0 10px;padding-bottom:8px;font-size:15px;font-weight:700}.cust-empty{color:var(--mute);padding:12px 0}.tiles{grid-template-columns:repeat(2,1fr);gap:18px 14px;margin-top:14px;display:grid}.tile{cursor:pointer;border-radius:var(--r-photo);flex-direction:column;display:flex;position:relative}.tile.is-fixed{cursor:default}.tile input{opacity:0;width:1px;height:1px;position:absolute}.tile .photo{outline:0 solid var(--mark);transition:outline-width .1s}.tile.is-on .photo{outline-width:5px}.tile:has(input:focus-visible) .photo{outline:3px solid var(--ink);outline-offset:2px}.tile-check{border:2px solid var(--ink-2);background:#ffffffeb;border-radius:50%;width:30px;height:30px;position:absolute;top:8px;right:8px}.tile.is-on .tile-check{background:var(--mark);border-color:var(--ink)}.tile.is-on .tile-check:after{content:"";border:solid var(--ink);border-width:0 3px 3px 0;width:7px;height:13px;position:absolute;top:4px;left:9px;transform:rotate(45deg)}.tile-badge{background:var(--ink);color:#fff;border-radius:4px;padding:3px 8px;font-size:12px;font-weight:650;position:absolute;top:8px;left:8px}.tile-name{margin-top:10px;font-size:16px;font-weight:720;line-height:1.35}.tile-desc{color:var(--mute);margin-top:3px;font-size:14px;line-height:1.5}.tile-price{font-variant-numeric:tabular-nums;margin-top:6px;font-size:16px;font-weight:700}.cust-notebox textarea{border:1.5px solid var(--line);border-radius:var(--r);resize:vertical;width:100%;margin-top:12px;padding:12px 14px;font-size:16px;display:block}.cust-notebox textarea:focus{border-color:var(--ink);outline:none}.cust-note{border-left:4px solid var(--mark);background:#fffbea;margin-top:18px;padding:12px 14px}.cust-note strong{margin-right:8px}.cust-bar{background:var(--ink);color:#fff;padding:12px 16px calc(12px + env(safe-area-inset-bottom));z-index:10;position:fixed;bottom:0;left:0;right:0}.cust-bar-in{justify-content:space-between;align-items:center;gap:14px;max-width:728px;margin:0 auto;display:flex}.cust-bar-sum{flex-direction:column;min-width:0;font-size:13px;line-height:1.4;display:flex}.cust-bar-sum b{color:var(--mark);font-variant-numeric:tabular-nums}.cust-bar-sum strong{font-variant-numeric:tabular-nums;font-size:17px;font-weight:750}.cust-bar .btn{min-height:50px;padding:0 20px;font-size:16px}.cust-bar-error{color:#ffd0c2;max-width:728px;margin:8px auto 0;font-size:14px}.cust-receipt{background:var(--ground);border-radius:var(--r-photo);margin:28px 20px 0;padding:18px 20px 20px}.cust-receipt dl{grid-template-columns:1fr auto;gap:8px 0;font-size:16px;display:grid}.cust-receipt dd{text-align:right;font-variant-numeric:tabular-nums}.cust-receipt .is-total{border-top:2px solid var(--ink);margin-top:4px;padding-top:10px;font-size:20px;font-weight:780}.cust-fine{color:var(--mute);margin:10px 0 16px;font-size:13px}.lost{max-width:520px;margin:0 auto;padding:80px 24px}.lost h1{margin-bottom:12px;font-size:26px;font-weight:780}.lost p{color:var(--ink-2)}@media (min-width:600px){.tiles{grid-template-columns:repeat(3,1fr)}.cust-top,.cust-hero,.cust-section{padding-left:32px;padding-right:32px}.cust-receipt{margin-left:32px;margin-right:32px}}@media (max-width:760px){.admin-bar{padding:12px 16px}.admin-main{padding:20px 16px 60px}.route{grid-template-columns:repeat(2,1fr)}.route-stop{border-top:1px solid var(--line)}.route-stop:nth-child(-n+2){border-top:0}.route-stop:nth-child(odd){border-left:0}.steps{grid-template-columns:1fr;gap:0}.steps li{border-top:0;border-left:4px solid var(--line);padding:4px 0 8px 12px}.steps li.is-done{border-left-color:var(--ink)}.steps li.is-now{border-left-color:var(--mark)}.detail,.grid-2,.grid-3{grid-template-columns:1fr}.check{grid-template-columns:22px 1fr auto}.check-cat{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.admin-user{border-left:1px solid #ffffff40;align-items:center;gap:10px;padding-left:16px;font-size:14px;display:flex}.admin-user button{color:#fff;opacity:.75;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;text-decoration:underline}.admin-user button:hover{opacity:1}.login{max-width:380px;margin:0 auto;padding:12vh 24px 40px}.login-shop{color:var(--mute);font-weight:650}.login h1{letter-spacing:-.03em;border-bottom:6px solid var(--mark);margin:2px 0 6px;padding-bottom:14px;font-size:34px;font-weight:820;line-height:1.2}.login-lead{color:var(--ink-2);margin:14px 0 22px}.login-form{gap:16px;display:grid}.login-error{color:var(--due);font-size:15px;font-weight:600}
