:root{--ink:#183346;--text:#425463;--muted:#75838d;--line:#e2e8ed;--bg:#f4f7f9;--blue:#007cba;--light:#eaf5fb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;background:white;border:1px solid var(--line);color:var(--ink);border-radius:6px;min-height:38px;padding:8px 16px;white-space:nowrap}button:hover{background:#f1f6fa}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #73bce2;outline-offset:2px}.primary{background:var(--blue);border-color:var(--blue);color:white}.primary:hover{background:#006ba0}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{border:1px solid #d7e0e6;border-radius:5px;background:white;color:var(--ink);padding:9px 12px;min-height:40px;max-width:100%}input,textarea{width:100%}label{display:grid;gap:6px;font-size:12px;color:var(--text)}aside{position:fixed;inset:0 auto 0 0;width:228px;background:white;border-right:1px solid var(--line);padding:32px 20px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;font-size:20px;font-weight:700}.brand small{display:block;font-size:11px;font-weight:400;letter-spacing:2px;color:var(--muted)}.brandmark{background:var(--ink);color:white;display:grid;place-items:center;width:40px;height:44px;font-size:22px}.shop{font-size:11px;color:var(--muted);margin:24px 0 36px}nav{display:grid;gap:8px}nav button{border:0;text-align:left;background:transparent;padding:12px}nav button span{margin-right:12px}nav button.active{background:var(--light);color:var(--blue);font-weight:600}.sidefoot{margin-top:auto;border-top:1px solid var(--line);padding-top:24px;font-size:12px}.sidefoot p,.sidefoot small{color:var(--muted)}.shell{margin-left:228px}header{height:68px;padding:0 36px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;background:white;font-size:12px;color:var(--muted)}header b{font-weight:500;color:var(--ink)}.slash{margin:0 16px;color:#b7c2ca}.connection{background:#f6f5ef;padding:4px 12px;border-radius:20px;font-size:11px;color:#7b7055}.connection i{display:inline-block;width:6px;height:6px;background:#b89d60;border-radius:50%;margin-right:6px}main{max-width:1660px;margin:auto;padding:36px}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:20px}.eyebrow{font-size:10px;color:var(--muted);letter-spacing:2px}h1{font-size:28px;line-height:1.4;letter-spacing:-.5px;margin:8px 0}h2{font-size:15px;margin:0}h3{font-size:14px;margin:0}.heading p{color:var(--muted);margin:6px 0 0}p{margin:8px 0}.projectbar{display:grid;grid-template-columns:minmax(180px,1fr) 140px 140px auto;gap:16px;align-items:end;margin-bottom:28px}.steps{display:flex;gap:40px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;margin-bottom:24px}.steps span{padding:0 0 12px}.steps .active{color:var(--blue);border-bottom:2px solid var(--blue)}.workspacegrid{display:grid;grid-template-columns:minmax(0,1fr) 324px;gap:20px;align-items:start}.drawing,.config,.quotation,.settingspanel{border:1px solid var(--line);background:white;border-radius:8px;overflow:hidden}.panelhead{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}.panelhead button{font-size:12px;padding:6px 10px;min-height:30px}.panelhead p{color:var(--muted);font-size:12px;margin-bottom:0}#roomCount{color:var(--muted);font-size:12px}#stage{background-color:#f8fafb;background-image:radial-gradient(#d9e2e7 .7px,transparent .7px);background-size:16px 16px;min-height:440px;padding:20px;display:grid;place-items:center;touch-action:none}#uploadEmpty{text-align:center;color:var(--muted);padding:72px 16px}#uploadEmpty h3{color:var(--ink);font-size:18px;margin-top:20px}#uploadEmpty small{font-size:11px}.uploadicon{width:56px;height:56px;border:1px dashed #9ab3c2;border-radius:10px;margin:auto;display:grid;place-items:center;font-size:28px;color:#8aa4b5}#plan{max-width:100%;max-height:620px;width:auto;height:auto;background:white;box-shadow:0 4px 16px #18334610;cursor:crosshair}.drawingfoot{padding:12px 20px;display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted)}.drawingfoot i{display:inline-block;width:8px;height:8px;margin:0 4px 0 8px}.blue{background:var(--blue)}.orange{border:1px solid #db8a37}#pdfControls{padding:8px 20px;border-top:1px solid var(--line)}#pdfControls span{margin:0 12px}.configbody{padding:20px;display:grid;gap:16px}.rowhead{display:flex;justify-content:space-between;align-items:center}.rowhead button{padding:4px 8px;min-height:28px;font-size:12px}.room{border-top:1px solid var(--line);padding:12px 0}.roomline{display:grid;grid-template-columns:32px 1fr 30px;align-items:center;gap:8px}.roomline input{font-size:12px;padding:6px 8px;min-height:32px}.roomline button{padding:0;min-height:28px;border:none;color:var(--muted)}.roommeta{display:grid;grid-template-columns:1fr 1fr 36px;gap:8px;margin:8px 0 0 40px}.roommeta input{min-height:32px;font-size:12px;padding:4px 8px}.roommeta button{padding:4px}.room.selected{background:#f0f8fc;margin:0 -12px;padding:12px}.room small{color:var(--muted);font-size:10px}.selectedTools{background:var(--light);padding:8px;font-size:11px}.selectedTools button{font-size:10px;padding:4px;min-height:28px}.notice{padding:14px;background:#f8f7f2;font-size:12px;color:#6f695b;border-radius:5px}.notice p{font-size:11px}.quotation{margin-top:24px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{font-weight:500;color:var(--muted);background:#f8fafb;padding:12px 20px}td{padding:14px 20px;border-bottom:1px solid #edf1f4}td input{min-width:100px;max-width:160px;text-align:right;padding:6px 8px;min-height:32px}th:nth-last-child(-n+3),td:nth-last-child(-n+3){text-align:right}.quotebottom{display:grid;grid-template-columns:1fr 280px;gap:24px;padding:24px 20px}.fees{display:grid;grid-template-columns:140px 140px minmax(160px,1fr);gap:16px}.total{text-align:right;border-left:1px solid var(--line);padding-left:24px}.total small{display:block;color:var(--muted)}.total strong{display:block;font-size:28px;font-weight:600;font-variant-numeric:tabular-nums}.total span{display:block;font-size:10px;color:var(--muted)}.noteslabel{margin:0 20px 20px}.exportbar{border-top:1px solid var(--line);padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:16px}.exportbar span{font-size:11px;color:var(--muted)}.exportbar div{display:flex;gap:8px}footer{display:flex;justify-content:space-between;padding:20px 36px;color:var(--muted);font-size:10px}.settingspanel{max-width:860px;padding:28px}.settingspanel h2{margin:8px 0 20px}.settingspanel p{font-size:13px;color:var(--text);max-width:620px}.settingspanel h2:not(:first-child){margin-top:36px}.settingrow{padding:16px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.state{font-size:12px;color:#8a7750}.projectitem{display:flex;justify-content:space-between;align-items:center;padding:20px;background:white;border:1px solid var(--line);margin-bottom:12px;border-radius:6px}.projectitem p{font-size:12px;color:var(--muted)}.projectitem div:last-child{display:flex;gap:8px}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 24px;border-radius:6px;box-shadow:0 4px 20px #18334620;display:none;z-index:100}#printArea{display:none}[hidden]{display:none!important}@media(max-width:1200px){aside{width:196px}.shell{margin-left:196px}main{padding:24px}.workspacegrid{grid-template-columns:minmax(0,1fr) 285px}.fees{grid-template-columns:1fr 1fr}.fees label:last-child{grid-column:1/-1}.drawingfoot{flex-direction:column}.exportbar{align-items:flex-start;flex-direction:column}}@media(max-width:850px){aside{position:static;width:100%;padding:16px 20px;display:block;border-bottom:1px solid var(--line)}.brand{font-size:18px}.shop,.sidefoot{display:none}nav{display:flex;margin-top:16px}nav button{font-size:12px;padding:8px 10px}nav button span{margin-right:4px}.shell{margin-left:0}header{padding:0 20px;height:52px}.heading{align-items:flex-start}h1{font-size:23px}.projectbar{grid-template-columns:1fr 1fr}.projectbar label:first-child{grid-column:1/-1}.workspacegrid{grid-template-columns:1fr}.steps{gap:20px}.configbody{grid-template-columns:1fr 1fr}.rowhead,#rooms,.notice,.selectedTools{grid-column:1/-1}.quotebottom{grid-template-columns:1fr}.total{border-left:0;border-top:1px solid var(--line);padding:16px 0 0}.exportbar div{flex-wrap:wrap}main{padding:24px 16px}.heading p{font-size:12px}.projectitem{display:block}.projectitem div:last-child{margin-top:16px}footer{padding:16px}footer span{display:none}}@media print{body{background:white}body>aside,.shell,#toast{display:none!important}#printArea{display:block;padding:12mm;color:#17384b}#printArea img{width:100%;max-height:180mm;object-fit:contain}#printArea h1{font-size:24px}#printArea table{font-size:11px}#printArea th,#printArea td{padding:8px}#printArea p{font-size:12px;white-space:pre-wrap}.printquote{break-before:page}#printArea .printtotal{font-size:24px;font-weight:700}}

/* Phone-first workflow: readable fields, explicit placement mode, safe-area actions. */
.steps button{flex:1;border:0;background:transparent;color:#6b7a85;min-height:44px;border-radius:0}.steps button.active{color:#007cba;border-bottom:2px solid #007cba;background:#eef7fc}
.plancontrols{display:flex;align-items:end;gap:8px;padding:12px 16px;flex-wrap:wrap;border-bottom:1px solid #edf0f3}.plancontrols label{flex:1;min-width:140px}.plancontrols select{width:100%;min-height:44px}.planhint{margin:0;padding:8px 16px;color:#677985;font-size:12px;background:#f7fafc}#stage{touch-action:auto!important}#plan{touch-action:auto}#plan.editing{touch-action:none;cursor:crosshair}.mobilebar{display:none}
.drawing.expanded{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;background:white;overflow:auto;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);border-radius:0}.drawing.expanded #stage{flex:1;min-height:0;overflow:auto;display:block;padding:16px}.drawing.expanded canvas{max-height:none;width:140%;max-width:none;height:auto}.drawing.expanded .panelhead{flex-shrink:0}.drawing.expanded .plancontrols{position:sticky;top:0;background:white;z-index:2}
@media(max-width:850px){
body{padding-bottom:calc(82px + env(safe-area-inset-bottom))}button{min-height:44px!important;min-width:44px}input,select,textarea,.room input{font-size:16px!important;min-height:44px!important}.room label input{margin-top:4px}.roommeta{gap:10px}.roommeta label{min-width:0}.configbody{display:block}.room{padding:14px 12px}.roomline{gap:8px}.roomline input{min-width:0}.place{font-size:21px}.heading{align-items:flex-start}.heading h1{font-size:22px}.heading p{line-height:1.7}.eyebrow{font-size:10px}.shop,.sidefoot{display:none}aside{padding:12px 16px!important}.brand{font-size:17px}nav{margin-top:10px!important;gap:4px}nav button{padding:8px!important;font-size:12px}.steps{position:sticky;top:0;z-index:10;background:white;display:flex;gap:0;margin:16px 0}.steps button{padding:10px 3px;font-size:14px;white-space:nowrap}.projectbar{gap:10px}.projectbar #saveProject{display:none}.workspacegrid{display:block}.config,.drawing,.quotation{scroll-margin-top:60px}body[data-step="plan"] .config,body[data-step="plan"] .quotation,body[data-step="config"] .drawing,body[data-step="config"] .quotation,body[data-step="quote"] .workspacegrid{display:none}.plancontrols{padding:12px;gap:8px}.plancontrols label{flex-basis:100%}.plancontrols button{flex:1;font-size:13px;padding:8px 4px}.drawing .panelhead{padding:12px;flex-wrap:wrap;gap:10px}.drawing .panelhead>div{display:flex;gap:8px}.drawingfoot{flex-wrap:wrap;gap:8px;padding:12px}#stage{min-height:280px}.tablewrap{overflow:visible}.quotation table{min-width:0;width:100%}.quotation thead{display:none}.quotation tbody{display:block;padding:0 12px}.quotation tr{display:grid;grid-template-columns:1fr 1fr;padding:12px 0;border-bottom:1px solid #dfe7ec;gap:10px}.quotation td{display:block;border:0!important;padding:0!important;white-space:normal;overflow-wrap:anywhere;min-width:0}.quotation td:before{content:attr(data-label);display:block;font-size:12px;color:#70818c;margin-bottom:5px}.quotation td:nth-child(3){grid-column:1/-1}.quotation td:nth-child(4){display:none}.quotation input{width:100%;box-sizing:border-box}.quotation .panelhead{align-items:flex-start;flex-wrap:wrap;gap:12px}.quotation .panelhead select{width:100%}.fees{grid-template-columns:1fr!important}.fees label{grid-column:auto!important}.quotebottom{padding:16px 12px}.exportbar{display:block;padding:16px 12px}.exportbar>div{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px}.exportbar button{width:100%}.mobilebar{position:fixed;bottom:0;left:0;right:0;display:flex;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dae4ea;z-index:50;box-shadow:0 -4px 18px #153b5010}.mobilebar button{flex:1;min-width:0}.projectitem{flex-wrap:wrap;gap:12px}.projectitem>div:last-child{display:flex;gap:8px;flex-wrap:wrap}#toast{bottom:calc(90px + env(safe-area-inset-bottom));max-width:calc(100vw - 32px);box-sizing:border-box}.drawing.expanded .drawingfoot{display:none}
}
@media print{.mobilebar,.plancontrols,.planhint,.steps{display:none!important}body{padding-bottom:0}}

[hidden]{display:none!important}

.projectbar{display:flex;justify-content:flex-start}.projectbar>label{width:150px}#saveDialog{width:min(440px,calc(100vw - 24px));border:1px solid #dce5eb;border-radius:14px;padding:24px;color:#183346;max-height:calc(100dvh - 32px);overflow:auto}#saveDialog::backdrop{background:#18334670}#saveDialog h2{margin:0 0 8px;font-size:21px}#saveDialog p{color:#70818c;margin:0 0 20px}#saveDialog input{font-size:16px;min-height:44px}.saveactions{display:flex;gap:10px;margin-top:20px}.saveactions button{flex:1}.startover{border-top:1px solid #e2e8ed;margin-top:24px;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:10px}.startover span{font-size:12px;color:#75838d}
@media(max-width:850px){.projectbar{display:grid;grid-template-columns:1fr 1fr}.projectbar>label{width:auto}.projectbar>label:first-child{grid-column:auto}#saveDialog{padding:20px 16px}.startover{flex-wrap:wrap}.exportbar>div{grid-template-columns:1fr 1fr}.exportbar button{white-space:normal}}

.daikin-logo{display:block;width:129px;height:auto;padding:12px 8px;background:#009bd6;box-sizing:content-box}.brand{flex-wrap:wrap;gap:12px}.brandcaption{font-size:16px}.brandcaption small{font-size:11px}@media(max-width:850px){.daikin-logo{width:112px;padding:10px 8px}.brandcaption{font-size:15px}}

.aiwork{padding:16px;border-bottom:1px solid #e2e8ed}.aiwork>label{font-weight:600;margin-bottom:6px}.aiwork textarea{resize:vertical;min-height:64px}.aiactions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.aiactions small{color:#75838d;font-size:12px}.aiwork #aiStatus{font-size:13px;margin:8px 0 0;color:#526b7a}.aiwork #aiStatus:empty{display:none}#aiProposal{margin-top:16px;padding-top:12px;border-top:1px solid #e2e8ed}#aiProposal h3{margin:0 0 8px}#proposalContent{font-size:13px;overflow-wrap:anywhere}#proposalContent ul{padding-left:20px}#proposalContent li{margin:8px 0}#apiLogin{width:min(420px,calc(100vw - 24px));border:1px solid #dce5eb;border-radius:14px;padding:24px;color:#183346}#apiLogin::backdrop{background:#18334670}#apiLogin h2{margin:0 0 8px;font-size:21px}#apiLogin p{color:#70818c}#apiLogin input{font-size:16px;min-height:44px}#loginError{color:#ad3b3b!important}body.ai-busy #generateAi{cursor:wait}@media(max-width:850px){.aiwork{padding:12px}.aiactions{flex-wrap:wrap}.aiactions button{flex:1}.aiactions small{width:100%}#generateAi{width:100%}#apiLogin{padding:20px 16px}}@media print{.aiwork,#apiLogin{display:none!important}}

.preferences{margin:12px 0}.preferences summary,.aiwork summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#526b7a;font-size:13px}.preferences .projectbar{margin-top:4px}.aiwork details label{margin:8px 0 4px}.quotation input[readonly]{border-color:transparent;background:transparent;padding-left:0;cursor:default}#seeQuote{margin-top:12px;width:100%;color:#007cba;background:#eaf5fb}
/* One task, one board. No configuration or quotation forms in the user flow. */
.oneboard{padding-bottom:0!important}.oneboard .shell{margin-left:0!important}.oneboard header{height:80px;max-width:1000px;margin:auto;padding:14px 24px;border:0;background:transparent}.oneboard header .brand{display:flex;align-items:center;flex-wrap:nowrap}.oneboard header .brandcaption{font-size:14px}.oneboard header .daikin-logo{width:110px}.oneboard main{max-width:1000px;margin:auto;padding:12px 24px 32px}.oneboard .workspacegrid{display:block}.oneboard .drawing{width:100%;overflow:hidden}.oneboard .drawing .panelhead{padding:20px 24px}.oneboard .drawing .panelhead h2{font-size:21px}.oneboard .simpleoptions{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 24px 16px}.oneboard .simpleoptions label{font-size:13px;gap:6px}.oneboard .simpleoptions select{width:100%;font-size:16px;min-height:46px}.oneboard .aiwork{padding:0 24px 16px}.oneboard .aiactions{align-items:center}.oneboard #stage{min-height:320px;max-height:720px}.oneboard #plan{max-height:680px}.oneboard footer{max-width:1000px;margin:auto;padding:16px 24px}.oneboard #autoResult{padding:24px;border-top:1px solid #e2e8ed}.oneboard .resulthead{display:flex;align-items:center;justify-content:space-between;gap:16px}.oneboard .resulthead small{color:#75838d}.oneboard .resulthead h2{margin:3px 0;font-size:20px}.oneboard #resultTotal{font-size:25px;color:#007cba}.oneboard #resultBasis,.oneboard #resultCaveat{font-size:12px;color:#6e808c;line-height:1.8}.oneboard .resultdevice{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #eef1f4}.oneboard .resultdevice small{display:block;color:#75838d;margin-top:2px}.oneboard .resultdownloads{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:20px}.oneboard .saveoptional{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px}.oneboard .saveoptional>button{border:0;color:#75838d;padding-left:0}.oneboard .saveoptional details{font-size:12px;color:#75838d}.oneboard .saveoptional summary{cursor:pointer;padding:10px 0;min-height:44px}.oneboard #pdfControls{padding:12px 24px}.oneboard .connection{font-size:11px}.oneboard #seeQuote,.oneboard .mobilebar{display:none!important}
@media(max-width:850px){.oneboard header{height:68px;padding:10px 16px}.oneboard header .brandcaption{font-size:12px}.oneboard header .brandcaption small{display:none}.oneboard header .daikin-logo{width:91px;padding:8px}.oneboard main{padding:6px 12px 20px}.oneboard .drawing .panelhead{padding:16px}.oneboard .drawing .panelhead h2{font-size:18px}.oneboard .simpleoptions{padding:0 16px 12px;gap:12px}.oneboard .aiwork{padding:0 16px 16px}.oneboard .aiactions small{font-size:11px}.oneboard #stage{min-height:280px}.oneboard #autoResult{padding:18px 16px}.oneboard .resulthead{align-items:start;flex-wrap:wrap}.oneboard #resultTotal{font-size:25px}.oneboard .resultdownloads{grid-template-columns:1fr}.oneboard .resultdownloads button{min-height:48px}.oneboard .saveoptional{display:block}.oneboard .saveoptional details button{margin:4px}.oneboard #toast{bottom:24px}.oneboard footer{padding:14px 16px;font-size:11px}}
@media print{.oneboard #autoResult,.oneboard .simpleoptions{display:none!important}}
