
.vudd-app{
  --green:#123f3b;
  --green2:#1b514b;
  --gold:#b79a61;
  --cream:#f6f2e9;
  --bg:#f7f8f7;
  --line:#e3e8e6;
  --text:#1f302e;
  --muted:#78827f;
  min-height:820px;
  display:grid;
  grid-template-columns:250px 1fr;
  background:var(--bg);
  font-family:inherit;
  color:var(--text);
  overflow:hidden;
}
.vudd-app *{box-sizing:border-box}
.vudd-sidebar{
  display:flex;
  flex-direction:column;
  min-height:820px;
  padding:28px 20px;
  background:var(--green);
  color:#fff;
}
.vudd-brand-block{display:flex;align-items:center;gap:12px}
.vudd-brand-mark{
  display:flex;align-items:center;justify-content:center;
  width:44px;height:44px;border:1px solid rgba(255,255,255,.35);
  font-weight:800;font-size:20px;color:var(--gold)
}
.vudd-brand-block strong{display:block;letter-spacing:.12em}
.vudd-brand-block span{font-size:12px;color:rgba(255,255,255,.62)}
.vudd-nav{display:flex;flex-direction:column;gap:7px;margin-top:42px}
.vudd-nav-item{
  width:100%;padding:13px 14px;border:0;background:transparent;color:rgba(255,255,255,.72);
  text-align:left;font-family:inherit;font-size:14px;cursor:pointer
}
.vudd-nav-item.active,.vudd-nav-item:hover{background:rgba(255,255,255,.09);color:#fff}
.vudd-sidebar-bottom{margin-top:auto}
.vudd-user-mini{display:flex;gap:10px;align-items:center;padding-top:20px;border-top:1px solid rgba(255,255,255,.14)}
.vudd-user-avatar{
  width:38px;height:38px;display:flex;align-items:center;justify-content:center;
  background:var(--gold);color:var(--green);font-weight:800
}
.vudd-user-mini strong{display:block;font-size:13px}
.vudd-user-mini small{color:rgba(255,255,255,.58)}
.vudd-logout{display:block;margin-top:15px;color:rgba(255,255,255,.7);font-size:12px;text-decoration:none}
.vudd-main{padding:30px 34px}
.vudd-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}
.vudd-kicker{display:block;margin-bottom:7px;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.15em}
.vudd-page-title{margin:0;color:var(--green);font-size:28px;font-weight:500}
.vudd-top-user{color:var(--muted);font-size:13px}
.vudd-mobile-menu{display:none}
.vudd-page{display:none}
.vudd-page.active{display:block}
.vudd-hero{
  display:grid;grid-template-columns:1.4fr .6fr;align-items:center;
  padding:34px;background:var(--cream)
}
.vudd-hero h1{margin:0 0 12px;color:var(--green);font-size:38px;font-weight:500;line-height:1.15}
.vudd-hero p{max-width:620px;margin:0 0 22px;color:var(--muted);line-height:1.7}
.vudd-hero-art{display:flex;justify-content:center}
.vudd-passport-icon{
  width:120px;height:160px;display:flex;align-items:center;justify-content:center;
  border:2px solid var(--gold);color:var(--gold);font-size:48px;font-weight:300
}
.vudd-primary,.vudd-secondary,.vudd-danger,.vudd-reset{
  min-height:46px;padding:12px 18px;border-radius:0;font-family:inherit;font-weight:700;cursor:pointer
}
.vudd-primary{border:1px solid var(--green);background:var(--green);color:#fff}
.vudd-secondary{border:1px solid var(--green);background:#fff;color:var(--green)}
.vudd-secondary:disabled{opacity:.45;cursor:not-allowed}
.vudd-danger{border:1px solid #9f4c4c;background:#fff;color:#9f4c4c}
.vudd-reset{width:100%;margin-top:10px;border:0;background:transparent;color:var(--muted)}
.vudd-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}
.vudd-stat{padding:22px;background:#fff;border:1px solid var(--line)}
.vudd-stat span{display:block;color:var(--muted);font-size:13px}
.vudd-stat strong{display:block;margin-top:9px;color:var(--green);font-size:28px;font-weight:500}
.vudd-recent{margin-top:24px;padding:24px;background:#fff;border:1px solid var(--line)}
.vudd-section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.vudd-section-head h3,.vudd-form-card h3,.vudd-help-card h3{margin:0;color:var(--green);font-size:25px;font-weight:500}
.vudd-text-button{border:0;background:transparent;color:var(--green);cursor:pointer}
.vudd-empty{padding:28px;text-align:center;color:var(--muted);background:var(--bg)}
.vudd-recent-item{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line)}
.vudd-recent-item:last-child{border-bottom:0}
.vudd-recent-item strong{display:block}
.vudd-recent-item small{color:var(--muted)}
.vudd-scan-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:26px}
.vudd-camera-box{position:relative;aspect-ratio:16/10;overflow:hidden;background:#102b29}
.vudd-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vudd-guide{position:absolute;left:7%;right:7%;top:12%;bottom:12%;border:1px solid rgba(255,255,255,.78)}
.vudd-guide>span{position:absolute;top:12px;left:50%;transform:translateX(-50%);color:#fff;font-size:11px;white-space:nowrap}
.vudd-mrz-guide{
  position:absolute;left:4%;right:4%;bottom:5%;height:23%;
  border-top:1px dashed rgba(255,255,255,.8);border-bottom:1px dashed rgba(255,255,255,.8);
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;letter-spacing:.18em
}
.vudd-camera-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}
.vudd-camera-circle{font-size:34px;color:var(--gold);margin-bottom:8px}
.vudd-camera-empty small{margin-top:5px;color:rgba(255,255,255,.6)}
.vudd-scan-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.vudd-upload{display:flex;flex-direction:column;margin-top:10px;padding:14px 16px;border:1px solid var(--line);background:#fff;cursor:pointer}
.vudd-upload-input{display:none}.vudd-upload strong{color:var(--green)}.vudd-upload span{margin-top:3px;color:var(--muted);font-size:12px}
.vudd-status{margin-top:12px;padding:12px 14px;background:var(--cream);border-left:3px solid var(--gold);color:var(--green)}
.vudd-preview{display:block;max-width:100%;margin-top:12px}
.vudd-form-card{padding:24px;background:#fff;border:1px solid var(--line)}
.vudd-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}
.vudd-form-grid label{display:block;padding:11px;border:1px solid var(--line)}
.vudd-form-grid span{display:block;margin-bottom:5px;color:var(--muted);font-size:11px}
.vudd-form-grid input{width:100%;border:0;outline:0;font-family:inherit;color:var(--text)}
.vudd-save{width:100%}
.vudd-raw-details{margin-top:15px}.vudd-raw-details summary{color:var(--green);font-size:13px;cursor:pointer}
.vudd-raw{width:100%;min-height:90px;margin-top:9px;padding:10px;border:1px solid var(--line);font-family:monospace}
.vudd-table-wrap{overflow:auto;background:#fff;border:1px solid var(--line)}
.vudd-table{width:100%;border-collapse:collapse}
.vudd-table th,.vudd-table td{padding:14px;text-align:left;border-bottom:1px solid var(--line);font-size:13px}
.vudd-table th{color:var(--muted);font-weight:600;background:#fafbfa}
.vudd-row-delete{border:0;background:transparent;color:#9f4c4c;cursor:pointer}
.vudd-help-card{padding:30px;background:#fff;border:1px solid var(--line)}
.vudd-help-card li,.vudd-help-card p{color:var(--muted);line-height:1.7}
.vudd-login-page{
  min-height:700px;display:flex;align-items:center;justify-content:center;padding:30px;
  background:linear-gradient(135deg,#123f3b,#1d554e)
}
.vudd-login-card{
  width:min(440px,100%);padding:42px;background:#fff;text-align:center;font-family:inherit
}
.vudd-login-brand{
  width:62px;height:62px;margin:0 auto 25px;display:flex;align-items:center;justify-content:center;
  background:#123f3b;color:#b79a61;font-weight:900;letter-spacing:.1em
}
.vudd-login-card h1{margin:0;color:#123f3b;font-size:32px;font-weight:500}
.vudd-login-card p{color:#78827f;line-height:1.7}
.vudd-login-button{
  display:block;margin-top:22px;padding:14px;background:#123f3b;color:#fff;text-decoration:none;font-weight:700
}
.vudd-login-card small{display:block;margin-top:16px;color:#929a98}
@media(max-width:900px){
  .vudd-app{grid-template-columns:1fr}
  .vudd-sidebar{position:fixed;z-index:20;left:-260px;top:0;width:250px;height:100vh;transition:.2s}
  .vudd-sidebar.open{left:0}
  .vudd-main{padding:22px}
  .vudd-mobile-menu{display:block;border:0;background:transparent;font-size:22px}
  .vudd-scan-layout{grid-template-columns:1fr}
}
@media(max-width:620px){
  .vudd-main{padding:16px}
  .vudd-top-user{display:none}
  .vudd-hero{grid-template-columns:1fr;padding:24px}
  .vudd-hero-art{display:none}
  .vudd-hero h1{font-size:30px}
  .vudd-stat-grid{grid-template-columns:1fr}
  .vudd-form-grid{grid-template-columns:1fr}
  .vudd-scan-actions{grid-template-columns:1fr}
}
