:root{
--nav:#071d33;--nav2:#092743;--blue:#1494ee;--text:#0c1d35;--muted:#718096;
--line:#dfe7ef;--bg:#f6f9fc;--white:#fff;--green:#11a667;--danger:#d94848;
}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:var(--bg)}
a{text-decoration:none;color:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{width:280px;background:linear-gradient(180deg,var(--nav),#021426);color:#fff;position:fixed;inset:0 auto 0 0;padding:25px 14px;display:flex;flex-direction:column}
.brand{padding:0 14px 28px}.brand-small{font-size:11px;letter-spacing:5px}.brand-main{font-size:38px;font-weight:900;line-height:1}.brand-area{color:#22a5ff;font-weight:800;margin-top:7px}
nav a,.sidebar-bottom a{display:flex;gap:18px;align-items:center;padding:16px 15px;border-radius:7px;margin:4px 0;font-weight:650}
nav a:hover,nav a.active{background:#143a60;border-right:5px solid var(--blue)}.sidebar-bottom{margin-top:auto;border-top:1px solid #29435b;padding-top:14px}
.main{margin-left:280px;width:calc(100% - 280px)}.topbar{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px}
.topbar-user{display:flex;align-items:center;gap:14px}.topbar-user div{display:flex;flex-direction:column}.topbar-user small{color:var(--muted)}.avatar{width:44px;height:44px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:800}
.content{padding:30px 36px;max-width:1400px;margin:auto}h1{font-size:34px;margin:0 0 8px}h2{margin-top:0}.lead{color:var(--muted);font-size:18px;margin-top:0}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:24px 0}.stat-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:25px;box-shadow:0 4px 12px #19324d0c;display:flex;gap:20px;align-items:center}.stat-card div:not(.stat-icon){display:flex;flex-direction:column}.stat-card strong{font-size:40px}.stat-card small{color:var(--muted)}.stat-icon,.round-icon{width:76px;height:76px;border-radius:50%;background:#eaf5fd;color:var(--blue);display:grid;place-items:center;font-size:32px}
.dashboard-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;box-shadow:0 4px 12px #19324d0a;margin-bottom:24px}.opportunity-highlight{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center;border-top:1px solid var(--line);padding-top:20px}.map-placeholder{height:205px;border-radius:10px;background:linear-gradient(45deg,#eef2ed 25%,#f8fafb 25%,#f8fafb 50%,#eef2ed 50%,#eef2ed 75%,#f8fafb 75%);background-size:44px 44px;display:grid;place-items:center;font-size:52px;color:var(--blue)}.map-placeholder small{font-size:14px;color:var(--text)}
.btn{display:inline-flex;border:0;border-radius:6px;padding:12px 18px;background:#edf3f7;color:var(--text);font-weight:750;cursor:pointer;justify-content:center}.btn-primary{background:linear-gradient(90deg,#0889df,#20a4f7);color:#fff}.btn-full{width:100%}.badge{display:inline-block;background:#e7f3fd;color:#087ec6;padding:6px 10px;border-radius:6px;font-weight:800;font-size:13px}
.quick-link{display:grid;grid-template-columns:58px 1fr auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:9px;margin:12px 0}.quick-link>span{width:52px;height:52px;border-radius:8px;background:#eff7fd;color:var(--blue);display:grid;place-items:center;font-size:26px}.quick-link div{display:flex;flex-direction:column}.quick-link small{color:var(--muted)}.activity{padding:16px 0;border-top:1px solid var(--line);display:flex;align-items:center;gap:14px}.activity small{margin-left:auto;color:var(--muted)}.green-dot{width:10px;height:10px;background:var(--green);border-radius:50%}
.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.search-form{display:flex;gap:10px;margin:22px 0}.search-form input{flex:1}.cards-list{display:grid;gap:18px}.opportunity-card{display:grid;grid-template-columns:1fr 320px;gap:30px}.meta{color:var(--muted);margin-top:18px}
label{display:flex;flex-direction:column;gap:8px;font-weight:700;margin-bottom:15px}input,textarea,select{width:100%;padding:12px;border:1px solid #cfd9e3;border-radius:7px;font:inherit;background:#fff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line)}.table-wrap{overflow-x:auto}.status{display:inline-block;background:#edf4f8;border-radius:20px;padding:7px 12px;font-size:13px;font-weight:800}.status.success{background:#e6f7ef;color:#087c4f}.document-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.document-row div{display:flex;flex-direction:column}.document-row small{color:var(--muted)}
.alert{padding:14px 16px;border-radius:8px;margin-bottom:18px}.alert-success{background:#dff5e9;color:#11663f}.alert-error{background:#fde8e8;color:#8c2020}.fade{opacity:.25;transition:.6s}
.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top right,#e6f5ff,#eff4f8 48%,#dce8f1)}.login-card{width:min(430px,92vw);background:#fff;padding:36px;border-radius:16px;box-shadow:0 20px 60px #10283f25}.login-brand{letter-spacing:2px;color:#31516b;margin-bottom:24px}.login-brand strong{font-size:28px;color:var(--nav)}.demo-box{margin-top:22px;padding:14px;background:#f4f8fb;border-radius:8px;font-size:13px;line-height:1.7}.admin-wrap{max-width:1100px;margin:40px auto;padding:20px}
@media(max-width:950px){.sidebar{width:78px}.sidebar .brand-area,.sidebar .brand-small,.sidebar nav span,.sidebar-bottom span{display:none}.brand-main{font-size:16px}.main{margin-left:78px;width:calc(100% - 78px)}.stats-grid,.dashboard-grid{grid-template-columns:1fr}.opportunity-card{grid-template-columns:1fr}.content{padding:24px 18px}}
@media(max-width:600px){.topbar{padding:0 14px}.topbar-title{display:none}.topbar-user div{display:none}.form-grid,.opportunity-highlight{grid-template-columns:1fr}.stats-grid{gap:12px}.stat-card{padding:18px}.content{padding:18px 12px}h1{font-size:28px}}

.logout-form{margin:0}.logout-form button{width:100%;border:0;background:transparent;color:#fff;display:flex;gap:18px;align-items:center;padding:16px 15px;border-radius:7px;font:inherit;font-weight:650;cursor:pointer}.logout-form button:hover{background:#143a60}

.admin-layout{display:flex;min-height:100vh}.admin-sidebar{width:260px;background:linear-gradient(180deg,#071d33,#021426);color:#fff;position:fixed;inset:0 auto 0 0;padding:25px 14px}.admin-main{margin-left:260px;width:calc(100% - 260px)}.admin-sidebar nav a{display:flex;gap:14px;align-items:center;padding:14px;border-radius:7px;margin:4px 0;font-weight:700}.admin-sidebar nav a:hover,.admin-sidebar nav a.active{background:#143a60;border-right:5px solid #1494ee}.inline-form{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.btn-danger{background:#c63b3b;color:#fff}.btn-success{background:#14885a;color:#fff}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}@media(max-width:850px){.admin-sidebar{width:76px}.admin-sidebar .brand-small,.admin-sidebar .brand-area,.admin-sidebar nav span{display:none}.admin-sidebar .brand-main{font-size:16px}.admin-main{margin-left:76px;width:calc(100% - 76px)}}


/* v3.8.3 — Footer area autenticata */
.app-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    width:calc(100% - 72px);
    max-width:1328px;
    margin:12px auto 0;
    padding:22px 0 28px;
    border-top:1px solid var(--line);
    color:var(--muted);
    font-size:13px;
    line-height:1.45
}

.app-footer-main{
    display:grid;
    gap:4px
}

.app-footer-main strong{
    color:var(--text);
    font-size:14px
}

.app-footer-meta{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    white-space:nowrap
}

@media(max-width:950px){
    .app-footer{
        width:calc(100% - 36px)
    }
}

@media(max-width:600px){
    .app-footer{
        flex-direction:column;
        align-items:flex-start;
        gap:12px;
        width:calc(100% - 24px);
        padding:18px 0 24px
    }

    .app-footer-meta{
        justify-content:flex-start;
        white-space:normal
    }
}
