:root{
  --ink:#15212a;
  --muted:#66727a;
  --teal:#079a98;
  --teal-dark:#087b7b;
  --teal-soft:#e9f8f7;
  --line:#dce4e7;
  --surface:#ffffff;
  --page:#f3f6f7;
  --green:#20c866;
  --blue:#2787ed;
  --shadow:0 14px 38px rgba(25,54,67,.10),0 3px 10px rgba(25,54,67,.05);
}

*{box-sizing:border-box}
html{background:var(--page);overflow-x:hidden;-webkit-text-size-adjust:100%;overflow-anchor:none}
body{margin:0;min-height:0;padding:24px 14px 32px;color:var(--ink);background:radial-gradient(circle at 50% 0,#fff 0,#f7f9fa 34rem,#f1f4f5 100%);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Arial,sans-serif;overflow-x:hidden;overflow-anchor:none}
button,a,input,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{color:inherit}
svg{display:block}

.app-shell{width:min(100%,760px);margin:0 auto}
.app-card{overflow:hidden;border:1px solid rgba(19,76,83,.08);border-radius:36px;background:rgba(255,255,255,.97);box-shadow:0 24px 75px rgba(23,57,69,.13)}

.app-header{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:30px 32px 22px}
.brand{display:flex;align-items:center;gap:15px;min-width:0}
.brand-icon{flex:0 0 auto;width:62px;height:62px}
.brand-icon svg{width:100%;height:100%;fill:none;stroke:#087f80;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.brand-name{margin:0;font-size:28px;font-weight:850;letter-spacing:-.045em;white-space:nowrap}
.brand-copy{margin:5px 0 0;color:var(--muted);font-size:15px;line-height:1.35}
.header-side{display:flex;align-items:center;gap:12px}
.owner-chip{display:flex;align-items:center;gap:10px;text-align:left}
.owner-avatar{display:grid;place-items:center;width:54px;height:54px;border:2px solid #21aaa8;border-radius:50%;color:#176f70;background:linear-gradient(145deg,#ebfafa,#d4f2f1);font-size:15px;font-weight:850;box-shadow:0 6px 16px rgba(7,154,152,.12)}
.owner-chip span:last-child{display:grid;gap:2px}
.owner-chip strong{font-size:14px;white-space:nowrap}
.owner-chip small{color:var(--muted);font-size:12px}
.language{display:flex;padding:3px;border:1px solid var(--line);border-radius:999px;background:#f5f7f8}
.language button{min-width:34px;height:29px;border:0;border-radius:999px;background:transparent;color:#758087;font-size:11px;font-weight:800;cursor:pointer}
.language button.active{color:#fff;background:var(--teal);box-shadow:0 4px 10px rgba(7,154,152,.22)}

.status-banner{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 28px 16px;padding:10px 14px;border:1px solid #c5e5e3;border-radius:14px;color:#116e6e;background:#eef9f8;font-size:13px;font-weight:750}
.status-dot{width:8px;height:8px;border-radius:50%;background:var(--teal)}
.status-banner[data-state="missing"]{color:#a22f35;background:#fff1f2;border-color:#f0c7ca}.status-banner[data-state="missing"] .status-dot{background:#dc434b}
.status-banner[data-state="contacted"]{color:#9a5b17;background:#fff8ea;border-color:#f1dcb7}.status-banner[data-state="contacted"] .status-dot{background:#e39b42}
.status-banner[data-state="arranged"]{color:#155fa8;background:#eef7ff;border-color:#c6def3}.status-banner[data-state="arranged"] .status-dot{background:#2a86db}
.status-banner[data-state="returned"]{color:#18743b;background:#eef9f2;border-color:#c8e7d0}.status-banner[data-state="returned"] .status-dot{background:#2da558}

.kindness-card{position:relative;display:grid;grid-template-columns:150px 1fr;align-items:center;gap:30px;margin:0 28px 24px;padding:34px 40px 42px;border:1px solid #cae9e7;border-radius:29px;background:radial-gradient(circle at 100% 10%,rgba(193,238,235,.62),transparent 48%),linear-gradient(145deg,#f7fdfd,#eaf8f7);box-shadow:0 12px 30px rgba(10,110,112,.08);overflow:hidden}
.kindness-icon{display:grid;place-items:center;width:142px;height:142px;border:2px solid rgba(7,154,152,.25);border-radius:50%;background:rgba(255,255,255,.86)}
.kindness-icon svg{width:86px;height:86px;fill:none;stroke:var(--teal);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.kindness-copy h1{margin:0;font-size:31px;line-height:1.12;letter-spacing:-.04em;font-weight:880}
.kindness-copy p{margin:12px 0 0;color:#3f4e55;font-size:21px;line-height:1.35}
.kindness-divider{position:absolute;left:50%;bottom:15px;display:flex;align-items:center;gap:14px;width:min(65%,400px);transform:translateX(-50%)}
.kindness-divider span{height:1px;flex:1;background:linear-gradient(90deg,transparent,#b8d9d7)}
.kindness-divider span:last-child{background:linear-gradient(90deg,#b8d9d7,transparent)}
.kindness-divider b{color:#0da3a0;font-size:23px}

.hotel-card{margin:0 28px 25px;border:1px solid #d7e4e5;border-radius:25px;background:#fff;box-shadow:var(--shadow);overflow:hidden}
.hotel-card[hidden]{display:none}
.hotel-card summary{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(235px,.95fr);grid-template-rows:auto 48px;cursor:pointer;list-style:none}
.hotel-card summary::-webkit-details-marker,.safety-card summary::-webkit-details-marker{display:none}
.hotel-summary-copy{display:flex;gap:15px;padding:25px 12px 18px 24px;min-width:0}
.hotel-icon{flex:0 0 auto;display:grid;place-items:center;width:68px;height:68px;border-radius:19px;color:#fff;background:linear-gradient(145deg,#25b9b7,#078b8a);box-shadow:0 8px 18px rgba(7,154,152,.20)}
.hotel-icon svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hotel-summary-copy h2{margin:2px 0 0;font-size:22px;line-height:1.15;letter-spacing:-.025em}
.hotel-summary-copy p{margin:6px 0 0;color:#5a6870;font-size:15px}
.hotel-date{display:flex;align-items:center;gap:8px;padding-top:15px;font-weight:650;color:#263940!important}
.hotel-art{grid-column:2;grid-row:1/3;min-height:210px;overflow:hidden;background:#eaf7f6}
.hotel-art svg{width:100%;height:100%}
.hotel-summary-footer{grid-column:1;grid-row:2;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-top:1px solid #e4eaec;color:#147a7b;font-size:14px;font-weight:760}
.summary-chevron{font-size:30px;line-height:1;transition:transform .2s ease}
details[open] .summary-chevron{transform:rotate(90deg)}
.hotel-expanded{padding:20px 24px 24px;border-top:1px solid #e4eaec;background:linear-gradient(180deg,#fbfefe,#fff)}
.hotel-expanded .kicker{margin:0 0 4px;color:var(--teal-dark);font-size:12px;font-weight:820;text-transform:uppercase;letter-spacing:.06em}
.hotel-expanded h2{margin:0;font-size:21px}
.location-line{margin:6px 0 15px;color:var(--muted)}
.map-button{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0 18px;border-radius:999px;color:#fff;background:linear-gradient(145deg,#1eb4b1,#078887);font-size:14px;font-weight:800;text-decoration:none;box-shadow:0 8px 20px rgba(7,154,152,.18)}

.scenario-section{margin:0 28px 18px}
.section-heading{margin-bottom:13px}
.section-label{margin:0 0 4px;color:#526068;font-size:14px;font-weight:730}
.section-heading h2{margin:0;font-size:23px;letter-spacing:-.028em}
.scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.scenario{position:relative;display:grid;place-items:center;align-content:center;gap:7px;min-height:126px;padding:14px 8px;border:1px solid #d7dee1;border-radius:21px;color:#202a30;background:#fff;box-shadow:0 5px 15px rgba(23,57,69,.045);cursor:pointer}
.scenario-icon{font-size:36px;line-height:1;color:#334149}
.hotel-glyph{font-size:32px}.pin-glyph{font-size:29px}
.scenario strong{font-size:17px}
.scenario-check{display:none;position:absolute;right:10px;top:10px;width:27px;height:27px;border-radius:50%;place-items:center;color:#fff;background:var(--teal);font-weight:900;box-shadow:0 4px 10px rgba(7,154,152,.24)}
.scenario.active{color:#087d7c;border:2px solid #0ea7a4;background:linear-gradient(145deg,#fff,#eaf9f8);box-shadow:0 8px 20px rgba(7,154,152,.10)}
.scenario.active .scenario-icon{color:var(--teal)}
.scenario.active .scenario-check{display:grid}

.report-button{display:grid;grid-template-columns:60px 1fr 22px;align-items:center;gap:18px;width:calc(100% - 56px);min-height:106px;margin:0 28px 20px;padding:16px 24px;border:0;border-radius:25px;color:#fff;background:linear-gradient(145deg,#19aaa7,#078d8c);box-shadow:0 15px 30px rgba(7,143,141,.24);text-align:left;cursor:pointer}
.report-icon{display:grid;place-items:center;width:57px;height:57px;border:3px solid rgba(255,255,255,.85);border-radius:50%}
.report-icon svg{width:32px;height:32px;fill:none;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.report-button strong{display:block;font-size:25px;line-height:1.1}
.report-button small{display:block;margin-top:5px;color:rgba(255,255,255,.88);font-size:15px}
.report-arrow{font-size:34px;line-height:1;text-align:right}
.report-button:active{transform:scale(.992)}

.safety-card{margin:0 28px 25px;border:1px solid #dce6e7;border-radius:20px;background:#fbfdfd;overflow:hidden}
.safety-card summary{display:grid;grid-template-columns:48px 1fr 22px;align-items:center;gap:12px;min-height:72px;padding:10px 18px;cursor:pointer;list-style:none}
.safety-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;color:#fff;background:linear-gradient(145deg,#37c3bf,#078b8a);font-size:22px;font-weight:850}
.safety-card summary small{display:block;color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.04em}
.safety-card summary strong{display:block;margin-top:3px;font-size:16px}
.steps{display:grid;gap:10px;margin:0;padding:4px 18px 18px;list-style:none}
.steps li{display:grid;grid-template-columns:28px 1fr;align-items:start;gap:10px;color:#405058;font-size:14px;line-height:1.42}
.steps li>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;color:#0b7776;background:#e2f4f3;font-size:12px;font-weight:850}
.steps p{margin:2px 0 0}

.more-section{margin:0 28px 24px}
.more-heading{margin-bottom:10px}
.more-heading h2{margin:0;font-size:21px;letter-spacing:-.02em}
.more-heading p{margin:4px 0 0;color:var(--muted);font-size:13px}
.action-list{overflow:hidden;border:1px solid #dce3e6;border-radius:21px;background:#fff;box-shadow:0 8px 24px rgba(23,57,69,.07)}
.action-row,.private-row{display:grid;grid-template-columns:48px 1fr 20px;align-items:center;gap:13px;width:100%;min-height:73px;padding:10px 18px;border:0;border-bottom:1px solid #e5eaec;color:var(--ink);background:#fff;text-align:left;text-decoration:none;cursor:pointer}
.action-row:last-child{border-bottom:0}
.action-icon,.private-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;color:#fff}
.action-icon svg,.private-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.wife-icon{background:linear-gradient(145deg,#34dc77,#17b856)}
.location-icon{background:linear-gradient(145deg,#55a1ff,#176ee6)}
.call-icon{background:linear-gradient(145deg,#40d668,#19ae45)}
.action-text strong{display:block;font-size:16px}
.action-text small{display:block;margin-top:2px;color:var(--muted);font-size:13px}
.arrow{color:#26373e;font-size:28px;line-height:1;text-align:right}
.private-row{margin-top:14px;border:1px solid #dce8e9;border-radius:19px;background:linear-gradient(145deg,#f4fbfb,#fff);box-shadow:0 7px 20px rgba(23,57,69,.05)}
.private-icon{border-radius:13px;color:#25535b;background:#e7f5f5}
.private-row[hidden]{display:none}

.footer{display:flex;align-items:center;justify-content:center;gap:8px;padding:0 22px 23px;color:#8b969b;font-size:12px}

.modal{width:min(92vw,560px);max-height:calc(100dvh - 28px);margin:auto;padding:0;border:0;border-radius:26px;background:transparent;overflow:visible}
.modal::backdrop{background:rgba(15,28,35,.48);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.modal-card{max-height:calc(100dvh - 28px);padding:23px;border-radius:26px;background:#fff;box-shadow:0 25px 75px rgba(0,0,0,.26);overflow:auto}
.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.modal-kicker{margin:0 0 4px;color:var(--teal-dark);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.modal-head h2{margin:0;font-size:25px;letter-spacing:-.03em}
.modal-close{display:grid;place-items:center;flex:0 0 auto;width:37px;height:37px;border:0;border-radius:50%;color:#3d4a50;background:#eef2f3;font-size:25px;line-height:1;cursor:pointer}
.scenario-badge{margin:16px 0;padding:11px 13px;border:1px solid #cde7e5;border-radius:13px;color:#156f70;background:#eff9f8;font-size:13px}
.modal-field{display:grid;gap:6px;margin-top:13px;color:#34434a;font-size:13px;font-weight:760}
.modal-field input,.modal-field textarea{width:100%;border:1px solid #ccd7db;border-radius:13px;background:#fff;padding:12px 13px;color:var(--ink);font-size:16px;outline:none}
.modal-field textarea{min-height:90px;resize:vertical}
.modal-field input:focus,.modal-field textarea:focus{border-color:#32aaa7;box-shadow:0 0 0 4px rgba(7,154,152,.10)}
.modal-field small{color:#778187;font-size:11px;font-weight:500;line-height:1.35}
.location-add{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:45px;margin-top:15px;border:1px solid #bfe2df;border-radius:13px;color:#087b7b;background:#effafa;font-weight:800;cursor:pointer}
.modal-status{min-height:16px;margin:8px 0 0;color:#647177;font-size:12px}
.modal-note{margin:12px 0 0;color:#68757b;font-size:12px;line-height:1.45}
.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.modal-actions button{min-height:47px;border-radius:13px;font-weight:820;cursor:pointer}
.secondary{border:1px solid #d3dcdf;color:#34444a;background:#fff}
.primary{border:0;color:#fff;background:linear-gradient(145deg,#17aaa7,#078a89)}
.primary:disabled{opacity:.55;cursor:not-allowed}
.honeypot{position:fixed!important;left:-200vw!important;top:0!important;width:1px!important;height:1px!important;overflow:hidden!important}

button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid rgba(7,154,152,.24);outline-offset:3px}
[dir="rtl"] .owner-chip,[dir="rtl"] .brand,[dir="rtl"] .hotel-summary-copy,[dir="rtl"] .action-row,[dir="rtl"] .private-row,[dir="rtl"] .report-button{text-align:right}
[dir="rtl"] .scenario-check{right:auto;left:10px}

@media(max-width:760px){
  html,body{min-height:0;background:#fff}
  body{padding:0}
  .app-shell{width:100%;margin:0}
  .app-card{border:0;border-radius:0;box-shadow:none}
  .app-header{padding:19px 18px 17px;gap:12px}
  .brand{gap:10px}
  .brand-icon{width:48px;height:48px}
  .brand-name{font-size:21px}
  .brand-copy{margin-top:3px;font-size:11px}
  .header-side{gap:7px}
  .owner-chip{gap:6px}
  .owner-avatar{width:39px;height:39px;font-size:11px}
  .owner-chip strong{font-size:11px}
  .owner-chip small{font-size:9px}
  .language{position:absolute;top:5px;right:7px;transform:scale(.78);transform-origin:top right}
  [dir="rtl"] .language{right:auto;left:7px;transform-origin:top left}
  .status-banner{margin:0 14px 12px}
  .kindness-card{grid-template-columns:83px 1fr;gap:15px;margin:0 14px 17px;padding:22px 18px 35px;border-radius:22px}
  .kindness-icon{width:78px;height:78px}
  .kindness-icon svg{width:50px;height:50px}
  .kindness-copy h1{font-size:21px;line-height:1.17}
  .kindness-copy p{margin-top:7px;font-size:15px;line-height:1.35}
  .kindness-divider{bottom:9px;width:62%;gap:9px}
  .kindness-divider b{font-size:16px}
  .hotel-card{margin:0 14px 18px;border-radius:21px}
  .hotel-card summary{grid-template-columns:minmax(0,1.15fr) minmax(120px,.85fr);grid-template-rows:auto 42px}
  .hotel-summary-copy{gap:9px;padding:17px 5px 12px 15px}
  .hotel-icon{width:48px;height:48px;border-radius:14px}
  .hotel-icon svg{width:27px;height:27px}
  .hotel-summary-copy h2{font-size:16px}
  .hotel-summary-copy p{margin-top:4px;font-size:11px}
  .hotel-date{padding-top:9px!important;font-size:11px!important}
  .hotel-art{min-height:150px}
  .hotel-summary-footer{padding:0 15px;font-size:11px}
  .hotel-expanded{padding:15px}
  .scenario-section{margin:0 14px 14px}
  .section-label{font-size:12px}
  .section-heading h2{font-size:19px}
  .scenario-grid{gap:8px}
  .scenario{min-height:98px;border-radius:17px}
  .scenario-icon{font-size:29px}
  .scenario strong{font-size:14px}
  .scenario-check{right:7px;top:7px;width:23px;height:23px;font-size:12px}
  [dir="rtl"] .scenario-check{right:auto;left:7px}
  .report-button{grid-template-columns:49px 1fr 16px;gap:13px;width:calc(100% - 28px);min-height:84px;margin:0 14px 14px;padding:12px 17px;border-radius:20px}
  .report-icon{width:46px;height:46px}
  .report-icon svg{width:27px;height:27px}
  .report-button strong{font-size:20px}
  .report-button small{font-size:12px}
  .report-arrow{font-size:27px}
  .safety-card{margin:0 14px 18px;border-radius:18px}
  .safety-card summary{grid-template-columns:43px 1fr 18px;padding:9px 14px}
  .safety-icon{width:39px;height:39px}
  .more-section{margin:0 14px 18px}
  .more-heading h2{font-size:18px}
  .more-heading p{font-size:11px}
  .action-list{border-radius:18px}
  .action-row,.private-row{grid-template-columns:42px 1fr 17px;gap:10px;min-height:66px;padding:8px 13px}
  .action-icon,.private-icon{width:39px;height:39px}
  .action-icon svg,.private-icon svg{width:22px;height:22px}
  .action-text strong{font-size:14px}
  .action-text small{font-size:11px}
  .arrow{font-size:24px}
  .footer{padding-bottom:18px}
}

@media(max-width:390px){
  .brand-copy{display:none}
  .owner-chip span:last-child{display:none}
  .kindness-card{grid-template-columns:70px 1fr;padding-left:14px;padding-right:14px}
  .kindness-icon{width:66px;height:66px}
  .kindness-icon svg{width:43px;height:43px}
  .kindness-copy h1{font-size:19px}
  .kindness-copy p{font-size:14px}
  .hotel-card summary{grid-template-columns:minmax(0,1.25fr) minmax(105px,.75fr)}
  .hotel-summary-copy h2{font-size:15px}
  .scenario strong{font-size:13px}
}
