/*
 * Project Nameless — shared application UI layer
 * Loaded globally after Vireo app.css.
 */

/* PAGE / ENTITY */
.nm-page{
    inline-size:100%;
    display:flex;
    flex-direction:column;
    gap:var(--ax-space-5);
}
.nm-page-head,
.nm-entity-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--ax-space-4);
    flex-wrap:wrap;
}
.nm-entity-head{align-items:flex-end}
.nm-page-title,
.nm-entity-title h1{
    margin:0;
    font-family:var(--ax-font-display);
    font-size:var(--ax-text-2xl);
    font-weight:var(--ax-weight-semibold);
    color:var(--ax-text-strong);
    letter-spacing:-.015em;
}
.nm-entity-title{
    display:flex;
    align-items:center;
    gap:var(--ax-space-2);
    flex-wrap:wrap;
}
.nm-page-sub,
.nm-entity-sub{
    margin:5px 0 0;
    color:var(--ax-text-muted);
    font-size:var(--ax-text-sm);
}
.nm-section-title{
    margin:0 0 4px;
    font-size:var(--ax-text-md);
    font-weight:var(--ax-weight-semibold);
    color:var(--ax-text-strong);
}
.nm-section-sub{
    margin:0;
    font-size:var(--ax-text-sm);
    color:var(--ax-text-muted);
}

/* PROFILE / INFORMATION */
.nm-profile-panel{padding-top:var(--ax-space-5)}
.nm-tab-head,
.nm-summary-section__head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--ax-space-4);
    flex-wrap:wrap;
}
.nm-tab-head{margin-bottom:var(--ax-space-4)}
.nm-summary-section__head{
    gap:var(--ax-space-3);
    margin-bottom:var(--ax-space-3);
}
.nm-info-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--ax-space-4);
}
.nm-info-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nm-info-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.nm-info-box,
.nm-summary-section{
    min-inline-size:0;
    border:1px solid var(--ax-border);
    border-radius:var(--ax-radius-lg);
    background:var(--ax-surface);
}
.nm-info-box{padding:var(--ax-space-4)}
.nm-summary-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--ax-space-4);
}
.nm-summary-section{padding:var(--ax-space-4)}
.nm-info-label{
    font-size:var(--ax-text-xs);
    color:var(--ax-text-muted);
    margin-bottom:5px;
}
.nm-info-value{
    font-size:var(--ax-text-sm);
    font-weight:var(--ax-weight-medium);
    color:var(--ax-text-strong);
    overflow-wrap:anywhere;
}
.nm-richtext{
    white-space:pre-wrap;
    font-size:var(--ax-text-sm);
    line-height:1.65;
    color:var(--ax-text);
}
.nm-empty{
    padding:var(--ax-space-8) var(--ax-space-4);
    text-align:center;
    color:var(--ax-text-muted);
}
.nm-action-form{margin:0}

/* SHARED VIREO STAT LINKS */
.nm-stat-link{
    color:inherit;
    text-decoration:none;
    transition:background var(--ax-motion-instant) var(--ax-ease-standard);
}
.nm-stat-link:hover{background:var(--ax-fill-hover)}

/* SHARED FORM GRIDS */
.nm-form-grid{
    display:grid;
    gap:var(--ax-space-4);
}
.nm-form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nm-form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nm-form-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}

/* DASHBOARD */
.nm-dashboard-stage-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    border:1px solid var(--ax-border);
    border-radius:var(--ax-radius-lg);
    overflow:hidden;
}
.nm-dashboard-stage{
    min-width:0;
    padding:var(--ax-space-4);
    text-decoration:none;
    color:inherit;
    border-inline-end:1px solid var(--ax-border);
    transition:background var(--ax-motion-instant) var(--ax-ease-standard);
}
.nm-dashboard-stage:last-child{border-inline-end:0}
.nm-dashboard-stage:hover{background:var(--ax-fill-hover)}
.nm-dashboard-stage-label{
    display:block;
    color:var(--ax-text-muted);
    font-size:var(--ax-text-xs);
    margin-bottom:4px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.nm-dashboard-stage strong{
    display:block;
    color:var(--ax-text-strong);
    font-family:var(--ax-font-display);
    font-size:var(--ax-text-xl);
}
.nm-dashboard-divider{
    height:1px;
    background:var(--ax-border);
    margin-block:var(--ax-space-5);
}
.nm-dashboard-small-title{
    font-size:var(--ax-text-xs);
    font-weight:var(--ax-weight-semibold);
    color:var(--ax-text-muted);
    margin-bottom:var(--ax-space-3);
}
.nm-dashboard-offer-statuses{
    display:flex;
    gap:var(--ax-space-2);
    flex-wrap:wrap;
}
.nm-dashboard-status-pill{
    display:inline-flex;
    align-items:center;
    gap:var(--ax-space-2);
    padding:7px 10px;
    border:1px solid var(--ax-border);
    border-radius:var(--ax-radius-pill);
    color:var(--ax-text-muted);
    text-decoration:none;
    font-size:var(--ax-text-xs);
}
.nm-dashboard-status-pill:hover{background:var(--ax-fill-hover)}
.nm-dashboard-status-pill strong{color:var(--ax-text-strong)}
.nm-dashboard-list{margin:0}
.nm-dashboard-row-link{
    color:var(--ax-text-strong);
    text-decoration:none;
}
.nm-dashboard-row-link:hover{color:var(--ax-accent)}
.nm-dashboard-row-meta{
    display:block;
    margin-top:2px;
    font-size:var(--ax-text-xs);
    color:var(--ax-text-subtle);
}
.nm-dashboard-attention-dot{
    display:inline-block;
    width:9px;
    height:9px;
    border-radius:50%;
}
.nm-dashboard-todo-check{
    display:inline-block;
    width:16px;
    height:16px;
    border:1.5px solid var(--ax-border-strong);
    border-radius:5px;
}
.nm-dashboard-empty{
    padding:var(--ax-space-6) var(--ax-space-2);
    color:var(--ax-text-muted);
    text-align:center;
}

/* OPPORTUNITY */
.nm-opp-form-grid{
    display:grid;
    gap:var(--ax-space-4);
}
.nm-opp-form-grid--title{grid-template-columns:minmax(0,2fr) minmax(220px,.8fr)}
.nm-opp-form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nm-opp-form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nm-opp-form-grid--4{grid-template-columns:1.2fr 1fr .6fr .8fr}
.nm-kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:var(--ax-space-4);
}
.nm-kpi{padding:var(--ax-space-4)}
.nm-kpi-label{
    font-size:var(--ax-text-xs);
    color:var(--ax-text-muted);
    text-transform:uppercase;
    letter-spacing:.045em;
}
.nm-kpi-value{
    margin-top:6px;
    font-size:var(--ax-text-xl);
    font-weight:var(--ax-weight-semibold);
    color:var(--ax-text-strong);
}
.nm-stage-strip{
    display:flex;
    gap:var(--ax-space-2);
    flex-wrap:wrap;
}

/* OFFER */
.nm-offer-total-box{
    margin-left:auto;
    width:min(100%,360px);
    display:flex;
    flex-direction:column;
    gap:var(--ax-space-2);
}
.nm-offer-total-row{
    display:flex;
    justify-content:space-between;
    gap:var(--ax-space-5);
    font-variant-numeric:tabular-nums;
}
.nm-offer-total-row--grand{
    border-top:1px solid var(--ax-border);
    padding-top:var(--ax-space-3);
    margin-top:var(--ax-space-2);
    font-weight:var(--ax-weight-semibold);
    color:var(--ax-text-strong);
    font-size:var(--ax-text-lg);
}
.nm-offer-table{min-width:1180px}



/* ============================================================
   PROJECT
   ============================================================ */

.nm-entity-meta{
    margin-top:5px;
    display:flex;
    gap:var(--ax-space-2);
    align-items:center;
    flex-wrap:wrap;
    color:var(--ax-text-muted);
    font-size:var(--ax-text-sm);
}

.nm-entity-meta a{
    color:inherit;
    text-decoration:none;
}

.nm-entity-meta a:hover{
    color:var(--ax-accent);
}

.nm-empty--compact{
    padding:var(--ax-space-5);
}

.nm-project-vireo-card{
    box-shadow:none;
}

.nm-project-vireo-card .ax-timeline{
    margin:0;
}

.nm-project-timeline-edit{
    appearance:none;
    border:0;
    padding:0;
    margin:0;
    background:transparent;
    color:var(--ax-text-strong);
    font:inherit;
    cursor:pointer;
    text-align:inherit;
}

.nm-project-timeline-edit:hover{
    color:var(--ax-accent);
}

.nm-project-timeline-description{
    color:var(--ax-text-muted);
    font-weight:var(--ax-weight-normal);
}

/* RESPONSIVE */
@media(max-width:1180px){
    .nm-info-grid--4,
    .nm-kpi-grid,
    .nm-opp-form-grid--4{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:900px){
    .nm-dashboard-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .nm-dashboard-stage{border-bottom:1px solid var(--ax-border)}
}
@media(max-width:820px){
    .nm-entity-head{
        align-items:stretch;
        flex-direction:column;
    }
}
@media(max-width:720px){
    .nm-info-grid,
    .nm-info-grid--3,
    .nm-info-grid--4,
    .nm-summary-grid,
    .nm-form-grid--2,
    .nm-form-grid--3,
    .nm-form-grid--4,
    .nm-kpi-grid,
    .nm-opp-form-grid--title,
    .nm-opp-form-grid--2,
    .nm-opp-form-grid--3,
    .nm-opp-form-grid--4{
        grid-template-columns:1fr;
    }
}
@media(max-width:560px){
    .nm-dashboard-stage-grid{grid-template-columns:1fr}
    .nm-dashboard-stage{border-inline-end:0}
}
