@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;1,500&display=swap");
:root{--owner-ink:#24332a;--owner-deep:#194b3b;--owner-paper:#f5eddf;--owner-muted:#768177;--owner-ochre:#c39442;--owner-line:#d9dfd4}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--owner-paper);color:var(--owner-ink);font-family:"DM Sans",sans-serif}.owner-login-shell{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr}.owner-login-intro{display:flex;flex-direction:column;justify-content:space-between;padding:42px 6vw;background:var(--owner-deep);color:var(--owner-paper)}.owner-login-brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-size:20px;font-weight:700;letter-spacing:-.04em}.owner-login-brand span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;color:var(--owner-deep);background:var(--owner-ochre);font-size:12px;font-weight:800}.owner-login-copy{max-width:580px;margin:auto 0}.owner-login-copy p,.owner-login-kicker{margin:0 0 14px;color:#d8bf91;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.owner-login-copy h1{margin:0 0 22px;color:#fff;font-family:"Playfair Display",Georgia,serif;font-size:clamp(52px,6vw,88px);font-weight:500;letter-spacing:-.07em;line-height:.98}.owner-login-copy h1 em{color:#e4b85c;font-style:italic}.owner-login-copy span{display:block;max-width:420px;color:#b8c9bb;font-size:14px;line-height:1.7}.owner-login-intro>small{color:#9caf9f;font-size:10px;letter-spacing:.1em}.owner-login-panel{display:grid;place-items:center;padding:48px 8%;background:#fffdf8}.owner-login-card{width:min(420px,100%)}.owner-login-card h2{margin:0 0 10px;font-family:"Playfair Display",Georgia,serif;font-size:40px;font-weight:500;letter-spacing:-.06em}.owner-login-muted{margin:0 0 30px;color:var(--owner-muted);font-size:13px;line-height:1.6}.owner-login-card form{display:grid;gap:16px}.owner-login-card label{display:grid;gap:7px;color:#5e6d62;font-size:11px;font-weight:700}.owner-login-card input{width:100%;min-height:48px;padding:0 13px;border:1px solid var(--owner-line);border-radius:8px;outline:0;background:#fff;color:var(--owner-ink);font:inherit;font-size:13px}.owner-login-card input:focus{border-color:var(--owner-deep);box-shadow:0 0 0 3px rgba(25,75,59,.1)}.owner-login-card button{min-height:50px;border:0;border-radius:8px;color:#fff;background:var(--owner-deep);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.owner-login-card button:hover{background:#245c49}.owner-login-card button span{margin-left:7px;color:#e4b85c}.owner-login-error{min-height:16px;color:#a9573d;font-size:11px}.owner-login-note{margin:24px 0 22px;padding:12px 13px;border-left:3px solid var(--owner-ochre);color:var(--owner-muted);background:#fbf3df;font-size:11px;line-height:1.55}.owner-login-back{color:var(--owner-deep);font-size:11px;font-weight:700;text-decoration:none}@media(max-width:760px){.owner-login-shell{display:block}.owner-login-intro{min-height:380px;padding:28px}.owner-login-copy{margin:70px 0 0}.owner-login-copy h1{font-size:54px}.owner-login-panel{padding:44px 24px}}
.owner-login-brand{width:220px;height:52px;background:url("../../assets/images/studiofold-logo.png") left center/contain no-repeat;font-size:0}.owner-login-brand>*{visibility:hidden}
.owner-login-intro .owner-login-brand{filter:brightness(0) saturate(100%) invert(77%) sepia(92%) saturate(1050%) hue-rotate(353deg) brightness(96%) contrast(94%)}
.owner-login-brand{background-image:url("../../assets/images/studiofold-logo-green.png");background-color:transparent;filter:brightness(0) saturate(100%) invert(67%) sepia(84%) saturate(1065%) hue-rotate(2deg) brightness(91%) contrast(90%)}

.owner-login-card button {
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  transition: background-color 180ms ease, opacity 180ms ease;
}

.owner-login-submit-label,
.owner-login-submit-loading {
  grid-area: 1 / 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

.owner-login-submit-loading {
  visibility: hidden;
  opacity: 0;
}

.owner-login-card button.is-loading {
  cursor: wait;
  background: #245c49;
}

.owner-login-card button.is-loading .owner-login-submit-label {
  visibility: hidden;
  opacity: 0;
}

.owner-login-card button.is-loading .owner-login-submit-loading {
  visibility: visible;
  opacity: 1;
}

.owner-login-card button:disabled {
  opacity: 1;
}

.owner-login-spinner {
  width: 15px;
  height: 15px;
  border: 2px solid rgba(255, 255, 255, .35);
  border-top-color: #e4b85c;
  border-radius: 50%;
  animation: owner-login-spin .7s linear infinite;
}

@keyframes owner-login-spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .owner-login-spinner { animation-duration: 1.4s; }
}
