/* R4 owner repair overlay: keeps approved photos, art and editable HTML. */
.phone:not([data-route="home"]){
  --paper:#fff3e3;--brown:#261c16;--red:#c30b22;
  background-image:url("./assets/home-paper-grain.png"),
    radial-gradient(ellipse at 83% 15%,rgba(245,195,125,.25),transparent 55%),
    radial-gradient(ellipse at 4% 84%,rgba(255,218,170,.18),transparent 47%),
    linear-gradient(180deg,#fff5e8,#fff1dc 74%,#fff5e8);
  background-repeat:repeat,no-repeat,no-repeat,no-repeat;
  background-size:192px 192px,auto,auto,auto;
}
.phone:not([data-route="home"]) .sceneRoot{position:relative;isolation:isolate}
.phone:not([data-route="home"]) .sceneRoot::after{
  content:"";position:absolute;top:3px;right:-16px;width:128px;height:168px;
  background:url("./assets/home-heritage-decor.svg") right top/auto 330px no-repeat;
  opacity:.24;pointer-events:none;z-index:-1;
}
.phone:not([data-route="home"]) #masthead{height:64px}
.phone:not([data-route="home"]) .page{height:calc(100% - 98px);padding:5px 14px 96px;overflow-x:hidden;overflow-y:auto}
.phone:not([data-route="home"]) .sticky-action{left:14px;right:14px;bottom:6px;padding-top:8px}
.phone:not([data-route="home"]) .sticky-action .fineprint{font-size:10px}
.phone:not([data-route="home"]) .sticky-action .mainBtn{min-height:46px;height:auto}
.phone[data-route="home"] .r4-dots{
  box-sizing:border-box;flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px;
  padding:0;display:grid;place-items:center;overflow:hidden;
  font-size:0!important;line-height:1;letter-spacing:0!important;
  border:1px solid rgba(217,169,104,.5);position:relative;z-index:4;
}
.r4-dots::after{content:"•••";font-size:16px;font-weight:900;letter-spacing:2px;line-height:1;color:#5d4432}
.r4-dots:focus-visible{outline:2px solid #b91828;outline-offset:3px}
.phone .r4-step{font-size:11px;margin:0 0 4px;color:#b03a29;letter-spacing:.04em}
.r4-fast-housing,.r4-fast-confirm,.r4-fast-direction,.r4-fast-processing,.r4-fast-addon{position:relative;z-index:1}
.r4-fast-housing h1,.r4-fast-confirm h1,.r4-fast-direction h1,
.r4-fast-processing h1,.r4-fast-addon h1{
  margin:0;color:#291c15;font:900 24px/1.22 "Noto Serif CJK SC","Songti SC","STSong",serif;letter-spacing:-.025em
}
.r4-fast-housing h1 em,.r4-fast-confirm h1 em,.r4-fast-direction h1 em,
.r4-fast-processing h1 em,.r4-fast-addon h1 em{color:#c30b22;font-style:normal}
.r4-fast-description{color:#8d7059;font-size:12px;line-height:1.45;margin:5px 0 8px}
.r4-fast-caption,.r4-fast-upload-line{display:flex;justify-content:space-between;align-items:center;gap:8px}
.r4-fast-caption{margin:4px 0}
.r4-fast-caption b,.r4-fast-upload-line b{font-size:12px}
.r4-fast-caption small{font-size:11px;color:#9a7f68}
.phone[data-route="housing"] .r4-region-switch{margin:0 0 6px;padding:3px}
.phone[data-route="housing"] .r4-region-switch button{min-height:40px;font-size:12px}
.phone[data-route="housing"] .r4-housing-grid{gap:6px}
.phone[data-route="housing"] .r4-house-card{padding:4px;border-radius:12px}
.phone[data-route="housing"] .r4-house-card.selected{padding:3px}
.phone[data-route="housing"] .r4-house-card img{height:57px;border-radius:8px}
.phone[data-route="housing"] .r4-house-card strong{font-size:12px;margin:5px 5px 2px}
.phone[data-route="housing"] .r4-house-card small{font-size:10px;margin:0 5px 2px}
.phone[data-route="housing"] .r4-house-card .houseCheck{width:24px;height:24px}
.r4-setting-row{
  display:flex;justify-content:space-between;align-items:center;gap:8px;
  width:100%;min-height:44px;margin:7px 0 5px;padding:8px 12px;
  background:#fffaf4;border:1px solid #eacda3;border-radius:12px;
  text-align:left;color:#5b4334;font-size:12px;font-weight:700
}
.r4-setting-row b{color:#bb162b}
.r4-fast-upload-line{margin:6px 0 4px}
.r4-fast-upload-line label{display:flex;gap:6px;align-items:center;color:#8c715c;font-size:11px}
.r4-fast-upload-line select{border:1px solid #dfbd91;border-radius:9px;background:#fffdf6;color:#604b3a;
  font-size:12px;min-height:38px;padding:5px 22px 5px 7px;max-width:105px}
.r4-fast-file{display:flex;align-items:center;gap:10px;min-height:48px;
  border:1px dashed #d6a35d;border-radius:12px;background:#fff8ec;padding:5px 10px;cursor:pointer}
.r4-fast-file img{width:30px;height:30px;background:white;border:1px solid #e8cda7;border-radius:8px;padding:5px}
.r4-fast-file span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:700}
.r4-fast-file b{font-size:22px;color:#c31226}
.r4-fast-photo-state{font-size:10.5px;line-height:1.4;margin:5px 0 0;color:#936f50}
.r4-fast-sketch,.r4-independent-link{display:block;border:none;background:transparent;color:#bf1e32;
  min-height:40px;text-align:left;padding:6px 1px;font-size:12px}
.r4-compact-floors .floorbar{margin:4px 0;display:flex;gap:4px;overflow-x:auto;min-height:42px}
.r4-compact-floors .floorbar button{min-height:40px;padding:8px 15px;font-size:12px}
.r4-fast-confirm .r4-mini-warning{margin:6px 0}
.r4-mini-warning{font-size:11px;line-height:1.45;border-radius:9px;background:#fff3e8;border:1px solid #edd4b8;color:#9f553b;padding:5px 8px}
.r4-small-preview{display:flex;align-items:center;gap:9px;margin:7px 0;padding:8px;
  background:#fffdfa;border:1px solid #efd5b1;border-radius:13px;min-height:89px}
.r4-small-preview img{width:96px;height:72px;object-fit:contain;flex:0 0 auto;border-radius:6px;background:#f8eedc}
.r4-small-preview>div{flex:1;min-width:0}
.r4-small-preview strong{display:block;font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.r4-small-preview span,.r4-small-preview small{display:block;color:#99745b;line-height:1.45;font-size:10.5px;margin-top:2px}
.r4-small-preview small{color:#c02938}
.r4-status-line{display:flex;align-items:flex-start;gap:7px;color:#8c6d53;font-size:11px;line-height:1.5}
.r4-status-line b{color:#ac1c30;flex:0 0 auto}
.r4-verified-choice,.r4-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:7px 0}
.r4-verified-choice button,.r4-quick-actions button,
.r4-modal-buttons button{
  background:#fffaf2;border:1px solid #e6c69d;border-radius:10px;
  min-height:44px;padding:7px;color:#79573f;font-size:12px;font-weight:700
}
.r4-verified-choice button.active,.r4-modal-buttons button.picked{background:#c3102a;color:white;border-color:#c3102a}
.r4-verified-choice button.active-secondary{background:#fff7e8;border-color:#d5a868}
.r4-confirm-check{display:flex;align-items:center;gap:9px;background:#fffbf5;border:1px solid #eddbbe;
  border-radius:10px;min-height:44px;padding:6px 9px;font-size:12px;font-weight:700;color:#68472f}
.r4-confirm-check input{width:19px;height:19px;accent-color:#c30b22;flex:0 0 auto}
.r4-independent-link{width:100%;text-align:center;margin:2px 0 0}
.r4-independent-link small{display:inline;font-size:10px;color:#988273}
.r4-coverage{display:grid;gap:4px;background:#fff9ee;border:1px solid #e9d6b8;
  border-radius:12px;padding:8px 10px;margin:7px 0;font-size:11px;color:#79553c}
.r4-coverage>b{font-size:12px}
.r4-coverage>div{display:flex;justify-content:space-between;gap:8px}
.r4-coverage strong{flex:0 0 auto;font-size:11px}
.r4-coverage span{text-align:right}
.r4-coverage small{color:#a17e61;font-size:10px;line-height:1.4}
.r4-fast-direction .r4-compass-guide{display:flex;align-items:center;gap:12px;border:1px solid #ebd5b5;
  border-radius:14px;background:#fffaf3;margin:10px 0;padding:9px}
.r4-compass-guide img{width:100px;height:100px;flex:0 0 auto}
.r4-compass-guide b{font-size:13px}
.r4-compass-guide p{margin:5px 0 0;color:#866c54;font-size:11.5px;line-height:1.5}
.r4-direction-field{display:block;margin:10px 0 0}
.r4-direction-field b{display:block;color:#3f2d21;font-size:13px;margin-bottom:5px}
.r4-direction-field select{display:block;width:100%;min-height:46px;
  padding:9px 13px;background:#fffdfa;color:#78553c;border:1px solid #e5c39b;border-radius:11px;font-size:13px}
.r4-direction-footnote{font-size:11px;line-height:1.55;color:#987459;margin:8px 0 0}
.r4-fast-processing .r4-progress-card{display:grid;gap:9px;text-align:center;
  margin:13px 0 8px;background:#fff9f0;border-radius:16px;border:1px solid #e9d0aa;padding:15px}
.r4-progress-card b{font-size:14px}
.r4-demo-symbol{width:68px;height:68px;border:2px solid #e3bb79;border-radius:50%;
  display:grid;place-items:center;margin:auto;background:#c41029;color:white;font:900 32px "Noto Serif CJK SC",serif}
.r4-fast-processing .progressTrack{margin:4px 0}
.r4-fast-addon .priceBox{margin-top:12px;justify-content:space-between;flex-wrap:wrap}
.r4-fast-addon .priceBox strong{font-size:14px;color:#b91028}
.r4-fast-addon .priceBox span{font-size:11px;color:#8d7156}
.r4-addon-art{height:158px;display:grid;place-items:center;background:#fffaf1;border:1px solid #ecd1ad;border-radius:13px;margin-top:11px}
.r4-addon-art img{width:100%;height:100%;object-fit:contain}
.r4-addon-steps{display:grid;gap:6px;margin-top:10px}
.r4-addon-steps>div{padding:7px 9px;border:1px solid #edddc6;background:#fffdfa;border-radius:10px;display:flex;justify-content:space-between;gap:8px;font-size:12px}
.r4-addon-steps b{white-space:nowrap;color:#ae1c32}
.r4-addon-steps span{color:#80644e}
.r4-demo-banner{padding:11px 13px;background:#fff2e5;border:2px solid #d59552;
  color:#7c3f2a;border-radius:13px;margin:6px 0 11px;display:grid;gap:5px;font-size:12px;line-height:1.5}
.r4-demo-banner b{color:#c0152d;font-size:14px}
.r4-secondary-footer{min-height:40px;border:0;background:transparent;color:#a14e35;font-size:12px}
.r4-modal{max-height:calc(100% - 34px);overflow-y:auto}
.r4-modal p{line-height:1.5}
.r4-modal-buttons{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0}
.r4-modal-buttons button{flex:1 1 27%;min-width:70px}
.r4-modal-label{display:block;font-size:12px;font-weight:700;margin-top:8px}
.r4-modal-label input{width:100%;min-height:42px;margin-top:5px;border:1px solid #dcb98c;border-radius:8px;padding:9px}
.r4-edit-stage{width:100%;height:232px;background:#fcf4e7;border:1px solid #e3c89f;border-radius:12px;
  display:grid;place-items:center;overflow:hidden;touch-action:manipulation;cursor:crosshair}
.r4-edit-transform{width:210px;height:210px;display:grid;place-items:center;position:relative;transform-origin:50% 50%}
.r4-edit-transform img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.r4-mark-layer{position:absolute;inset:0;pointer-events:none}
.r4-human-mark{position:absolute;transform:translate(-50%,-50%);border-radius:99px;
  background:#b71834;color:white;padding:4px 6px;box-shadow:0 1px 6px #56332277;
  white-space:nowrap;font-size:10px;font-weight:700}
.r4-human-mark.door{background:#c58c21}
.r4-human-mark.window{background:#258973}
@media(max-width:800px){
  .phone:not([data-route="home"]) .page{height:calc(100% - 64px);padding-bottom:96px}
  .phone:not([data-route="home"]) #masthead{height:64px}
  .r4-modal{max-height:calc(100dvh - 36px)}
}
@media(max-height:765px){
 .phone[data-route="housing"] .r4-house-card img{height:48px}
 .r4-fast-housing h1,.r4-fast-confirm h1{font-size:22px}
 .r4-fast-description{margin:3px 0 5px}
 .r4-fast-caption{margin:2px 0}
 .r4-setting-row{margin:5px 0 3px}
 .r4-fast-file{min-height:44px}
 .r4-fast-photo-state{margin-top:3px}
 .phone:not([data-route="home"]) .page{padding-bottom:91px}
 .r4-small-preview{min-height:76px;padding:5px;margin:5px 0}
 .r4-small-preview img{width:85px;height:64px}
 .r4-verified-choice,.r4-quick-actions{margin:4px 0}
 .r4-coverage{margin:4px 0;padding:6px 8px}
 .r4-compass-guide img{width:88px;height:88px}
 .r4-fast-direction .r4-compass-guide{margin:6px 0}
 .r4-direction-field{margin-top:7px}
 .r4-addon-art{height:120px}
}
@media(max-width:355px){
 .r4-small-preview img{width:70px}
 .r4-fast-housing h1{font-size:21px}
 .r4-fast-housing .r4-house-card strong{font-size:11px}
 .r4-fast-direction .r4-compass-guide{gap:7px}
 .r4-compass-guide img{width:77px;height:77px}
}
