:root{
    --green:#064B37;
    --green-dark:#043B2D;
    --green-soft:#0F5A45;
    --gold:#D4AF37;
    --bg:#F6F8FA;
    --card:#FFFFFF;
    --text:#0F172A;
    --muted:#64748B;
    --border:#E5E7EB;
    --danger:#B91C1C;
    --success:#047857;
    --shadow:0 22px 60px rgba(15,23,42,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:
        radial-gradient(circle at 10% 0%, rgba(212,175,55,.10), transparent 28%),
        linear-gradient(180deg,#F8FAFC 0%,#F4F8F6 100%);
    color:var(--text);
    font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}

.nour-topbar{
    position:sticky;
    top:0;
    z-index:50;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    height:84px;
    padding:14px clamp(16px,4vw,34px);
    background:rgba(255,255,255,.92);
    border-bottom:1px solid var(--border);
    backdrop-filter:blur(14px);
}
.nour-brand{
    display:flex;
    align-items:center;
    gap:12px;
}
.nour-brand img{
    width:48px;
    height:48px;
    border-radius:15px;
    object-fit:contain;
    background:#fff;
}
.nour-brand strong{
    display:block;
    font-size:24px;
    line-height:1;
    letter-spacing:-.04em;
    color:var(--green-dark);
}
.nour-brand small{
    display:block;
    margin-top:4px;
    color:var(--muted);
    font-weight:800;
    font-size:14px;
}
.nour-menu-btn{
    width:56px;
    height:56px;
    border:0;
    border-radius:18px;
    background:var(--green);
    color:#fff;
    font-size:28px;
    font-weight:900;
    cursor:pointer;
}

.nour-shell{
    max-width:1440px;
    margin:0 auto;
    display:grid;
    grid-template-columns:300px minmax(0,1fr);
    gap:28px;
    padding:24px;
}
.nour-sidebar{
    position:sticky;
    top:108px;
    height:calc(100vh - 132px);
    border-radius:34px;
    padding:22px;
    background:
        radial-gradient(circle at 90% 0%, rgba(212,175,55,.18), transparent 30%),
        linear-gradient(145deg,var(--green) 0%,var(--green-dark) 100%);
    box-shadow:0 28px 70px rgba(6,75,55,.25);
    color:#fff;
}
.nour-side-brand{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:24px;
}
.nour-side-brand img{
    width:64px;
    height:64px;
    border-radius:20px;
    background:#fff;
}
.nour-side-brand strong{
    display:block;
    font-size:28px;
    letter-spacing:-.05em;
}
.nour-side-brand span{
    color:rgba(255,255,255,.72);
    font-weight:800;
}
.nour-side-nav{
    display:grid;
    gap:10px;
}
.nour-side-nav a,
.nour-side-nav button,
.nour-mobile-nav a,
.nour-mobile-nav button{
    width:100%;
    border:0;
    display:flex;
    align-items:center;
    gap:12px;
    min-height:56px;
    padding:13px 14px;
    border-radius:18px;
    cursor:pointer;
    text-align:left;
    font-weight:900;
}
.nour-side-nav a,
.nour-side-nav button{
    color:#fff;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.10);
}
.nour-side-nav a.active,
.nour-side-nav button.active{
    color:var(--green-dark);
    background:#DCFCE7;
    border-color:rgba(212,175,55,.55);
}
.nour-side-nav span,
.nour-mobile-nav span{
    width:28px;
    text-align:center;
    font-size:22px;
}
.nour-side-nav form,
.nour-mobile-nav form{margin:0}

.nour-main{
    min-width:0;
    padding-bottom:70px;
}
.nour-page-title{
    margin:6px 0 24px;
}
.nour-page-title p,
.eyebrow,
.nour-eyebrow{
    margin:0 0 8px;
    color:var(--green);
    letter-spacing:.18em;
    font-size:13px;
    font-weight:950;
    text-transform:uppercase;
}
.nour-page-title h1,
.page-head h1,
.nour-page-header h1,
.nour-hero h1,
.content-head h1{
    margin:0;
    font-size:clamp(34px,5vw,58px);
    line-height:.98;
    letter-spacing:-.065em;
    color:var(--text);
}
.nour-page-title span{
    display:block;
    margin-top:10px;
    color:var(--muted);
    font-weight:700;
}
.page-head,
.content-head,
.nour-hero,
.nour-page-header{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    margin-bottom:22px;
}
.nour-page-header,
.content-head{
    display:block;
}
.page-head p,
.nour-page-header p,
.nour-hero p,
.subtitle,
.muted{
    color:var(--muted);
    font-size:18px;
    line-height:1.55;
}
.nour-hero{
    background:#fff;
    border:1px solid var(--border);
    border-radius:28px;
    box-shadow:var(--shadow);
    padding:24px;
}
.nour-actions,
.actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
}

.card,
.nour-card{
    background:rgba(255,255,255,.96);
    border:1px solid var(--border);
    border-radius:28px;
    padding:24px;
    box-shadow:var(--shadow);
    margin-bottom:20px;
}
.card h2,
.nour-card h2{
    margin:0 0 14px;
    font-size:28px;
    letter-spacing:-.04em;
}
.mt{margin-top:20px}
.grid-2{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}
.scope-row{
    display:grid;
    gap:12px;
}
.scope-item{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    border-bottom:1px solid var(--border);
    padding:10px 0;
}
.scope-label{
    color:var(--muted);
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:12px;
}
.scope-value{
    font-weight:900;
    text-align:right;
}

.btn-primary,
.btn-secondary,
.btn-danger,
.nour-btn,
.nour-btn-secondary,
button[type="submit"]{
    min-height:54px;
    border-radius:17px;
    padding:14px 20px;
    border:1px solid transparent;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:950;
    cursor:pointer;
}
.btn-primary,
.nour-btn,
button[type="submit"]{
    background:var(--green);
    color:#fff;
    box-shadow:0 16px 36px rgba(6,75,55,.20);
}
.btn-secondary,
.nour-btn-secondary{
    background:#fff;
    color:var(--green);
    border-color:var(--border);
}
.btn-danger{
    background:#FEE2E2;
    color:var(--danger);
}

.form-grid,
.nour-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
.field-full,
.full{
    grid-column:1 / -1;
}
label{
    display:block;
    margin-bottom:8px;
    color:#1E293B;
    font-weight:900;
}
input,
select,
textarea{
    width:100%;
    min-height:56px;
    border:1px solid var(--border);
    border-radius:18px;
    padding:13px 16px;
    background:#fff;
    color:var(--text);
    outline:none;
}
textarea{
    min-height:120px;
    resize:vertical;
}
input:focus,
select:focus,
textarea:focus{
    border-color:var(--green);
    box-shadow:0 0 0 4px rgba(6,75,55,.10);
}
.nour-form-card{
    background:#fff;
    border:1px solid var(--border);
    border-radius:28px;
    box-shadow:var(--shadow);
    padding:24px;
    margin-bottom:22px;
}
.nour-form-help{
    display:block;
    margin-top:7px;
    color:var(--muted);
    font-size:13px;
    line-height:1.45;
}
.nour-form-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:22px;
}
.nour-check{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 15px;
    border:1px solid var(--border);
    border-radius:18px;
    background:#F8FAFC;
}
.nour-check input{
    width:20px!important;
    height:20px!important;
    min-height:auto!important;
}
.nour-check label{
    margin:0;
}
.nour-note,
.nour-alert{
    border-radius:20px;
    padding:14px 16px;
    margin-bottom:18px;
    font-weight:800;
}
.nour-alert.success,
.nour-note{
    background:#ECFDF5;
    color:#065F46;
    border:1px solid #BBF7D0;
}
.nour-alert.error{
    background:#FEF2F2;
    color:#991B1B;
    border:1px solid #FECACA;
}

.badge,
.nour-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    border-radius:999px;
    padding:6px 11px;
    font-weight:900;
    font-size:13px;
    background:#ECFDF5;
    color:#065F46;
}
.badge-off,
.nour-badge.off{
    background:#F1F5F9;
    color:#64748B;
}
.badge-on{
    background:#ECFDF5;
    color:#065F46;
}

.table-wrap{
    width:100%;
    overflow:auto;
    border-radius:22px;
    border:1px solid var(--border);
}
.table{
    width:100%;
    border-collapse:collapse;
    min-width:760px;
}
.table th,
.table td{
    padding:16px;
    border-bottom:1px solid var(--border);
    text-align:left;
    vertical-align:top;
}
.table th{
    color:var(--muted);
    font-size:12px;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.table tr:last-child td{
    border-bottom:0;
}

.nour-inline-form,
.nour-filter-grid{
    width:100%;
}
.nour-filter-grid{
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr auto auto;
    gap:14px;
    align-items:end;
}
.nour-links-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}
.nour-link-card{
    background:#fff;
    border:1px solid var(--border);
    border-radius:28px;
    padding:22px;
    box-shadow:var(--shadow);
}
.nour-link-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    margin-bottom:14px;
}
.nour-link-title{
    font-size:22px;
    line-height:1.1;
    font-weight:950;
    letter-spacing:-.04em;
}
.nour-link-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:10px;
}
.nour-link-card p{
    color:var(--muted);
    line-height:1.55;
}
.nour-link-url{
    display:block;
    padding:13px 14px;
    border-radius:16px;
    background:#F8FAFC;
    color:var(--green);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    margin:14px 0;
    font-weight:800;
}
.nour-empty{
    text-align:center;
}

.nour-mobile-panel{
    position:fixed;
    inset:0;
    z-index:80;
    display:none;
    background:rgba(15,23,42,.45);
    backdrop-filter:blur(7px);
}
.nour-menu-open .nour-mobile-panel{
    display:block;
}
.nour-mobile-sheet{
    width:min(420px, calc(100% - 28px));
    margin:14px auto;
    border-radius:30px;
    background:
        radial-gradient(circle at 90% 0%, rgba(212,175,55,.16), transparent 30%),
        linear-gradient(145deg,var(--green) 0%,var(--green-dark) 100%);
    color:#fff;
    padding:18px;
    box-shadow:0 30px 90px rgba(0,0,0,.25);
}
.nour-mobile-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:14px;
}
.nour-mobile-head .nour-brand strong,
.nour-mobile-head .nour-brand small{
    color:#fff;
}
.nour-mobile-head button{
    width:44px;
    height:44px;
    border:0;
    border-radius:15px;
    background:rgba(255,255,255,.12);
    color:#fff;
    font-size:28px;
}
.nour-mobile-nav{
    display:grid;
    gap:10px;
}
.nour-mobile-nav a,
.nour-mobile-nav button{
    background:rgba(255,255,255,.09);
    color:#fff;
    border:1px solid rgba(255,255,255,.12);
}
.nour-mobile-nav a.active{
    background:#DCFCE7;
    color:var(--green-dark);
}

.nour-bottom-nav{
    display:none;
}

@media (max-width: 1100px){
    .nour-shell{
        display:block;
        padding:18px 16px 104px;
    }
    .nour-sidebar{
        display:none!important;
    }
    .nour-main{
        padding-bottom:0;
    }
    .page-head,
    .content-head,
    .nour-hero{
        display:block;
    }
    .grid-2,
    .nour-links-grid{
        grid-template-columns:1fr;
    }
    .nour-bottom-nav{
        position:fixed;
        left:14px;
        right:14px;
        bottom:14px;
        z-index:70;
        display:grid;
        grid-template-columns:repeat(5,1fr);
        gap:6px;
        min-height:74px;
        padding:8px;
        border:1px solid rgba(226,232,240,.9);
        border-radius:28px;
        background:rgba(255,255,255,.94);
        box-shadow:0 20px 50px rgba(15,23,42,.16);
        backdrop-filter:blur(14px);
    }
    .nour-bottom-nav a{
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:3px;
        color:var(--muted);
        border-radius:20px;
        font-weight:900;
        min-width:0;
        padding:7px 4px;
    }
    .nour-bottom-nav a.active{
        background:var(--green);
        color:#fff;
    }
    .nour-bottom-nav span{
        font-size:22px;
        line-height:1;
    }
    .nour-bottom-nav small{
        font-size:11px;
        font-weight:950;
        max-width:100%;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
}

@media (max-width: 760px){
    .nour-topbar{
        height:76px;
        padding:12px 16px;
    }
    .nour-brand img{
        width:42px;
        height:42px;
        border-radius:13px;
    }
    .nour-brand strong{
        font-size:21px;
    }
    .nour-brand small{
        font-size:12px;
    }
    .nour-menu-btn{
        width:52px;
        height:52px;
        border-radius:17px;
    }
    .nour-shell{
        padding:16px 14px 104px;
    }
    .nour-page-title{
        margin-top:4px;
    }
    .nour-page-title h1,
    .page-head h1,
    .nour-page-header h1,
    .nour-hero h1,
    .content-head h1{
        font-size:38px;
        letter-spacing:-.06em;
    }
    .page-head p,
    .nour-page-header p,
    .nour-hero p,
    .subtitle,
    .muted{
        font-size:16px;
    }
    .card,
    .nour-card,
    .nour-form-card,
    .nour-link-card{
        border-radius:24px;
        padding:18px;
    }
    .form-grid,
    .nour-form-grid,
    .nour-filter-grid{
        grid-template-columns:1fr;
        gap:13px;
    }
    .nour-form-actions,
    .nour-actions,
    .actions{
        display:grid;
        grid-template-columns:1fr;
    }
    .btn-primary,
    .btn-secondary,
    .btn-danger,
    .nour-btn,
    .nour-btn-secondary,
    button[type="submit"]{
        width:100%;
    }
    .table{
        min-width:0;
    }
    .table thead{
        display:none;
    }
    .table,
    .table tbody,
    .table tr,
    .table td{
        display:block;
        width:100%;
    }
    .table tr{
        border-bottom:1px solid var(--border);
        padding:14px;
    }
    .table td{
        border:0;
        padding:8px 0;
        display:flex;
        justify-content:space-between;
        gap:14px;
    }
    .table td::before{
        content:attr(data-label);
        color:var(--muted);
        font-size:12px;
        text-transform:uppercase;
        letter-spacing:.08em;
        font-weight:950;
        flex:0 0 38%;
    }
}

/* WhatsApp Links delete button */
.nour-btn-danger{
    min-height:58px;
    border-radius:18px;
    padding:15px 22px;
    font-weight:900;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #fecaca;
    background:#fee2e2;
    color:#991b1b;
    cursor:pointer;
    text-decoration:none;
}
.nour-link-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
    margin-top:16px;
}
.nour-link-actions form{
    margin:0;
}
@media(max-width:700px){
    .nour-link-actions > *{
        width:100%;
    }
    .nour-link-actions .nour-btn,
    .nour-link-actions .nour-btn-secondary,
    .nour-link-actions .nour-btn-danger{
        width:100%;
    }
}

/* N9raw icon logo tuning */
.nour-brand img,
.nour-side-brand img {
    object-fit: contain;
    padding: 4px;
    background: #ffffff;
}
