:root{--bg:#faf8f3;--surface:#fff;--ink:#223d36;--muted:#63746e;--accent:#17644d;--line:#dedfd5;--lav:#ece4f6}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Noto Sans JP',sans-serif;font-size:15px;line-height:1.75}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,.button{border:1px solid var(--accent);border-radius:8px;background:var(--accent);color:white;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 22px;font-weight:650;text-decoration:none;cursor:pointer}button:hover,.button:hover{filter:brightness(1.12)}button:disabled{opacity:.55;cursor:wait}.secondary{background:white;color:var(--accent);border-color:var(--line)}.small{padding:8px 18px;min-height:40px}.text-button{border:0;background:none;color:var(--muted);padding:0;min-height:40px;font-weight:400}input,select,textarea{background:#fff;border:1px solid #b6c1b9;border-radius:7px;padding:11px 13px;min-height:46px;width:100%;color:var(--ink)}textarea{resize:vertical}input[type=checkbox]{width:18px;min-height:18px;flex-shrink:0}label{display:block;font-size:14px;font-weight:550}label input,label textarea,label select{margin-top:6px}:focus-visible{outline:3px solid #b576ce;outline-offset:3px}header{max-width:1440px;margin:auto;min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 48px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:27px;letter-spacing:-1px;font-weight:750;text-decoration:none}.mark{font-size:38px;color:var(--accent)}.brand-sub{font-size:10px;letter-spacing:.05em;border-left:1px solid var(--line);padding-left:12px;margin-left:8px;font-weight:400}nav{display:flex;gap:24px;align-items:center;font-size:13px}nav a{text-decoration:none;white-space:nowrap}nav form{margin:0}main{max-width:1280px;margin:auto;padding:24px 32px 64px}h1,h2,h3,p{margin-top:0}h1{font-size:34px;line-height:1.4;letter-spacing:-.04em}h2{font-size:25px;line-height:1.5}h3{font-size:18px}small,.caption{font-size:12px;color:var(--muted)}.eyebrow{letter-spacing:.16em;font-size:11px;font-weight:700;color:var(--accent);margin:0 0 14px}.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:40px;padding:46px 0 50px}.hero h1{font-size:57px;letter-spacing:.02em;line-height:1.5;margin-bottom:20px}.lead{color:var(--muted);font-size:16px;line-height:2}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}.quiet{font-size:14px}.hero-art{background:#eee9dd;min-height:355px;border-radius:180px 180px 25px 25px;position:relative;display:flex;align-items:center;justify-content:center;gap:0;padding:15px}.hero-art img{width:41%;height:auto;filter:drop-shadow(0 8px 7px #223d3620)}.hero-art img:first-child{transform:rotate(-15deg);margin-right:-50px;align-self:flex-start;margin-top:50px}.hero-art img:nth-child(2){z-index:1;transform:translateY(50px)}.hero-art img:nth-child(3){transform:rotate(12deg);margin-left:-40px;align-self:flex-start;margin-top:55px}.hero-art span{position:absolute;bottom:16px;right:20px;font-size:9px;letter-spacing:.2em}.benefits{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-around;font-size:13px;margin-bottom:54px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0}.section-title h1,.section-title h2{margin-bottom:0}.filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:24px 0}.filters .search{flex:1;min-width:200px}.filters>input{flex:1;min-width:180px}.filters>select{width:auto;max-width:240px}.filters label{flex:1;min-width:120px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 20px}.design-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;transition:transform .15s}.design-card:hover{transform:translateY(-4px)}.preview{aspect-ratio:1;background:#f0eee7;display:flex;align-items:center;justify-content:center;padding:20px}.preview img{width:100%;height:100%;object-fit:contain}.card-info{padding:18px}.category{color:var(--muted);font-size:11px}.card-info h3{margin:4px 0 12px}.meta{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:var(--muted)}.meta strong{font-size:13px;color:var(--accent)}.meta strong span{margin-left:10px}.pagination{padding:28px 0;text-align:center}.pagination nav{justify-content:center}.cta{margin-top:70px;padding:46px;text-align:center;border-radius:20px;background:var(--lav)}footer{border-top:1px solid var(--line);max-width:1280px;padding:36px;margin:auto}footer p{color:var(--muted);font-size:13px;margin-top:10px}footer small{display:block;margin-top:20px}footer>a:not(.brand){font-size:12px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px;margin-bottom:20px}.narrow{max-width:720px;margin:40px auto}.auth{max-width:450px;margin:45px auto}.auth h1{font-size:26px}.stack{display:flex;flex-direction:column;gap:17px}.stack button{align-self:stretch}.check{display:flex;align-items:center;gap:8px;font-size:12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.notice,.error{border-radius:8px;padding:16px 20px;margin-bottom:20px;background:#e5eee6;border:1px solid #bfd4c4}.error{background:#fff0eb;color:#9c382d}.error p:last-child{margin:0}.back{display:inline-block;margin:20px 0}.detail{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center;margin-bottom:40px}.detail-image{background:#eeeae2;border-radius:20px;padding:35px;text-align:center}.detail-image img{width:100%;max-height:500px;object-fit:contain}.detail-image small{display:block}.spec{display:grid;grid-template-columns:1fr 1.2fr;font-size:13px;margin:20px 0}.spec dt,.spec dd{padding:10px 0;border-bottom:1px solid var(--line);margin:0}.spec dd{text-align:right}.selected-design{display:flex;gap:20px;align-items:center}.selected-design img{width:100px}.order-row{display:flex;gap:20px;justify-content:space-between;align-items:center;background:white;border:1px solid var(--line);border-radius:10px;padding:20px;text-decoration:none;margin-bottom:12px}.order-row h3{margin:4px 0}.badge{display:inline-block;background:#edf0e9;font-size:11px;border-radius:5px;padding:5px 9px;white-space:nowrap}.unread{background:#eee3f5;color:#674488}.empty{text-align:center;padding:40px;color:var(--muted)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px}.admin-workspace{grid-template-columns:205px minmax(0,1fr) 300px}.inbox-item{display:block;text-decoration:none;border-bottom:1px solid var(--line);padding:15px 5px}.inbox-item strong,.inbox-item span{display:block}.inbox-item strong{font-size:13px}.inbox-item span{font-size:11px;color:var(--muted)}.inbox-item.active{background:#e9f0e8}.inbox{padding:15px;align-self:start}.conversation{min-width:0;align-self:start}.conversation h2{font-size:20px}.messages{max-height:650px;overflow:auto;padding:5px 0 20px}.message{padding:16px;background:#f2f3ed;border-radius:10px;margin-bottom:16px;overflow-wrap:anywhere}.message p,.preserve{white-space:pre-wrap;margin:6px 0 0}.message.staff{background:#e4efe7;margin-left:30px}.internal{background:#faf1d9;padding:15px;border:1px dashed #c6af65;border-radius:8px;margin-top:22px}.reply{padding-top:20px;border-top:1px solid var(--line)}summary{cursor:pointer;font-weight:650;min-height:30px}details>form{margin-top:18px}.file{display:block;padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.file small{display:block}.order-context h3{font-size:17px}.order-context .panel{padding:20px}.order-context form{margin-top:20px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:25px}.stats>div{padding:22px;background:white;border:1px solid var(--line);border-radius:12px}.stats strong{display:block;font-size:32px}.stats strong span{font-size:13px;margin-left:5px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th,td{padding:16px 12px;border-bottom:1px solid var(--line)}td a{text-decoration:none}td small,td strong{display:block}th{font-size:12px;color:var(--muted)}.material{padding:12px 0;border-bottom:1px solid var(--line)}.review{padding:20px 0;border-bottom:1px solid var(--line)}.new-message{font-size:12px;color:var(--accent)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:1050px){header{padding:16px 24px}.brand-sub{display:none}nav{gap:14px}.hero h1{font-size:42px}.hero-art{min-height:300px}.admin-workspace{grid-template-columns:minmax(0,1fr) 300px}.inbox{display:none}.grid{grid-template-columns:repeat(3,1fr)}.detail{gap:35px}}@media(max-width:700px){header{display:block;padding:15px 20px}.brand{font-size:25px}nav{margin-top:12px;flex-wrap:wrap;gap:8px 18px;font-size:12px}main{padding:15px 18px 40px}.hero{grid-template-columns:1fr;padding:25px 0;gap:22px}.hero h1{font-size:38px}.hero-art{min-height:265px;max-width:420px;width:100%;margin:auto}.hero-art img{width:34%}.hero-art img:first-child,.hero-art img:nth-child(3){margin-top:20px}.hero-art img:nth-child(2){transform:translateY(10px)}.benefits{gap:12px;flex-wrap:wrap;font-size:11px;margin-bottom:30px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}.preview{padding:10px}.card-info{padding:12px}.card-info h3{font-size:16px}.meta{display:block}.meta strong{display:block;margin-top:7px}h1{font-size:27px}h2{font-size:23px}.section-title{align-items:flex-start}.section-title>.button{font-size:12px;padding:8px 12px}.filters{gap:8px}.filters select{max-width:100%}.filters .search{min-width:100%}.cta{padding:30px 20px;margin-top:40px}.detail,.workspace,.admin-workspace{grid-template-columns:1fr;gap:20px}.detail-image{padding:20px}.order-context{display:flex;flex-direction:column}.panel{padding:18px}.order-row{flex-wrap:wrap;gap:10px}.order-row>span:first-child{width:100%}.stats{grid-template-columns:repeat(2,1fr);gap:10px}.stats>div{padding:15px}.stats strong{font-size:25px}.two{grid-template-columns:1fr}.narrow{margin:25px auto}.actions{gap:15px}.messages{max-height:none}footer{padding:28px 20px}.auth{margin:25px auto}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.brand-reading{font-size:11px;letter-spacing:.08em;font-weight:500;white-space:nowrap}.brand{flex-wrap:wrap}.estimate-box{padding:20px;background:#edf3eb;border:1px solid #c9d9c7;border-radius:10px}fieldset{border:1px solid var(--line);border-radius:9px;padding:18px}legend{font-weight:650;font-size:14px}fieldset p{margin-top:14px}#catalog-source a{font-size:13px}#production-request .check{align-items:flex-start}

.queue-thumbnail{display:block;width:110px;height:110px;max-width:110px;object-fit:contain}.chat-proof-image{max-width:100%;height:auto}.patch-order-image{width:180px;max-width:100%}

.attachment-image{margin:16px 0}.attachment-image>a{display:block}.attachment-image img{cursor:zoom-in}.attachment-image figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}.attachment-image figcaption span{overflow-wrap:anywhere;min-width:0}.attachment-image figcaption a{flex-shrink:0}.image-viewer{width:min(1200px,96vw);max-width:96vw;height:92dvh;max-height:92dvh;padding:0;border:0;border-radius:16px;background:#f8f7fc;color:#272235}.image-viewer::backdrop{background:rgba(15,12,24,.8)}.image-viewer[open]{display:flex;flex-direction:column}.image-viewer-toolbar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:white;border-bottom:1px solid #ded9e8;flex-shrink:0}.image-viewer-toolbar span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-viewer-toolbar a,.image-viewer-toolbar button{flex-shrink:0;margin:0}.image-viewer-canvas{min-height:0;flex:1;display:flex;justify-content:center;align-items:center;overflow:auto;padding:12px}.image-viewer-canvas img{max-width:100%;max-height:100%;object-fit:contain}.queue-delete{margin-top:16px;max-width:280px}.queue-delete summary{color:#a42d43;cursor:pointer}.danger{background:#a42d43;color:white}.queue-delete p{font-size:13px}.queue-thumbnail{cursor:zoom-in}@media(max-width:600px){.image-viewer-toolbar{flex-wrap:wrap;gap:8px}.image-viewer-toolbar span{flex-basis:100%}.attachment-image figcaption{align-items:flex-start;flex-direction:column}}
