@charset "UTF-8";:root{--black: #040405;--obsidian: #090a0d;--obsidian-2: #101217;--obsidian-3: #181b22;--glass: rgba(16, 18, 24, .62);--line: rgba(214, 222, 236, .14);--line-strong: rgba(226, 233, 245, .32);--silver: #c9ced6;--silver-hi: #f1f4f9;--silver-lo: #858c99;--aura: rgba(232, 240, 255, .5);--aura-soft: rgba(232, 240, 255, .16);--ember: #ff6a2b;--lava: #ff3d00;--ember-glow: rgba(255, 98, 32, .45);--water: #8fb4d9;--danger: #ff6b6b;--ok: #7fe0a8;--font-display: "Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;--font-body: "Jost", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--header-h: 76px;--max: 1180px;--cut: 14px}*,*:before,*:after{box-sizing:border-box}html{color-scheme:dark;-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:var(--black);color:var(--silver);font-family:var(--font-body);font-size:1.0625rem;font-weight:300;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:#e8f0ffd9;color:var(--black)}a{color:var(--silver-hi);text-decoration:none;transition:color .2s,text-shadow .2s}a:hover{text-shadow:0 0 14px var(--aura)}img{max-width:100%;display:block}h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;color:var(--silver-hi);line-height:1.1;margin:0 0 .5em}h1{font-size:clamp(2.6rem,6vw,4.6rem);letter-spacing:.04em}h2{font-size:clamp(2rem,4vw,3rem);letter-spacing:.05em}h3{font-size:1.6rem;letter-spacing:.03em}p{margin:0 0 1em}:focus-visible{outline:2px solid var(--silver-hi);outline-offset:3px;border-radius:2px}.container{width:min(100% - 2.5rem,var(--max));margin-inline:auto}.page{position:relative;z-index:2;padding-top:calc(var(--header-h) + 3rem);padding-bottom:6rem;min-height:80vh}.stack>*+*{margin-top:1rem}.grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.eyebrow{font-size:.78rem;letter-spacing:.34em;text-transform:uppercase;color:var(--silver-lo);margin-bottom:1rem}.muted{color:var(--silver-lo)}.lead{font-size:1.25rem;max-width:60ch;color:var(--silver)}.silver-text{background:linear-gradient(180deg,#fff,#d7dce6 38%,#8d95a4);-webkit-background-clip:text;background-clip:text;color:transparent}.glow-text{text-shadow:0 0 18px rgba(232,240,255,.55),0 0 48px rgba(232,240,255,.25)}.glass{position:relative;background:linear-gradient(145deg,#ffffff12,#ffffff03 55%),var(--glass);border:1px solid var(--line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut));box-shadow:inset 0 1px #ffffff14}.btn{--cut: 10px;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.85rem 1.7rem;font:400 .82rem/1 var(--font-body);letter-spacing:.26em;text-transform:uppercase;color:var(--silver-hi);background:#0a0b0eb8;border:1px solid var(--line-strong);cursor:pointer;clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut));transition:background .25s,color .25s,box-shadow .25s,filter .25s}.btn:hover{background:#e8f0ff1f;filter:drop-shadow(0 0 10px var(--aura));text-shadow:none}.btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.btn.primary{color:var(--black);font-weight:500;border-color:transparent;background:linear-gradient(180deg,#fff,#bcc3cf)}.btn.primary:hover{background:linear-gradient(180deg,#fff,#dfe4ec);filter:drop-shadow(0 0 16px var(--aura))}.btn.ember{border-color:#ff6a2b99;color:#ffd9c4}.btn.ember:hover{background:#ff6a2b29;filter:drop-shadow(0 0 12px var(--ember-glow))}.btn.danger{border-color:#ff6b6b80;color:var(--danger)}.btn.small{padding:.55rem 1rem;font-size:.7rem}label{display:block;font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--silver-lo);margin-bottom:.45rem}input,select,textarea{width:100%;font:300 1rem var(--font-body);color:var(--silver-hi);background:#00000073;border:1px solid var(--line);border-radius:0;padding:.8rem .95rem;transition:border-color .2s,box-shadow .2s}input::placeholder,select::placeholder,textarea::placeholder{color:#858c99b3}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--silver);box-shadow:0 0 0 1px var(--silver),0 0 22px var(--aura-soft)}input.ng-invalid.ng-touched,select.ng-invalid.ng-touched,textarea.ng-invalid.ng-touched{border-color:var(--danger)}textarea{min-height:140px;resize:vertical}select option{background:var(--obsidian-2)}input[type=checkbox]{width:auto;accent-color:var(--silver)}.field{margin-bottom:1.2rem}.field-row{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.check{display:flex;align-items:center;gap:.6rem;text-transform:none;letter-spacing:.02em;font-size:.95rem;color:var(--silver);cursor:pointer}.hint{font-size:.85rem;color:var(--silver-lo);margin-top:.4rem}.error-text{color:var(--danger);font-size:.92rem}.ok-text{color:var(--ok)}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.badge{display:inline-block;padding:.28rem .7rem;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;border:1px solid var(--line-strong);color:var(--silver-hi);background:#0000008c}.badge.available{border-color:#8fb4d999;color:#cfe3f7}.badge.sold{border-color:#ffffff2e;color:var(--silver-lo)}.badge.commission{border-color:#ff6a2b99;color:#ffc9ad}.badge.coming-soon{border-style:dashed}.badge.new{border-color:#ff6a2bb3;color:#ffc9ad}.badge.confirmed{border-color:#7fe0a88c;color:var(--ok)}.badge.declined{border-color:#ff6b6b66;color:var(--danger)}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}}.reveal{animation:rise-in .9s cubic-bezier(.2,.7,.2,1) backwards}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(max-width:640px){body{font-size:1rem}.page{padding-top:calc(var(--header-h) + 1.5rem)}}.admin-page{max-width:920px}.admin-page h1{font-size:2.2rem;letter-spacing:.06em}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}.panel{padding:1.6rem;margin-bottom:2rem}.rows{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}.row{display:flex;align-items:center;gap:1rem;padding:.9rem 1.2rem;flex-wrap:wrap}.row .grow{flex:1;min-width:200px}.row .title{color:var(--silver-hi);font-size:1.05rem}.row .sub{color:var(--silver-lo);font-size:.88rem;word-break:break-all}.row .actions{display:flex;gap:.5rem;flex-wrap:wrap}.badge.hidden{border-style:dashed;color:var(--silver-lo)}.notice{padding:1rem 1.2rem;border:1px solid var(--line-strong);margin-bottom:1.5rem}.thumbs-edit{display:flex;flex-wrap:wrap;gap:.8rem;margin:.6rem 0 1rem}.thumbs-edit .t{position:relative;width:96px;border:1px solid var(--line)}.thumbs-edit .t img{width:96px;height:96px;object-fit:cover}.thumbs-edit .t .btn{width:100%;padding:.35rem 0;font-size:.6rem;letter-spacing:.14em}.glow-link{position:relative;display:inline-flex;align-items:center;gap:.55rem;padding:.75rem 1.2rem;font-size:.76rem;letter-spacing:.26em;text-transform:uppercase;color:var(--silver);border:1px solid var(--line-strong);background:#0a0b0e8c;cursor:pointer;transition:color .25s,transform .3s cubic-bezier(.2,.7,.2,1),border-color .25s,background .25s,box-shadow .3s,text-shadow .3s}.glow-link:after{content:"\2197";font-size:.95em;letter-spacing:0;opacity:.55;transition:opacity .25s,transform .3s}.glow-link:hover,.glow-link:focus-visible{color:#fff;border-color:#fffffff2;background:#e8f0ff1f;transform:translateY(-3px);outline:none;text-shadow:0 0 8px #fff,0 0 22px rgba(232,240,255,.95),0 0 46px rgba(232,240,255,.6);box-shadow:0 0 0 1px #ffffff59,0 0 16px #ffffffbf,0 0 40px #e8f0ff99,0 0 90px #e8f0ff59,inset 0 0 24px #e8f0ff40;animation:aura-breathe 2.2s ease-in-out infinite}.glow-link:hover:after,.glow-link:focus-visible:after{opacity:1;transform:translate(2px,-2px)}@keyframes aura-breathe{0%,to{box-shadow:0 0 0 1px #ffffff59,0 0 16px #ffffffbf,0 0 40px #e8f0ff99,0 0 90px #e8f0ff59,inset 0 0 24px #e8f0ff40}50%{box-shadow:0 0 0 1px #ffffff80,0 0 24px #fffffff2,0 0 60px #e8f0ffcc,0 0 130px #e8f0ff80,inset 0 0 32px #e8f0ff59}}
