:root{
  --oc-dark:#0f172a;
  --oc-dark-2:#111827;
  --oc-amber:#d4a64d;
  --oc-amber-2:#f4d28a;
  --oc-text:#1f2937;
}
body{font-family:'Poppins',Arial,sans-serif;color:var(--oc-text);}
.public-page,.auth-page{background:linear-gradient(135deg,#0b1220 0%,#111827 48%,#162236 100%);}
.panel-page{background:#eef2f7;}
.nav-openclick{background:linear-gradient(90deg,var(--oc-dark) 0%,#162236 100%);box-shadow:0 10px 28px rgba(15,23,42,.18);}
.brand-openclick{display:flex;align-items:center;gap:.8rem;color:#fff;text-decoration:none;font-weight:600}
.brand-logo{height:38px;width:auto;display:block}
.nav-openclick .nav-link{color:rgba(255,255,255,.85)}
.nav-openclick .nav-link:hover{color:#fff}
.card{border:0;border-radius:22px;box-shadow:0 .6rem 2rem rgba(15,23,42,.08)}
.btn-primary{background:linear-gradient(135deg,var(--oc-amber) 0%,#c68f27 100%);border-color:#c68f27;color:#111827;font-weight:600}
.btn-primary:hover{background:linear-gradient(135deg,#e2bb67 0%,#cf982f 100%);border-color:#cf982f;color:#111827}
.btn-outline-primary{border-color:#c68f27;color:#8b5d12}
.btn-outline-primary:hover{background:#c68f27;border-color:#c68f27;color:#111827}
.btn-outline-light:hover{color:#111827}
.form-control,.form-select{border-radius:12px;padding:.75rem .95rem}
.form-control:focus,.form-select:focus{border-color:#d4a64d;box-shadow:0 0 0 .25rem rgba(212,166,77,.2)}
.signature-preview{background:#fff;border:1px solid #dee2e6;border-radius:16px;padding:20px;overflow:auto}
.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}
.auth-wrap{width:100%;max-width:1080px;display:grid;grid-template-columns:1.08fr .92fr;gap:2rem;align-items:stretch}
.auth-brand{background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px);border-radius:28px;padding:3rem;color:#fff;position:relative;overflow:hidden}
.auth-brand:before{content:'';position:absolute;right:-40px;top:-40px;width:220px;height:220px;background:radial-gradient(circle,rgba(212,166,77,.32) 0%,rgba(212,166,77,0) 70%)}
.auth-login{background:#fff;border-radius:28px;padding:2.2rem;box-shadow:0 1.2rem 3rem rgba(0,0,0,.2)}
.auth-kicker{display:inline-block;background:rgba(212,166,77,.16);color:#f6d08a;border:1px solid rgba(244,210,138,.2);padding:.4rem .8rem;border-radius:999px;font-size:.82rem;margin-bottom:1rem}
.auth-title{font-size:2.35rem;font-weight:700;line-height:1.05;margin-bottom:1rem}
.auth-sub{opacity:.84;max-width:42ch}
.auth-logo{height:54px;width:auto;display:block}
.list-soft{list-style:none;padding:0;margin:1.5rem 0 0}
.list-soft li{padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.08)}
.public-hero{padding:5rem 0 4rem}
.public-card{background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px);border-radius:30px;padding:3rem;color:#fff}
.public-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center}
.public-actions .app-tile{display:flex;align-items:center;justify-content:space-between;text-decoration:none;background:#fff;color:#111827;border-radius:24px;padding:1.15rem 1.35rem;box-shadow:0 1rem 2rem rgba(0,0,0,.2);transition:transform .2s ease, box-shadow .2s ease}
.public-actions .app-tile:hover{transform:translateY(-2px);box-shadow:0 1.4rem 2.6rem rgba(0,0,0,.26)}
.app-tile-badge{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:18px;background:linear-gradient(135deg,var(--oc-amber),var(--oc-amber-2));font-size:1.2rem;font-weight:700;color:#111827}
.metric-card{background:linear-gradient(135deg,#fff 0%,#f8fafc 100%)}
.alert-danger{background:#fff1f2;color:#8a2030}
.alert-warning{background:#fff8e6;color:#7a5a09}
.alert-success{background:#edfdf3;color:#17603a}
.alert-info{background:#eef6ff;color:#24558a}
@media (max-width:991px){.auth-wrap,.public-grid{grid-template-columns:1fr}.auth-brand,.public-card{padding:2rem}.auth-title{font-size:2rem}.auth-logo{height:46px}}

.auth-brand .auth-logo{display:block;margin:0 auto;height:78px;width:auto;filter:drop-shadow(0 10px 25px rgba(0,0,0,.25));}
