/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: May 14 2026 | 15:09:01 */
/* =============================================================
   BRUTALIST CONCRETE — Stylesheet for Industry Conference Sessions Demo
   Aesthetic: raw, monolithic, oversized monospace type, ink-on-paper.
   ============================================================= */

@import url('https://fonts.googleapis.com/css2?family=Space+Mono:wght@400;700&family=Archivo+Black&family=Fraunces:opsz,wght@9..144,300;9..144,900&display=swap');

/* ---- Reset within view scope ---- */
.gv-diy-container,
.gv-widgets-header,
.gv-widgets-footer {
    --ink: #0c0c0a;
    --paper: #e6e1d6;
    --rule: #0c0c0a;
    --accent: #ff3a17;
    --accent-2: #1e34ff;
    --muted: #6f6a5e;
    --hi: #fff7c7;
    --shadow: 6px 6px 0 var(--ink);

    /* Track colors */
    --t-Engineering: #ff3a17;
    --t-Design:      #1e34ff;
    --t-Product:     #00875a;
    --t-Leadership:  #b300b3;
    --t-Research:    #b48a00;
    --t-Operations:  #404040;
}

body:has(.gv-diy-container) {
    background:
        linear-gradient(180deg, transparent 0 31px, rgba(12,12,10,0.06) 31px 32px) 0 0 / 100% 32px,
        var(--paper, #e6e1d6);
    color: var(--ink);
    font-family: 'Space Mono', ui-monospace, monospace;
    font-size: 15px;
    line-height: 1.55;
    letter-spacing: 0.01em;
}

/* =========================================================
   HEADER DASHBOARD
   ========================================================= */
.gv-widgets-header {
    border-bottom: 4px solid var(--ink);
    margin: 0 0 3rem;
    padding: 0;
}

.garden-dashboard {
    padding: 3rem 2rem 2rem;
    background: var(--ink);
    color: var(--paper);
    position: relative;
    overflow: hidden;
}
.garden-dashboard::before {
    content: "BRUTALIST.CONCRETE / VOL. 01";
    position: absolute;
    top: 0.75rem; right: 1rem;
    font-size: 11px;
    letter-spacing: 0.2em;
    color: var(--accent);
    text-transform: uppercase;
}
.garden-dashboard::after {
    content: "■";
    position: absolute;
    top: 0.75rem; left: 1rem;
    color: var(--accent);
    font-size: 14px;
}
.garden-dashboard__title {
    font-family: 'Archivo Black', sans-serif;
    font-size: clamp(2.5rem, 7vw, 5.5rem);
    line-height: 0.9;
    letter-spacing: -0.04em;
    margin: 0 0 1rem;
    text-transform: uppercase;
    color: var(--paper);
}
.garden-dashboard__intro {
    font-family: 'Space Mono', monospace;
    font-size: 15px;
    max-width: 60ch;
    margin: 0;
    color: var(--paper);
}
.garden-dashboard__intro strong {
    background: var(--accent);
    color: var(--ink);
    padding: 0.05em 0.4em;
    font-weight: 700;
}

/* =========================================================
   SEARCH BAR
   ========================================================= */
.gv-widget-search {
    background: var(--paper);
    padding: 1.5rem 2rem;
    border-bottom: 2px solid var(--ink);
    margin: 0;
}
.gv-widget-search::before {
    content: "// QUERY";
    display: block;
    font-size: 11px;
    letter-spacing: 0.2em;
    color: var(--muted);
    margin-bottom: 1rem;
    text-transform: uppercase;
}
.gv-search-widget-area.gv-search-horizontal {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 1rem;
    align-items: end;
}
.gv-search-box {
    margin: 0;
}
.gv-search-box label {
    display: block;
    font-family: 'Archivo Black', sans-serif;
    font-size: 10px;
    letter-spacing: 0.15em;
    color: var(--ink);
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}
.gv-search-box p { margin: 0; }
.gv-search-box input[type="search"],
.gv-search-box select {
    width: 100%;
    padding: 0.75rem 0.85rem;
    font-family: 'Space Mono', monospace;
    font-size: 15px;
    background: transparent;
    border: 2px solid var(--ink);
    color: var(--ink);
    border-radius: 0;
    box-shadow: none;
    appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, var(--ink) 50%),
        linear-gradient(135deg, var(--ink) 50%, transparent 50%);
    background-position:
        calc(100% - 16px) 50%,
        calc(100% - 10px) 50%;
    background-size: 6px 6px;
    background-repeat: no-repeat;
    padding-right: 2rem;
}
.gv-search-box input[type="search"] {
    background-image: none;
    padding-right: 0.85rem;
}
.gv-search-box input[type="search"]:focus,
.gv-search-box select:focus {
    outline: none;
    background-color: var(--hi);
    box-shadow: var(--shadow);
}
.gv-search-box input[type="search"]::placeholder {
    color: var(--muted);
}

.gv-widget-search .gv-grid-row:nth-child(2) {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px dashed var(--muted);
}
.gv-widget-search input.gv-search-button {
    background: var(--accent);
    color: var(--paper);
    border: 2px solid var(--ink);
    border-radius: 0;
    padding: 0.75rem 1.5rem;
    font-family: 'Archivo Black', sans-serif;
    font-size: 13px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    cursor: pointer;
    box-shadow: var(--shadow);
    transition: transform 80ms, box-shadow 80ms;
}
.gv-widget-search input.gv-search-button:hover {
    transform: translate(2px, 2px);
    box-shadow: 4px 4px 0 var(--ink);
}
.gv-widget-search input.gv-search-button:active {
    transform: translate(6px, 6px);
    box-shadow: 0 0 0 var(--ink);
}
.gv-widget-search a.gv-search-clear {
    display: inline-block;
    margin-right: 1rem;
    padding: 0.75rem 1.25rem;
    background: transparent;
    color: var(--ink);
    border: 2px solid var(--ink);
    font-family: 'Archivo Black', sans-serif;
    font-size: 13px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    text-decoration: none;
    transition: background 80ms;
}
.gv-widget-search a.gv-search-clear:hover {
    background: var(--ink);
    color: var(--paper);
}

/* =========================================================
   PAGINATION HEADER ROW (page info + page size)
   ========================================================= */
.gv-widgets-header .gv-widget-pagination {
    padding: 0.85rem 2rem;
    border-top: 1px solid var(--muted);
    background: var(--paper);
}
.gv-widgets-header .gv-widget-pagination p {
    margin: 0;
    font-size: 12px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--muted);
}
.gv-widget-page-size {
    padding: 0.85rem 2rem;
    border-top: 1px solid var(--muted);
    background: var(--paper);
    text-align: right;
}
.gv-widget-page-size label {
    font-size: 12px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--muted);
    margin-right: 0.5rem;
}
.gv-widget-page-size select {
    background: transparent;
    border: 2px solid var(--ink);
    padding: 0.35rem 1.75rem 0.35rem 0.5rem;
    font-family: 'Space Mono', monospace;
    font-size: 14px;
    color: var(--ink);
    border-radius: 0;
    appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, var(--ink) 50%),
        linear-gradient(135deg, var(--ink) 50%, transparent 50%);
    background-position:
        calc(100% - 12px) 50%,
        calc(100% - 8px) 50%;
    background-size: 5px 5px;
    background-repeat: no-repeat;
}

/* =========================================================
   THE GRID OF CARDS
   ========================================================= */
.gv-diy-container {
    padding: 0 2rem 3rem;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
    gap: 0;
    border-left: 4px solid var(--ink);
    border-right: 4px solid var(--ink);
}
.gv-diy-view {
    border: 2px solid var(--ink);
    margin: -1px -1px 0 0;  /* overlap borders */
    background: var(--paper);
    transition: transform 120ms, box-shadow 120ms, z-index 0s 120ms;
    position: relative;
}
.gv-diy-view:hover {
    z-index: 10;
    transform: translate(-3px, -3px);
    /* outline drawn outside the box, doesn't obscure adjacent content */
    box-shadow:
        3px 3px 0 var(--paper),
        5px 5px 0 var(--ink);
    transition: transform 120ms, box-shadow 120ms, z-index 0s;
}

/* =========================================================
   SESSION CARDS
   ========================================================= */
.session-card {
    padding: 1.5rem;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    height: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.session-card__header {
    position: relative;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--ink);
}

.session-card__track {
    display: inline-block;
    font-family: 'Archivo Black', sans-serif;
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    padding: 0.25rem 0.5rem;
    background: var(--ink);
    color: var(--paper);
    margin-right: 0.5rem;
}
.session-card__track--Engineering { background: var(--t-Engineering); }
.session-card__track--Design      { background: var(--t-Design); color: var(--paper); }
.session-card__track--Product     { background: var(--t-Product); }
.session-card__track--Leadership  { background: var(--t-Leadership); }
.session-card__track--Research    { background: var(--t-Research); color: var(--ink); }
.session-card__track--Operations  { background: var(--t-Operations); }

.session-card__format {
    display: inline-block;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    color: var(--muted);
    text-transform: uppercase;
}
.session-card__format::before { content: "/ "; color: var(--muted); }

.session-card__title {
    font-family: 'Archivo Black', sans-serif;
    font-size: 1.5rem;
    line-height: 1.05;
    letter-spacing: -0.02em;
    margin: 0.75rem 0 0.75rem;
    text-transform: uppercase;
}
.session-card__title a {
    color: var(--ink);
    text-decoration: none;
    background-image: linear-gradient(var(--accent), var(--accent));
    background-size: 0 4px;
    background-repeat: no-repeat;
    background-position: 0 100%;
    transition: background-size 200ms;
}
.session-card__title a:hover {
    background-size: 100% 4px;
}

.session-card__speaker {
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}
.session-card__speaker-name {
    font-family: 'Archivo Black', sans-serif;
    font-size: 13px;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
.session-card__speaker-role {
    font-family: 'Space Mono', monospace;
    font-size: 12px;
    color: var(--muted);
}

.session-card__body {
    flex: 1;
}
.session-card__abstract {
    margin: 0;
    font-family: 'Fraunces', serif;
    font-size: 16px;
    line-height: 1.45;
    color: var(--ink);
}

.session-card__footer {
    border-top: 2px solid var(--ink);
    padding-top: 1rem;
    margin-top: 0.5rem;
}

.session-card__meta {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.4rem 0.85rem;
    margin: 0 0 1rem;
    font-family: 'Space Mono', monospace;
    font-size: 12px;
}
.session-card__meta dt {
    color: var(--muted);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    font-size: 10px;
    padding-top: 2px;
}
.session-card__meta dd {
    margin: 0;
    color: var(--ink);
    font-variant-numeric: tabular-nums;
}

/* Capacity progress bar — built from the --pct custom prop */
.session-card__capacity-bar {
    display: block;
    position: relative;
    padding: 0;
    font-size: 11px;
    letter-spacing: 0.05em;
    color: var(--ink);
}
.session-card__capacity-bar::before {
    content: "";
    display: block;
    height: 4px;
    width: 100%;
    background: var(--ink);
    margin-bottom: 4px;
    position: relative;
}
.session-card__capacity-bar::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 4px;
    width: var(--pct, 0%);
    background: var(--accent);
}

.session-card__rating {
    font-family: 'Archivo Black', sans-serif;
    font-size: 14px;
}
.session-card__rating small {
    font-family: 'Space Mono', monospace;
    font-size: 10px;
    font-weight: 400;
    color: var(--muted);
    margin-left: 0.4em;
}

.session-card__related {
    list-style: none;
    margin: 0;
    padding: 0;
    font-family: 'Space Mono', monospace;
    font-size: 12px;
    color: var(--muted);
}
.session-card__related-label {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 10px;
    margin-bottom: 0.25rem;
    color: var(--ink);
}

/* =========================================================
   FOOTER WIDGETS
   ========================================================= */
.gv-widgets-footer {
    border-top: 4px solid var(--ink);
    background: var(--ink);
    color: var(--paper);
    margin-top: 0;
    padding: 1rem 2rem;
}

.gv-widget-page-links ul.page-numbers {
    list-style: none;
    display: flex;
    gap: 0.25rem;
    margin: 0;
    padding: 0;
    justify-content: flex-end;
    flex-wrap: wrap;
    background: transparent;  /* protect from .page-numbers rules matching the UL */
}
.gv-widget-page-links li { margin: 0; }
.gv-widget-page-links a.page-numbers,
.gv-widget-page-links span.page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.25rem;
    height: 2.25rem;
    padding: 0 0.5rem;
    font-family: 'Space Mono', monospace;
    font-size: 14px;
    color: var(--paper);
    background: transparent;
    border: 1px solid var(--paper);
    text-decoration: none;
}
.gv-widget-page-links a.page-numbers:hover {
    background: var(--paper);
    color: var(--ink);
}
.gv-widget-page-links span.page-numbers.current {
    background: var(--accent);
    color: var(--paper);
    border-color: var(--accent);
    font-family: 'Archivo Black', sans-serif;
}
.gv-widget-page-links span.page-numbers.dots {
    border: none;
    color: var(--paper);
}

.garden-footer {
    grid-column: 1 / -1;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--paper);
}
.garden-footer__credit {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 12px;
    letter-spacing: 0.05em;
    color: var(--paper);
    text-align: center;
}
.garden-footer__credit a {
    color: var(--accent);
    text-decoration: none;
    border-bottom: 2px solid var(--accent);
}
.garden-footer__credit a:hover {
    background: var(--accent);
    color: var(--ink);
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 720px) {
    .gv-search-widget-area.gv-search-horizontal {
        grid-template-columns: 1fr;
    }
    .gv-diy-container {
        grid-template-columns: 1fr;
        padding: 0 1rem 2rem;
    }
    .garden-dashboard {
        padding: 2rem 1rem;
    }
    .garden-dashboard__title {
        font-size: 2.5rem;
    }
}