:root{--ink:#e7ebef;--muted:#a7b5c2;--bg:#101923;--panel:#18232e;--line:#30404d;--accent:#d8ae79;--green:#a4ccb4;--red:#f2a59e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.masthead{max-width:1400px;margin:auto;padding:28px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:25px}.brand{display:flex;align-items:center;gap:16px;color:var(--ink);font-size:12px;letter-spacing:2px;line-height:1.4}.brand small{display:block;font:25px Georgia,serif;letter-spacing:0}.star{font-size:40px;color:var(--accent)}nav{display:flex;gap:23px;align-items:center;flex-wrap:wrap;font-size:14px}nav a{color:var(--ink)}.user-name{color:var(--muted)}main{max-width:1300px;margin:auto;padding:36px 5% 80px;min-height:75vh}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(36px,5vw,66px);line-height:1.08;letter-spacing:-1px;margin-bottom:22px}h2{font-size:22px;font-weight:500;line-height:1.3}h3{font-size:18px;font-weight:500}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;color:var(--accent);margin-bottom:20px}.subtitle{color:var(--muted);max-width:650px;line-height:1.8}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:50px;padding:45px 0 70px}.hero h1{font-size:clamp(48px,6vw,80px)}.hero .subtitle{max-width:460px;margin-bottom:28px}.sky-art{height:340px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,#253849 0,transparent 67%);border-bottom:1px solid var(--line)}.orbit{position:absolute;border:1px solid #456075;border-radius:50%;width:330px;height:330px;top:10px;left:calc(50% - 165px);transform:rotate(-35deg) scaleY(.55)}.orbit-two{transform:rotate(45deg) scaleY(.65);border-style:dashed;opacity:.6}.moon{width:100px;height:100px;position:absolute;border-radius:50%;top:100px;left:calc(50% - 50px);background:radial-gradient(circle at 70% 40%,#e2c49e,#b59065 60%,#625441);box-shadow:15px 0 60px #aa93691a}.sky-star{position:absolute;color:var(--accent)}.s1{top:40px;left:25%;font-size:30px}.s2{top:210px;right:20%;font-size:25px}.s3{top:60px;right:20%;font-size:40px}.sky-caption{position:absolute;bottom:12px;left:0;font-size:10px;letter-spacing:3px;color:var(--muted)}.sky-caption small{letter-spacing:1px}.button,button{display:inline-block;border:1px solid var(--accent);border-radius:5px;background:var(--accent);color:#1e2328;font:600 14px/1.5 system-ui,sans-serif;padding:12px 18px;cursor:pointer;text-align:center;text-decoration:none}button{font-family:inherit;font-size:14px}.button:hover,button:hover{filter:brightness(1.08);text-decoration:none}.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.danger{color:var(--red);background:transparent;border-color:#80524e}.link{background:none;border:0;padding:0;font-weight:400;color:var(--muted)}.text-button{display:inline-block;margin:12px 0 12px 18px}.panel{padding:28px;background:var(--panel);border:1px solid var(--line);border-radius:8px;margin-bottom:24px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.section-heading,.split,.toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px}.section-heading{margin:15px 0 22px}.section-heading h2,.section-heading p{margin-bottom:5px}.section-heading a{font-size:13px}.page-heading{padding:24px 0 25px}.page-heading h1{font-size:48px}.toolbar{flex-wrap:wrap;margin-bottom:24px}.toolbar>div{display:flex;align-items:center;gap:15px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);font-weight:500}td,th{padding:16px 12px;border-bottom:1px solid var(--line)}td:first-child,th:first-child{padding-left:0}tr:last-child td,tr:last-child th{border-bottom:0}small{display:block;color:var(--muted);font-size:12px;line-height:1.6}.badge{display:inline-block;border:1px solid #486151;border-radius:30px;color:var(--green);font-size:11px;padding:3px 10px;white-space:nowrap}.badge.low{color:#edc88e;border-color:#725d3e}.badge.out{color:var(--red);border-color:#80524e}.badge.unknown{color:var(--muted);border-color:var(--line)}.list-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);color:var(--ink)}.list-row:last-child{border:0}.empty{padding:20px 0;color:var(--muted)}.calendar-panel{padding:10px 22px}.calendar{min-width:650px}.calendar td{width:28%;vertical-align:top}.calendar th:first-child{width:16%;white-space:nowrap}.calendar th small{text-transform:none;letter-spacing:0}.availability{display:block;font-size:11px;color:var(--muted)}td.available .availability{color:var(--green)}td.shared .availability{color:var(--accent)}td.blocked{background:#423b342e}.calendar-stay{display:block;margin:8px 0;color:var(--ink)}.reserve-link{font-size:11px;display:block;margin-top:8px}label{display:block;font-size:14px;margin-bottom:6px;color:var(--ink)}input,select,textarea{width:100%;background:#101a24;color:var(--ink);border:1px solid #4c5e6d;border-radius:4px;padding:11px;font:16px system-ui,sans-serif;font-family:inherit;color-scheme:dark}input[type=checkbox]{width:auto;accent-color:var(--accent)}input[type=hidden]{display:none}.helptext{display:block;font-size:12px;color:var(--muted);margin-top:5px}.helptext ul{padding-left:18px}.form-panel{max-width:760px}.auth-panel{max-width:560px;margin:45px auto}.auth-panel h1{font-size:42px}form p{margin-bottom:22px}.errorlist{color:var(--red);padding-left:20px}.message{padding:14px 20px;background:#243b32;border:1px solid #456653;margin-bottom:20px;border-radius:5px}.message.error{background:#3b282a;border-color:#80524e}.inline{display:inline-flex;align-items:center;gap:8px;margin:0}.inline input{width:auto;max-width:180px}.cancel-form{margin:18px 0}.reservation-row{border-bottom:1px solid var(--line);padding:15px 0}.historical{opacity:.6}.photos{display:flex;gap:15px;flex-wrap:wrap}.photos img{width:210px;height:160px;object-fit:cover;border-radius:6px}.update,.member-row{padding:20px 0;border-bottom:1px solid var(--line);margin-bottom:20px}.member-actions{display:flex;flex-wrap:wrap;align-items:end;gap:14px}.member-actions label{flex:1;min-width:200px;margin:0}footer{max-width:1300px;margin:auto;border-top:1px solid var(--line);padding:25px 5%;color:var(--muted);font-size:12px;display:flex;justify-content:space-between;gap:20px}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip:focus{position:fixed;top:10px;left:10px;padding:10px;background:var(--panel);z-index:10}@media(max-width:800px){.masthead{align-items:flex-start;flex-direction:column}nav{gap:16px}.hero{grid-template-columns:1fr;padding:30px 0 40px;gap:10px}.sky-art{height:230px}.sky-caption{left:15px}.hero h1{font-size:56px}.grid{grid-template-columns:1fr;gap:0}.panel{padding:20px}.split{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:38px}.section-heading{align-items:flex-start}.section-heading a{max-width:140px;text-align:right}.text-button{margin-left:0;display:block}.toolbar>div{gap:10px}.toolbar strong{font-size:14px}footer{flex-direction:column}.user-name{display:inline}.auth-panel{margin:15px auto}.list-row{align-items:flex-start}}
.admin-menu{position:relative}.admin-menu summary{cursor:pointer;color:var(--accent);padding:8px 0}.admin-menu summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.admin-submenu{position:absolute;right:0;top:100%;z-index:20;min-width:260px;padding:8px;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 10px 30px #0006}.admin-submenu a{display:block;padding:10px 14px;white-space:nowrap}.admin-submenu a:hover,.admin-submenu a:focus-visible{background:var(--bg)}@media(max-width:800px){.admin-submenu{position:static;min-width:0}.admin-submenu a{white-space:normal}}
