.m87-edit-close,.m87-edit-open{display:none}
@media(max-width:760px){
body.m87{--m87-head:calc(94px + env(safe-area-inset-top,0px));--m87-dock:calc(100px + env(safe-area-inset-bottom,0px));--m87-bottom:calc(var(--m87-dock) + 12px);--m87-sheet:38dvh;overflow:hidden!important;background:#fff!important;color:#594036!important}
body.m87 .top{height:var(--m87-head)!important;padding:calc(9px + env(safe-area-inset-top,0px)) 20px 7px!important;grid-template-rows:32px 37px!important;border-bottom:1px solid #eee8e2!important;background:#fffdfaf0!important;z-index:20!important}
body.m87 .top .brand{font-size:23px!important;letter-spacing:4px!important}
body.m87 .top .brand small{font-size:5px!important}
body.m87 .top .steps{position:static!important;display:flex!important;gap:22px!important;justify-content:center!important;background:none!important;min-height:37px!important}
body.m87 .top .steps button{font-size:11px!important;min-height:37px!important;line-height:1.8!important}
body.m87 .top .steps i{display:none!important}
body.m87 .room-top{top:calc(var(--m87-head) + 12px)!important;left:16px!important;right:16px!important;justify-content:center!important}
body.m87 #saved,body.m87 .atelier-note,body.m87 .stage-label{display:none!important}
body.m87 .type-switch{padding:3px!important;background:#f7f3ee!important;border:1px solid #eee5dc!important;box-shadow:none!important}
body.m87 .type-switch button{font-size:11px!important;min-height:36px!important;padding:7px 19px!important}
body.m87 .canvas-wrap{--m87-available:calc(100dvh - var(--m87-head) - var(--m87-dock) - 66px);position:fixed!important;inset:auto!important;left:50%!important;top:calc(var(--m87-head) + 56px + var(--m87-available)/2)!important;width:min(100vw,var(--m87-available))!important;height:min(100vw,var(--m87-available))!important;transform:translate(-50%,-50%)!important;margin:0!important;transition:width .2s,height .2s,top .2s!important}
body.m87:not([data-m87-sheet=none]) .canvas-wrap{--m87-available:calc(100dvh - var(--m87-head) - var(--m87-dock) - var(--m87-sheet) - 78px)!important}
body.m87 #stage{width:100%!important;height:100%!important;touch-action:none!important}
body.m87 .workspace aside.shelf,body.m87 .workspace aside.finish,body.m87 .workspace .room .tools{position:fixed!important;inset:auto 10px var(--m87-bottom) 10px!important;width:auto!important;max-width:none!important;min-width:0!important;height:var(--m87-sheet)!important;max-height:var(--m87-sheet)!important;margin:0!important;padding:17px!important;box-sizing:border-box!important;transform:none!important;overflow:auto!important;overscroll-behavior:contain!important;border:1px solid #eae1d8!important;border-radius:25px!important;background:linear-gradient(135deg,#fffffff7,#faf5eff0)!important;box-shadow:0 10px 35px #50332712,inset 0 1px 0 #fff!important;backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important;z-index:15!important;scrollbar-width:none!important;display:none!important;opacity:1!important;pointer-events:auto!important}
body.m87[data-m87-sheet=shelf] .workspace aside.shelf{display:block!important}
body.m87[data-m87-sheet=finish] .workspace aside.finish{display:block!important}
body.m87[data-m87-sheet=edit] .workspace .room .tools{display:block!important}
body.m87 .workspace aside.shelf .shelf-top{display:flex!important;flex-wrap:wrap!important;gap:10px!important;position:static!important}
body.m87 .workspace aside.shelf .tabs{order:1!important;flex:1 1 100%!important;display:flex!important;flex-wrap:nowrap!important;overflow:auto!important;gap:6px!important;padding-bottom:4px!important}
body.m87 .workspace aside.shelf .tabs button{flex:0 0 auto!important;min-height:40px!important;font-size:11px!important;padding:7px 14px!important;border-radius:22px!important}
body.m87 .workspace aside.shelf .search{order:2!important;flex:1!important;min-width:0!important;margin:0!important}
body.m87 .workspace aside.shelf .search input{width:100%!important;min-height:42px!important;font-size:16px!important;border:1px solid #eadfd6!important;background:#fff9!important;border-radius:14px!important;padding:8px 12px!important}
body.m87 #tray-close{order:3!important;min-height:42px!important;min-width:44px!important;font-size:11px!important}
body.m87 .shelf-note{display:none!important}
body.m87 .flower-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;padding:12px 0 0!important}
body.m87 .flower-list>button{min-width:0!important;width:100%!important;min-height:115px!important;border:1px solid #eee5dd!important;border-radius:17px!important;background:#fff9!important;padding:8px!important}
body.m87 .flower-list>button img{height:78px!important;width:100%!important;object-fit:contain!important}
body.m87 .flower-list>button :is(span,small){font-size:10px!important;line-height:1.8!important}
body.m87 .m87-edit-close{display:flex!important;float:left!important;align-items:center!important;min-height:36px!important;padding:5px 14px!important;border-radius:20px!important;background:#f2e9e0!important;font-size:11px!important;color:#765342!important;position:relative!important;z-index:2!important}
body.m87 .s51-heading{padding-bottom:10px!important;min-height:38px!important}
body.m87 .s51-actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;padding:12px 0!important}
body.m87 .workspace .room .tools .s51-actions button{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;min-height:56px!important;font-size:9px!important;padding:6px 2px!important;border-radius:13px!important}
body.m87 .workspace .room .tools .adjust{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;padding-top:10px!important}
body.m87 .workspace .room .tools .adjust label{font-size:11px!important;line-height:1.8!important}
body.m87 .workspace .room .tools input[type=range]{height:25px!important;width:100%!important;accent-color:#7b4055!important}
body.m87 .m87-edit-open:not([hidden]){display:flex!important;position:fixed!important;bottom:calc(var(--m87-dock) + 16px)!important;left:50%!important;transform:translateX(-50%)!important;min-height:44px!important;padding:10px 21px!important;border:1px solid #e8dcd1!important;border-radius:25px!important;background:#fffdf8eb!important;box-shadow:0 5px 20px #67473812!important;color:#704d40!important;font-size:12px!important;z-index:14!important}
body.m87 .m87-edit-open[hidden]{display:none!important}
body.m87 .workspace aside.finish .panel-title{position:static!important;display:flex!important;justify-content:space-between!important;align-items:center!important;padding-bottom:12px!important;border-bottom:1px solid #eee5db!important}
body.m87 .workspace aside.finish .pack-controls h1,body.m87 .workspace aside.finish .review-controls h2{font-size:25px!important;line-height:1.8!important;margin:15px 0!important}
body.m87 .workspace aside.finish :is(select,input,textarea){max-width:100%!important;min-width:0!important;font-size:16px!important}
body.m87 .workspace aside.finish .finish-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
body.m87 .workspace aside.finish .finish-actions button{min-height:48px!important;font-size:12px!important;border-radius:15px!important}
body.m87 .desk-dock{position:fixed!important;inset:auto 0 0!important;height:var(--m87-dock)!important;box-sizing:border-box!important;display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:44px 28px!important;gap:8px 10px!important;padding:8px 16px calc(8px + env(safe-area-inset-bottom,0px))!important;border-top:1px solid #f0e8e0!important;background:#fffdf9f5!important;box-shadow:0 -6px 24px #6b493908!important;z-index:18!important}
body.m87 .desk-dock #tray-open{grid-column:1!important;grid-row:1!important;min-height:44px!important;font-size:11px!important;border:1px solid #e6dacf!important;border-radius:24px!important;background:#fff!important;padding:8px!important}
body.m87 .desk-dock #next-step{grid-column:2!important;grid-row:1!important;min-height:44px!important;font-size:12px!important;border-radius:24px!important;background:#793b52!important;color:#fff!important;padding:8px!important}
body.m87 .desk-dock .history{grid-column:1/-1!important;grid-row:2!important;display:flex!important;justify-content:center!important;gap:30px!important;min-height:28px!important}
body.m87 .desk-dock .history button{min-height:28px!important;font-size:10px!important;padding:3px!important}
body.m87 #toast{bottom:calc(var(--m87-dock) + 18px)!important;z-index:110!important}
body.m87 dialog[open]{max-height:calc(100dvh - 24px)!important;z-index:100!important}
}
@media(max-width:760px) and (orientation:landscape) and (max-height:520px){body.m87{--m87-head:64px;--m87-sheet:calc(100dvh - 175px)}body.m87 .top{grid-template-rows:35px!important;grid-template-columns:auto 1fr auto!important}body.m87 .top .steps{grid-row:1!important;grid-column:2!important}body.m87 .top .exit{grid-row:1!important;grid-column:3!important}body.m87:not([data-m87-sheet=none]) .canvas-wrap{--m87-available:calc(100dvh - 170px)!important;left:73%!important;top:calc(64px + var(--m87-available)/2)!important;width:min(44vw,var(--m87-available))!important;height:min(44vw,var(--m87-available))!important}body.m87 .workspace aside.shelf,body.m87 .workspace aside.finish,body.m87 .workspace .room .tools{left:10px!important;right:auto!important;width:46vw!important}}
@media(prefers-reduced-motion:reduce){body.m87 .canvas-wrap{transition:none!important}}
