.nop-fo-shell{--p:#0f766e;--bg:#f4f7f6;display:grid;grid-template-columns:250px minmax(0,1fr);min-height:78vh;background:var(--bg);border:1px solid #dfe9e6;border-radius:24px;overflow:hidden;color:#17332f;font-family:inherit}.nop-fo-sidebar{background:linear-gradient(180deg,#123d37,#0a2925);color:#fff;padding:24px 16px;display:flex;flex-direction:column}.nop-fo-brand{display:flex;gap:12px;align-items:center;padding:10px 8px 24px}.nop-fo-brand .dashicons{font-size:34px;width:34px;height:34px}.nop-fo-brand strong,.nop-fo-brand small{display:block}.nop-fo-brand small{opacity:.7;margin-top:4px}.nop-fo-sidebar nav{display:grid;gap:7px}.nop-fo-sidebar nav a,.nop-fo-logout{display:flex;gap:10px;align-items:center;color:#fff;text-decoration:none;padding:12px 14px;border-radius:12px;transition:.2s}.nop-fo-sidebar nav a:hover,.nop-fo-sidebar nav a.active{background:rgba(255,255,255,.13)}.nop-fo-logout{margin-top:auto;border:1px solid rgba(255,255,255,.18)}.nop-fo-main{min-width:0;padding:26px}.nop-fo-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:20px}.nop-fo-topbar h1{margin:0 0 4px;font-size:28px}.nop-fo-topbar p{margin:0;color:#68827c}.nop-fo-user{display:flex;align-items:center;gap:9px}.nop-fo-user img,.nop-fo-person img{border-radius:50%}.nop-fo-menu{display:none}.nop-fo-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.nop-fo-stats article{background:#fff;border:1px solid #deebe7;border-radius:17px;padding:18px;display:flex;align-items:center;gap:15px;box-shadow:0 8px 22px rgba(17,56,49,.05)}.nop-fo-stats .dashicons{font-size:30px;width:34px;height:34px;color:var(--p)}.nop-fo-stats small,.nop-fo-stats strong{display:block}.nop-fo-stats strong{font-size:26px;margin-top:5px}.nop-fo-grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.nop-fo-panel{background:#fff;border:1px solid #deebe7;border-radius:18px;padding:18px}.nop-fo-panel-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #edf2f0;padding-bottom:12px}.nop-fo-panel-head h2{font-size:18px;margin:0}.nop-fo-list>div{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:13px 0;border-bottom:1px solid #edf2f0;align-items:center}.nop-fo-list>div:last-child{border:0}.nop-fo-list small{color:#82958f}.nop-fo-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.nop-fo-tabs a{background:#fff;border:1px solid #d9e6e2;color:#29463f;padding:9px 13px;border-radius:11px;text-decoration:none}.nop-fo-tabs a.active{background:var(--p);color:#fff}.nop-fo-tabs b{background:rgba(0,0,0,.07);border-radius:50%;padding:2px 7px}.nop-fo-filters{display:flex;gap:8px;margin-bottom:14px}.nop-fo-filters input{flex:1;min-width:0;border:1px solid #d4e2de;border-radius:11px;padding:11px}.nop-fo-filters button,.nop-fo-create button,.nop-fo-member button{background:var(--p);color:#fff;border:0;border-radius:10px;padding:10px 18px}.nop-fo-table-wrap{overflow:auto;background:#fff;border:1px solid #dfe9e6;border-radius:16px}.nop-fo-table{width:100%;border-collapse:collapse;min-width:900px}.nop-fo-table th,.nop-fo-table td{padding:13px;border-bottom:1px solid #edf2f0;text-align:right;vertical-align:middle}.nop-fo-person{display:flex;gap:10px;align-items:center}.nop-fo-person small{display:block;color:#899b96}.nop-fo-status{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:12px;background:#eef3f2}.s-new{background:#e8f1ff;color:#2563a9}.s-review{background:#fff2d8;color:#9a6700}.s-missing{background:#fff0e9;color:#b45309}.s-interview{background:#efe9ff;color:#6d4bc3}.s-accepted{background:#e4f8e9;color:#18753b}.s-rejected{background:#ffe8e8;color:#b42318}.s-deferred{background:#edf0f4;color:#596579}.nop-fo-actions{position:relative;display:flex;gap:7px;align-items:center}.nop-fo-actions>a,.nop-fo-actions>button{border:1px solid #cfe0db;background:#fff;color:#17473e;border-radius:9px;padding:7px 9px;text-decoration:none;white-space:nowrap}.nop-fo-actions>a.primary{background:var(--p);color:#fff}.nop-fo-menu-pop{display:none;position:fixed;z-index:999999;background:#fff;border:1px solid #d8e5e1;box-shadow:0 18px 45px rgba(0,0,0,.18);border-radius:12px;padding:7px;min-width:160px}.nop-fo-menu-pop.open{display:grid}.nop-fo-menu-pop a{padding:8px 10px;text-decoration:none;color:#24453e;border-radius:7px}.nop-fo-menu-pop a:hover{background:#eff6f4}.nop-fo-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.nop-fo-member,.nop-fo-team-card{background:#fff;border:1px solid #dfe9e6;border-radius:18px;padding:20px;text-align:center}.nop-fo-member img{border-radius:50%}.nop-fo-member h3{margin:10px 0 4px}.nop-fo-member p{margin:0;color:#667c77}.nop-fo-member>span{display:inline-block;margin:10px 0;background:#edf5f3;padding:5px 10px;border-radius:99px}.nop-fo-member form{display:grid;gap:7px}.nop-fo-member select{width:100%;padding:8px;border:1px solid #d7e5e1;border-radius:9px}.nop-fo-team-card{border-top:4px solid var(--team)}.nop-fo-team-card .dashicons{color:var(--team);font-size:35px;width:35px;height:35px}.nop-fo-team-card>div{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:8px;align-items:end;margin-top:15px}.nop-fo-team-card strong{font-size:22px;color:var(--team)}.nop-fo-team-card small{color:#7b908a}.nop-fo-create{background:#fff;border:1px solid #dfe9e6;border-radius:15px;margin-bottom:15px;padding:14px}.nop-fo-create summary{font-weight:700;cursor:pointer}.nop-fo-create form{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:15px}.nop-fo-create label{display:grid;gap:6px}.nop-fo-create label.wide{grid-column:1/-1}.nop-fo-create input,.nop-fo-create select,.nop-fo-create textarea{border:1px solid #d6e3df;border-radius:9px;padding:9px}.nop-fo-kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:start}.nop-fo-kanban section{background:#eaf1ef;border-radius:15px;padding:12px;min-height:180px}.nop-fo-kanban section h3{font-size:15px;margin:2px 4px 11px}.nop-fo-kanban article{background:#fff;border-radius:12px;padding:13px;margin-bottom:9px;box-shadow:0 5px 14px rgba(0,0,0,.05)}.nop-fo-kanban article p{font-size:13px;color:#647a75}.nop-fo-kanban article small{display:block}.nop-fo-progress{height:6px;background:#e8efed;border-radius:9px;margin-top:10px;overflow:hidden}.nop-fo-progress i{display:block;height:100%;background:var(--p)}.nop-fo-kanban em{font-size:11px;font-style:normal}.nop-fo-toast{background:#e5f8eb;color:#176b37;border:1px solid #bde7ca;padding:12px;border-radius:12px;margin-bottom:15px}.nop-fo-empty{text-align:center;padding:30px;color:#748983}.nop-fo-profile{text-align:center;max-width:520px;margin:auto}.nop-fo-profile img{border-radius:50%}.nop-fo-login{display:block;padding:40px}.nop-fo-login-card{max-width:480px;margin:auto;background:#fff;border-radius:20px;padding:28px;box-shadow:0 16px 40px rgba(0,0,0,.08)}.nop-fo-login-card input{width:100%;padding:10px;border:1px solid #d5e3df;border-radius:9px}.nop-fo-login-card .button{background:var(--p);color:#fff;border:0;padding:10px 20px;border-radius:10px}.nop-fo-login-card label{display:block;margin-bottom:5px}
@media(max-width:980px){.nop-fo-shell{grid-template-columns:1fr}.nop-fo-sidebar{position:fixed;right:-270px;top:0;bottom:0;width:240px;z-index:999999;transition:.25s}.nop-fo-shell.menu-open .nop-fo-sidebar{right:0}.nop-fo-menu{display:block;border:0;background:#fff;border-radius:10px;padding:8px 11px}.nop-fo-main{padding:18px}.nop-fo-stats{grid-template-columns:repeat(2,1fr)}.nop-fo-cards{grid-template-columns:repeat(2,1fr)}.nop-fo-grid2{grid-template-columns:1fr}.nop-fo-kanban{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.nop-fo-main{padding:10px}.nop-fo-topbar{align-items:flex-start}.nop-fo-topbar h1{font-size:21px}.nop-fo-topbar p,.nop-fo-user span{display:none}.nop-fo-stats{grid-template-columns:1fr 1fr;gap:8px}.nop-fo-stats article{padding:12px;gap:8px}.nop-fo-stats strong{font-size:20px}.nop-fo-cards,.nop-fo-kanban{grid-template-columns:1fr}.nop-fo-create form{grid-template-columns:1fr}.nop-fo-tabs{flex-wrap:nowrap;overflow:auto;padding-bottom:4px}.nop-fo-tabs a{white-space:nowrap}.nop-fo-filters{display:grid}.nop-fo-login{padding:8px}.nop-fo-login-card{padding:18px}}

/* v1.3.1 — Frontend login and navigation contrast polish */
.nop-fo-sidebar nav a,
.nop-fo-sidebar nav a:visited,
.nop-fo-logout,
.nop-fo-logout:visited{
    color:#fff !important;
}
.nop-fo-sidebar nav a:hover,
.nop-fo-sidebar nav a:focus-visible{
    background:rgba(255,255,255,.16);
    color:#fff !important;
    outline:none;
}
.nop-fo-sidebar nav a.active,
.nop-fo-sidebar nav a.active:hover{
    background:#25665d;
    color:#fff !important;
    box-shadow:inset 3px 0 0 rgba(255,255,255,.72);
}
.nop-fo-logout{
    justify-content:center;
    font-weight:700;
    background:rgba(255,255,255,.06);
    border-color:rgba(255,255,255,.42);
}
.nop-fo-logout:hover,
.nop-fo-logout:focus-visible{
    background:#fff;
    color:#123d37 !important;
    border-color:#fff;
    outline:none;
}
.nop-fo-login{
    background:linear-gradient(135deg,#edf6f3 0%,#f8fbfa 52%,#e5f1ee 100%);
    min-height:620px;
    align-content:center;
}
.nop-fo-login-card{
    width:min(100%,520px);
    box-sizing:border-box;
    border:1px solid #dce9e5;
    text-align:right;
}
.nop-fo-login-icon{
    width:58px;
    height:58px;
    margin:0 auto 14px;
    display:grid;
    place-items:center;
    border-radius:18px;
    background:#e4f3ef;
    color:var(--p);
}
.nop-fo-login-icon .dashicons{
    width:29px;
    height:29px;
    font-size:29px;
}
.nop-fo-login-card h2{
    text-align:center;
    margin:0 0 8px;
}
.nop-fo-login-intro{
    text-align:center;
    color:#637a75;
    margin:0 0 24px;
}
.nop-fo-login-card form p{
    margin:0 0 16px;
}
.nop-fo-login-card input[type="text"],
.nop-fo-login-card input[type="email"],
.nop-fo-login-card input[type="password"]{
    width:100%;
    box-sizing:border-box;
    min-height:48px;
    padding:10px 13px;
    border:1px solid #cdded9;
    border-radius:11px;
    background:#fff;
}
.nop-fo-login-card input[type="text"]:focus,
.nop-fo-login-card input[type="email"]:focus,
.nop-fo-login-card input[type="password"]:focus{
    border-color:var(--p);
    box-shadow:0 0 0 3px rgba(15,118,110,.12);
    outline:none;
}
.nop-fo-login-card .login-remember{
    margin-top:2px;
}
.nop-fo-login-card .login-remember label{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin:0;
    cursor:pointer;
    line-height:1.4;
}
.nop-fo-login-card .login-remember input[type="checkbox"]{
    appearance:auto;
    -webkit-appearance:checkbox;
    width:17px !important;
    height:17px;
    min-width:17px;
    margin:0;
    padding:0;
    accent-color:var(--p);
}
.nop-fo-login-card .login-submit{
    margin-top:18px;
}
.nop-fo-login-card .button,
.nop-fo-login-card input[type="submit"]{
    width:100%;
    min-height:48px;
    background:var(--p);
    color:#fff !important;
    border:1px solid var(--p);
    padding:10px 20px;
    border-radius:11px;
    font-weight:700;
    cursor:pointer;
    transition:background .2s,border-color .2s,transform .2s;
}
.nop-fo-login-card .button:hover,
.nop-fo-login-card .button:focus-visible,
.nop-fo-login-card input[type="submit"]:hover,
.nop-fo-login-card input[type="submit"]:focus-visible{
    background:#0b5f58;
    border-color:#0b5f58;
    color:#fff !important;
    transform:translateY(-1px);
    outline:none;
}
.nop-fo-login-help{
    text-align:center;
    margin-top:15px;
    padding-top:15px;
    border-top:1px solid #e7efed;
}
.nop-fo-login-help a,
.nop-fo-login-help a:visited{
    color:#0f766e;
    font-weight:700;
    text-decoration:none;
}
.nop-fo-login-help a:hover,
.nop-fo-login-help a:focus-visible{
    color:#094f4a;
    text-decoration:underline;
}
@media(max-width:600px){
    .nop-fo-login{min-height:520px;padding:6px}
    .nop-fo-login-card{padding:20px 15px;border-radius:16px}
    .nop-fo-login-card h2{font-size:21px}
    .nop-fo-login-intro{font-size:14px;margin-bottom:20px}
}

/* v1.3.2 — Compact login form and true full-width mobile layouts */
.nop-fo-login-card form p{margin:0 0 11px}
.nop-fo-login-card .screen-reader-text{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}
.nop-fo-login-card input::placeholder{color:#71837f;opacity:1}
.nop-fo-login-options{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:2px 0 13px;
    min-height:28px;
}
.nop-fo-login-card .login-remember{margin:0!important;flex:0 0 auto}
.nop-fo-login-card .login-remember label{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin:0;
    white-space:nowrap;
}
.nop-fo-login-card .login-remember input[type="checkbox"]{
    width:17px!important;
    min-width:17px!important;
    height:17px!important;
    margin:0!important;
}
.nop-fo-lost-link,
.nop-fo-lost-link:visited{
    color:#0f766e;
    font-weight:700;
    text-decoration:none;
    white-space:nowrap;
}
.nop-fo-lost-link:hover,
.nop-fo-lost-link:focus-visible{color:#094f4a;text-decoration:underline;outline:none}
.nop-fo-login-card .login-submit{margin:0!important}
.nop-fo-login-card{padding-top:23px;padding-bottom:23px}
.nop-fo-login-intro{margin-bottom:18px}

@media(max-width:600px){
    .nop-fo-shell{
        width:100%!important;
        max-width:100%!important;
        margin-left:0!important;
        margin-right:0!important;
        border-radius:0;
        border-left:0;
        border-right:0;
    }
    .nop-fo-main{width:100%;max-width:100%;box-sizing:border-box;padding:7px}
    .nop-fo-panel,.nop-fo-table-wrap,.nop-fo-create,.nop-fo-profile{width:100%;max-width:100%;box-sizing:border-box}
    .nop-fo-login{width:100%!important;max-width:100%!important;padding:4px!important;min-height:500px}
    .nop-fo-login-card{width:100%;max-width:100%;padding:18px 12px;border-radius:14px}
    .nop-fo-login-card h2{font-size:20px}
    .nop-fo-login-intro{font-size:13px;line-height:1.65;margin-bottom:15px}
    .nop-fo-login-icon{width:48px;height:48px;margin-bottom:10px}
    .nop-fo-login-card input[type="text"],
    .nop-fo-login-card input[type="email"],
    .nop-fo-login-card input[type="password"]{min-height:45px;padding:9px 12px}
    .nop-fo-login-options{gap:8px;margin-bottom:11px;font-size:13px}
    .nop-fo-lost-link{font-size:13px}
    .nop-fo-login-card .button,.nop-fo-login-card input[type="submit"]{min-height:45px}
}
