.page-signin{min-height:100vh;font-family:'Inter',system-ui,sans-serif;color:#1a1a1a;background:#fff;display:flex;}
.page-signin *{box-sizing:border-box;}
.page-signin button{cursor:pointer;border:none;background:none;font-family:inherit;}
.page-signin a{text-decoration:none;color:inherit;}

/* Left visual */
.page-signin .si-left{width:42%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:100vh;}
.page-signin .si-left-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.05);}
.page-signin .si-left-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.45) 0%,rgba(0,0,0,.7) 100%);}
.page-signin .si-left-content{position:relative;z-index:2;padding:40px;text-align:center;max-width:380px;color:#fff;display:flex;flex-direction:column;align-items:center;gap:24px;}
.page-signin .si-left-logo{font-family:'Playfair Display',Georgia,serif;font-size:24px;font-weight:800;color:#fff;letter-spacing:-.3px;transition:opacity .15s;}
.page-signin .si-left-logo:hover{opacity:.85;}
.page-signin .si-left-logo span{color:#E5D4A0;}
.page-signin .si-left-quote{margin-top:24px;}
.page-signin .si-quote-mark{font-family:'Playfair Display',serif;font-size:64px;line-height:1;color:#E5D4A0;margin-bottom:-12px;}
.page-signin .si-left-quote p{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:18px;line-height:1.5;color:rgba(255,255,255,.92);margin-bottom:12px;}
.page-signin .si-quote-author{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#E5D4A0;}
.page-signin .si-left-back{font-size:11px;color:rgba(255,255,255,.6);font-weight:600;margin-top:auto;transition:color .15s;}
.page-signin .si-left-back:hover{color:#E5D4A0;}

/* Right form */
.page-signin .si-right{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 24px;}
.page-signin .si-form-wrap{width:100%;max-width:420px;}

/* Top bar */
.page-signin .si-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:12px;}
.page-signin .si-home{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:#555;padding:7px 12px;border-radius:100px;border:1.5px solid rgba(0,0,0,.06);background:#fff;transition:all .15s;}
.page-signin .si-home:hover{border-color:#B8975A;color:#B8975A;transform:translateY(-1px);}
.page-signin .si-role-tabs{display:flex;gap:4px;padding:3px;border-radius:100px;background:#F5F3EF;border:1px solid rgba(0,0,0,.04);}
.page-signin .si-role-tab{font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:#888;padding:6px 12px;border-radius:100px;transition:all .18s;}
.page-signin .si-role-tab:hover{color:#1a1a1a;}
.page-signin .si-role-tab.active{background:#fff;color:#8C6D34;box-shadow:0 1px 3px rgba(0,0,0,.06);}

/* Header */
.page-signin .si-badge{display:inline-flex;align-items:center;gap:4px;font-size:8px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#B8975A;padding:5px 12px;border-radius:100px;background:rgba(184,151,90,.06);border:1px solid rgba(184,151,90,.1);margin-bottom:14px;}
.page-signin .si-h{font-family:'Playfair Display',Georgia,serif;font-size:30px;font-weight:700;line-height:1.1;margin-bottom:6px;}
.page-signin .si-h i{font-style:italic;color:#B8975A;font-weight:400;}
.page-signin .si-sub{font-size:12px;color:#888;margin-bottom:24px;line-height:1.5;}

/* SSO */
.page-signin .si-sso{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;}
.page-signin .si-sso-btn{width:100%;padding:11px 14px;border-radius:10px;border:1.5px solid rgba(0,0,0,.06);font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;color:#333;transition:all .15s;background:#fff;}
.page-signin .si-sso-btn:hover{border-color:#B8975A;color:#8C6D34;box-shadow:0 4px 16px rgba(184,145,42,.15);transform:translateY(-1px);}

.page-signin .si-divider{display:flex;align-items:center;gap:10px;margin-bottom:18px;font-size:9px;color:#bbb;font-weight:700;letter-spacing:.5px;text-transform:uppercase;}
.page-signin .si-divider::before,.page-signin .si-divider::after{content:'';flex:1;height:1px;background:rgba(0,0,0,.06);}

/* Form */
.page-signin .si-fg{margin-bottom:14px;}
.page-signin .si-fl{display:block;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#888;margin-bottom:5px;}
.page-signin .si-fl-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:5px;}
.page-signin .si-fl-row .si-fl{margin-bottom:0;}
.page-signin .si-forgot{font-size:9px;font-weight:700;color:#B8975A;transition:color .15s;}
.page-signin .si-forgot:hover{color:#8C6D34;text-decoration:underline;}
.page-signin .si-fi{width:100%;padding:12px 14px;border-radius:10px;border:1.5px solid rgba(0,0,0,.06);font-size:13px;outline:none;transition:border .15s,box-shadow .15s;background:#fff;}
.page-signin .si-fi:focus{border-color:#C9A96E;box-shadow:0 0 0 3px rgba(201,169,110,.1);}
.page-signin .si-fi::placeholder{color:#ccc;}

/* Submit */
.page-signin .si-btn{width:100%;padding:14px;border-radius:10px;font-size:13px;font-weight:800;color:#fff;background:linear-gradient(135deg,#C4A559 0%,#D4BC7A 40%,#E5D4A0 70%,#EFE2B8 100%);box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 -1px 0 rgba(0,0,0,.08) inset,0 4px 16px rgba(150,120,62,.25);transition:all .2s;margin-top:6px;letter-spacing:.2px;}
.page-signin .si-btn:hover{background:#000;color:#D4BC7A;transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,.18);}
.page-signin .si-btn:active{transform:translateY(0);}

.page-signin .si-signup{font-size:15px;color:#1a1a1a;font-weight:600;text-align:center;margin-top:24px;padding:14px 16px;border-top:1px solid #ECECEC;}
.page-signin .si-signup a{color:#A38543;font-weight:800;text-decoration:underline;text-underline-offset:3px;transition:color .15s;}
.page-signin .si-signup a:hover{color:#8C6D34;}

.page-signin .si-demo-hint{font-size:9px;color:#bbb;text-align:center;margin-top:14px;padding:8px 12px;border-radius:8px;background:rgba(184,151,90,.04);border:1px dashed rgba(184,151,90,.15);font-style:italic;}

@media(max-width:820px){
  .page-signin{flex-direction:column;}
  .page-signin .si-left{display:none;}
  .page-signin .si-right{padding:24px 18px;}
}
