/* The owner trial reuses the existing Horizon palette, local fonts and coast image. */
@font-face{font-family:"Bodoni Moda";src:url("/fonts/bodoni-moda.woff") format("woff");font-weight:400 900;font-display:swap}
@font-face{font-family:Jost;src:url("/fonts/jost.woff") format("woff");font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--bg:#09131b;--surface:#0e1c27;--text:#e7eef2;--muted:#b0c0ca;--gold:#d2ae6e;--line:#344b5b;font:17px/1.6 Jost,Arial,sans-serif;background:var(--bg);color:var(--text)}
*{box-sizing:border-box}
body{margin:0;min-height:100svh;isolation:isolate}
.coast{position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(9,19,27,.3),rgba(9,19,27,.72) 55%,#09131b 100%),linear-gradient(90deg,rgba(9,19,27,.5),rgba(9,19,27,.16)),url("/assets/nerja-panorama.jpg") center 43%/cover no-repeat}
.site-header{border-bottom:1px solid #ffffff29;background:#09131b70}
.header-inner,main{width:calc(100% - 112px);max-width:1160px;margin-inline:auto}
.header-inner{min-height:108px;display:flex;align-items:center}
.brand{font-family:"Bodoni Moda",Georgia,serif;font-size:29px;font-weight:400;letter-spacing:.21em;line-height:1.3;color:#fff}
.brand span{display:block;font:500 10px/1.5 Jost,Arial,sans-serif;letter-spacing:.2em;margin-top:6px}
main{padding:64px 0 72px}
.intro{display:flex;justify-content:space-between;align-items:center;gap:40px}
h1,h2{font-family:"Bodoni Moda",Georgia,serif;font-weight:400;margin:0;line-height:1.12;letter-spacing:-.035em;color:#fff}
h1{font-size:clamp(40px,4.8vw,66px)}
h2{font-size:32px}
p{margin:0}
.lead{margin-top:18px;max-width:50ch;color:#e0e9ee;font-size:17px;line-height:1.65}
.account{flex-shrink:0;text-align:right;max-width:100%;align-self:center}
#identity{font-size:14px;color:#d7e3ea;overflow-wrap:anywhere;margin-bottom:12px}
#identity:empty{display:none}
.account-actions{display:flex;gap:12px;justify-content:flex-end}
.button{font:500 15px/1.4 Jost,Arial,sans-serif;border:1px solid transparent;border-radius:2px;padding:14px 22px;min-height:50px;display:inline-flex;align-items:center;justify-content:center;text-align:center;cursor:pointer;transition:background .18s,border-color .18s,color .18s;touch-action:manipulation}
.button.primary{background:var(--gold);border-color:var(--gold);color:#09131b}
.button.primary:hover:not(:disabled){background:#e4c48c;border-color:#e4c48c}
.button.outline,.button.subtle{background:#09131b80;border-color:#6f8491;color:var(--text)}
.button.outline:hover:not(:disabled),.button.subtle:hover:not(:disabled){background:#1b3342;border-color:var(--gold)}
.button:disabled{background:#152a38;border-color:#3b5261;color:#aab8c1;cursor:not-allowed}
button:focus-visible{outline:2px solid #f5ce87;outline-offset:5px}
.account-actions:has(#logout:not([hidden])) #login{display:none}
.status{margin-top:32px;padding:16px 20px;border-left:2px solid var(--gold);background:rgba(9,19,27,.86);color:#e7eef2;font-size:15px;min-height:56px;box-shadow:0 4px 24px #00000012}
.workspace{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:0;margin-top:26px;border:1px solid #435864;background:rgba(10,25,36,.96);box-shadow:0 24px 72px #0005}
.send-block,.received-block{padding:30px;min-width:0}
.send-block{border-right:1px solid var(--line);background:rgba(19,43,58,.25)}
.preview{color:var(--gold);font-size:14px;letter-spacing:.02em;margin:16px 0 28px}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.send-block .actions{align-items:stretch;flex-direction:column}
.received-block h2{margin-bottom:16px}
.record{color:var(--muted);font-size:14px;overflow-wrap:anywhere}
.record:empty::before{content:"Aún no se ha cargado ninguna solicitud."}
.guest-list{font:400 17px/1.8 Jost,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);padding:17px 0 21px;margin:0;min-height:75px}
.guest-list:empty{min-height:48px}
.received-block .actions{margin-top:8px}
.received-block .actions .button{flex:1 1 180px}
.safety-note{grid-column:1/-1;border-top:1px solid var(--line);padding:17px 30px;color:var(--muted);font-size:13px;line-height:1.7}
[hidden]{display:none!important}
@media(min-width:1400px){main{padding-top:82px}}
@media(max-width:850px){.header-inner,main{width:calc(100% - 56px)}.intro{align-items:flex-start;flex-direction:column;gap:25px}.account{text-align:left;align-self:flex-start}.account-actions{justify-content:flex-start}.workspace{grid-template-columns:1fr}.send-block{border-right:0;border-bottom:1px solid var(--line)}.send-block .actions{flex-direction:row}.status{margin-top:26px}main{padding-top:42px}.coast{background-position:center,center,44% center}}
@media(max-width:480px){.header-inner,main{width:calc(100% - 36px)}.header-inner{min-height:92px}.brand{font-size:25px}main{padding:34px 0 40px}.lead{font-size:16px}.intro{gap:22px}h1{font-size:43px}h2{font-size:29px}.account{width:100%}.account-actions{width:100%}.account-actions .button{width:100%}.status{padding:14px 16px;font-size:14px}.send-block,.received-block{padding:24px 20px}.actions{gap:10px}.actions .button{width:100%;flex-basis:auto!important}.preview{margin-bottom:22px}.safety-note{padding:17px 20px}.button{font-size:15px;min-height:50px}.guest-list{min-height:0}.guest-list:empty{min-height:26px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}

.how-it-works{grid-column:1/-1;margin:0;border:0;border-bottom:1px solid var(--line);background:rgba(10,25,36,.96);font-size:16px}
.how-it-works>summary{padding:16px 20px;min-height:56px;cursor:pointer;color:var(--gold);font-weight:500;line-height:1.5}
.how-it-works>summary:focus-visible{outline:2px solid #f5ce87;outline-offset:4px}
.how-it-works[open]>summary{border-bottom:1px solid var(--line)}
.how-content{padding:20px;max-width:85ch;overflow-wrap:anywhere}
.how-content ol{padding-left:24px;margin:16px 0}
.how-content li{padding-left:4px;margin:0 0 14px}
.how-content strong{color:var(--text);font-weight:600}
.how-content p+p{margin-top:14px}
.how-safety{border-left:2px solid var(--gold);padding-left:14px}
@media(max-width:480px){.how-it-works{font-size:15px}.how-it-works>summary,.how-content{padding:16px}.how-content ol{padding-left:20px}}
