:root{--brand:#c5954a;--brand-dark:#9d7338;--text:#666;--ink:#262626;--paper:#f7f5f1;--line:#e6e0d7}body{color:var(--text);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.navbar-brand{color:var(--ink)}.navbar-brand small{font-weight:400;color:var(--text)}.brand-mark{width:54px;height:54px;border-radius:50%;display:inline-grid;place-items:center;background:var(--brand);color:#fff;font-family:Georgia,serif;font-size:1.7rem}.brand-mark-sm{width:38px;height:38px;font-size:1.2rem}.hero{background:linear-gradient(120deg,#fff 0%,#f4eee4 100%);border-bottom:1px solid var(--line)}.hero h1{color:var(--ink);max-width:800px;font-size:clamp(2rem,4vw,3.7rem);letter-spacing:-.04em}.hero p{font-size:1.1rem;max-width:720px}.eyebrow{color:var(--brand-dark);font-size:.78rem;font-weight:800;letter-spacing:.2em}.mt-n4{margin-top:-2rem}.workflow-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:24px;padding:clamp(1.3rem,3vw,2.25rem);box-shadow:0 18px 60px rgba(66,52,35,.08);overflow:hidden}.workflow-card h2{color:var(--ink);padding-right:60px}.step-number{position:absolute;right:25px;top:20px;font-size:2.4rem;font-weight:800;color:rgba(197,149,74,.24)}.btn-brand{background:var(--brand);border-color:var(--brand);color:#fff}.btn-brand:hover,.btn-brand:focus{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff}.form-control:focus{border-color:var(--brand);box-shadow:0 0 0 .25rem rgba(197,149,74,.18)}.prompt-box{background:#faf9f7!important;color:#555;font-size:.9rem;line-height:1.45}.locked-label,.model-pill{font-size:.75rem;border:1px solid var(--line);background:#faf8f4;border-radius:999px;padding:.3rem .65rem;color:var(--brand-dark)}.upload-zone{padding:1rem;border:1px dashed #d9c7a9;border-radius:16px;background:#fdfbf8}.preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.preview-grid img{width:100%;height:140px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.result-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.result-card img{display:block;width:100%;height:auto}.result-actions{padding:.75rem;display:flex;justify-content:flex-end}.login-body{min-height:100vh;background:radial-gradient(circle at top right,#f0e3cf,transparent 45%),var(--paper)}.login-card{max-width:460px;background:#fff;padding:2.5rem;border-radius:24px;border:1px solid var(--line);box-shadow:0 25px 80px rgba(70,51,28,.12)}@media(max-width:767px){.model-pill{display:none}.mt-n4{margin-top:-1rem}.workflow-card{border-radius:18px}}
.btn-outline-brand{border-color:var(--brand);color:var(--brand-dark)}.btn-outline-brand:hover{background:var(--brand);border-color:var(--brand);color:#fff}.alert-brand{background:#f8efe1;border-color:#ead6b6;color:#755426}.archive-hero{background:#fff;border-bottom:1px solid var(--line)}.archive-hero h1{color:var(--ink);letter-spacing:-.03em}.filter-bar,.detail-card,.empty-state{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.25rem;box-shadow:0 12px 35px rgba(66,52,35,.06)}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.archive-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 12px 35px rgba(66,52,35,.06);transition:transform .2s ease,box-shadow .2s ease}.archive-card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(66,52,35,.1)}.archive-image{display:block;aspect-ratio:16/9;background:#eee}.archive-image img{width:100%;height:100%;object-fit:cover}.archive-card-body{padding:1rem}.workflow-badge{font-size:.72rem;font-weight:700;color:var(--brand-dark);background:#f8efe1;border-radius:999px;padding:.3rem .55rem}.prompt-preview{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.9rem;line-height:1.45;margin:1rem 0;color:#555}.stars{font-size:.83rem;color:var(--brand-dark)}.page-link{color:var(--brand-dark)}.page-item.active .page-link{background:var(--brand);border-color:var(--brand)}.detail-main-image{width:100%;border-radius:14px;margin-top:.5rem}.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.source-grid figure{margin:0}.source-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px}.source-grid figcaption{font-size:.8rem;margin-top:.4rem;color:var(--text)}.saved-prompt{max-height:420px;overflow:auto;padding:1rem;border:1px solid var(--line);border-radius:12px;background:#faf9f7;font-size:.88rem;line-height:1.5}.rating-input{display:grid;grid-template-columns:repeat(5,1fr);gap:.35rem}.rating-input input{position:absolute;opacity:0;pointer-events:none}.rating-input span{display:block;text-align:center;padding:.5rem .2rem;border:1px solid var(--line);border-radius:9px;font-size:.78rem;cursor:pointer}.rating-input input:checked+span{background:var(--brand);border-color:var(--brand);color:#fff}.empty-state{text-align:center;padding:4rem 1rem}.prompt-box:not([readonly]){background:#fff!important}@media(max-width:991px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575px){.archive-grid{grid-template-columns:1fr}.source-grid{grid-template-columns:1fr}.result-actions{flex-direction:column}.result-actions .btn{width:100%}}

.compare-modal .modal-content{border:0;border-radius:22px;overflow:hidden;box-shadow:0 28px 90px rgba(45,35,24,.24)}.compare-modal .modal-header,.compare-modal .modal-footer{border-color:var(--line);background:#fff}.compare-modal .modal-body{background:var(--paper);padding:1.25rem}.compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.compare-panel{margin:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.compare-panel figcaption{padding:.8rem 1rem;font-weight:700;color:var(--ink);border-bottom:1px solid var(--line)}.compare-image-wrap{display:flex;align-items:center;justify-content:center;min-height:280px;background:#eee}.compare-image-wrap img{display:block;width:100%;height:auto;max-height:72vh;object-fit:contain}@media(max-width:767px){.compare-grid{grid-template-columns:1fr}.compare-image-wrap{min-height:180px}.compare-image-wrap img{max-height:58vh}}


.bedroom-select-card {
    width: 100%;
    padding: 0;
    overflow: hidden;
    text-align: left;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 0.85rem;
    transition:
        transform 0.15s ease,
        border-color 0.15s ease,
        box-shadow 0.15s ease;
}

.bedroom-select-card:hover,
.bedroom-select-card:focus {
    transform: translateY(-2px);
    border-color: #c5954a;
    box-shadow: 0 0.75rem 1.75rem rgba(0, 0, 0, 0.1);
}

.bedroom-select-card img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.bedroom-select-meta {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.8rem 1rem;
    color: #666;
}

.bedroom-select-meta strong {
    color: #333;
}

.selected-bedroom-preview {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem;
    border: 1px solid #c5954a;
    border-radius: 0.65rem;
    background: rgba(197, 149, 74, 0.08);
}

.selected-bedroom-preview img {
    width: 80px;
    height: 55px;
    object-fit: cover;
    border-radius: 0.4rem;
}
/* Janine Image Studio – refined workflow interface */
:root{--brand:#b88a49;--brand-dark:#785d37;--ink:#1d1c1a;--paper:#f5f2ec;--line:#ded8ce;--soft:#ebe5db;--white:#fff;--shadow:0 24px 70px rgba(40,32,22,.09)}
.studio-body{background:var(--paper);color:#6c6963}
.studio-navbar{background:rgba(255,255,255,.92);border-bottom:1px solid rgba(222,216,206,.9);backdrop-filter:blur(18px);padding:.85rem 0}
.studio-nav-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.janine-brand{display:flex;align-items:center;gap:.85rem;text-decoration:none}
.brand-monogram{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--ink);border-radius:50%;font:italic 1.35rem Georgia,serif;color:var(--ink)}
.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy strong{font-size:.95rem;letter-spacing:.19em;color:var(--ink)}.brand-copy small{font-size:.72rem;letter-spacing:.08em;margin-top:.3rem}
.studio-nav-actions{display:flex;align-items:center;gap:.65rem}.studio-status{align-items:center;gap:.6rem;padding:0 .6rem;font-size:.69rem;letter-spacing:.09em;text-transform:uppercase;color:#7c766d}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#86a278;box-shadow:0 0 0 4px rgba(134,162,120,.12)}.status-separator{width:1px;height:15px;background:var(--line)}
.credit-pill{display:flex;align-items:baseline;gap:.45rem;border:1px solid var(--line);border-radius:999px;padding:.48rem .78rem;background:#fbfaf8}.credit-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.credit-pill strong{color:var(--ink);font-size:.82rem}.studio-nav-btn,.studio-icon-btn{border:1px solid var(--ink);border-radius:999px;color:var(--ink);font-size:.78rem;padding:.5rem .85rem}.studio-nav-btn:hover,.studio-icon-btn:hover{background:var(--ink);color:#fff}.studio-icon-btn{width:36px;height:36px;padding:0;display:grid;place-items:center}
.studio-hero{position:relative;overflow:hidden;padding:clamp(4.5rem,9vw,8rem) 0 clamp(5.5rem,10vw,9rem);background:radial-gradient(circle at 78% 25%,rgba(184,138,73,.13),transparent 24%),linear-gradient(135deg,#faf9f6 0%,#eee8de 100%);border-bottom:1px solid var(--line)}
.studio-hero:after{content:"";position:absolute;right:-8vw;bottom:-20vw;width:45vw;height:45vw;border:1px solid rgba(120,93,55,.15);border-radius:50%}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.5fr);gap:4rem;align-items:end}.hero-copy{position:relative;z-index:1}.eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.22em;color:var(--brand-dark)}.studio-hero h1{max-width:880px;margin:.8rem 0 1.4rem;font-size:clamp(3rem,7vw,6.7rem);line-height:.91;letter-spacing:-.055em;color:var(--ink);font-weight:500}.studio-hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--brand-dark)}.hero-lead{max-width:690px;font-size:clamp(1rem,1.6vw,1.24rem);line-height:1.75}.hero-aside{position:relative;z-index:1;border-left:1px solid rgba(120,93,55,.25);padding-left:2rem}.hero-number{display:block;font-family:Georgia,serif;font-size:4.2rem;line-height:1;color:var(--brand-dark)}.hero-aside p{margin:1rem 0 0;font-size:.8rem;line-height:1.6;text-transform:uppercase;letter-spacing:.14em}
.studio-main{position:relative;margin-top:-3.4rem}.reused-alert{display:flex;justify-content:space-between;gap:1rem;border-radius:0;padding:1rem 1.25rem;margin-bottom:1.5rem}
.workflow-overview{background:#fff;border:1px solid var(--line);padding:clamp(1.5rem,4vw,3rem);box-shadow:var(--shadow)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem}.section-heading h2{margin:0;color:var(--ink);font-size:clamp(1.7rem,3vw,2.6rem);letter-spacing:-.035em}.section-heading>p{max-width:390px;margin:0;line-height:1.7}
.workflow-selector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.workflow-selector{appearance:none;display:flex;flex-direction:column;min-height:330px;padding:1.6rem;text-align:left;background:#fff;border:0;color:inherit;transition:background .25s ease,color .25s ease,transform .25s ease}.workflow-selector:hover,.workflow-selector:focus-visible,.workflow-selector.is-active{position:relative;z-index:1;background:var(--ink);color:#d6d0c7;outline:0}.selector-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:auto}.selector-step{font:italic 1rem Georgia,serif;color:var(--brand)}.selector-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid currentColor;border-radius:50%;font-size:1.1rem}.selector-eyebrow{margin-top:2.4rem;font-size:.65rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brand-dark)}.workflow-selector:hover .selector-eyebrow,.workflow-selector.is-active .selector-eyebrow{color:#d0aa72}.workflow-selector strong{display:block;margin:.65rem 0 .85rem;font-size:1.55rem;line-height:1.15;color:var(--ink);letter-spacing:-.025em}.workflow-selector:hover strong,.workflow-selector.is-active strong{color:#fff}.selector-description{font-size:.9rem;line-height:1.65}.selector-cta{display:flex;justify-content:space-between;align-items:center;margin-top:1.6rem;padding-top:1rem;border-top:1px solid currentColor;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.selector-cta span{font-size:1.2rem}
.workflow-panels{margin-top:1.5rem}.workflow-panel{scroll-margin-top:95px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(1.4rem,4vw,3rem);animation:panelReveal .35s ease both}.workflow-panel[hidden]{display:none!important}@keyframes panelReveal{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.panel-header{display:flex;justify-content:space-between;gap:2rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}.panel-header h2{margin:0 0 .65rem;color:var(--ink);font-size:clamp(1.8rem,4vw,3.2rem);letter-spacing:-.04em}.panel-header p:last-child{max-width:660px;margin:0;line-height:1.7}.panel-close{flex:0 0 auto;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:1.5rem;line-height:1}.panel-close:hover{background:var(--ink);color:#fff}.panel-form-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:3rem;padding:2.5rem 0}.form-section-label{display:flex;align-items:center;gap:.9rem;margin-bottom:1.3rem}.form-section-label>span{font:italic 1rem Georgia,serif;color:var(--brand)}.form-section-label div{display:flex;flex-direction:column}.form-section-label strong{color:var(--ink);font-size:.8rem;text-transform:uppercase;letter-spacing:.12em}.form-section-label small{margin-top:.15rem}.upload-zone{border-radius:0;border:1px dashed #cfc4b4;background:#faf8f4;padding:1.25rem}.form-control{border-radius:0;border-color:var(--line);padding:.78rem .9rem}.form-control[type=file]{background:#fff}.prompt-editor{border:1px solid var(--line);background:#faf9f6}.prompt-toolbar{display:flex;justify-content:space-between;align-items:center;padding:.9rem 1rem;border-bottom:1px solid var(--line)}.prompt-toolbar label{margin:0;color:var(--ink);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.prompt-editor .prompt-box{border:0;min-height:280px;resize:vertical;background:#fff!important}.prompt-editor .form-text{padding:.75rem 1rem;border-top:1px solid var(--line)}.locked-label{border-radius:999px;background:#f0ebe3}.panel-action-row{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}.panel-action-note{display:flex;align-items:center;gap:.8rem;font-size:.78rem}.panel-action-row .generate-btn{width:auto;min-width:300px;border-radius:0;padding:.9rem 1.3rem;display:flex;justify-content:space-between;align-items:center}.panel-action-row .generate-btn span{font-size:1.2rem}
@media(max-width:991px){.hero-grid{grid-template-columns:1fr}.hero-aside{display:none}.workflow-selector-grid{grid-template-columns:1fr}.workflow-selector{min-height:250px}.panel-form-grid{grid-template-columns:1fr;gap:2rem}.section-heading{align-items:start;flex-direction:column}.panel-action-row{align-items:stretch;flex-direction:column}.panel-action-row .generate-btn{width:100%;min-width:0}}
@media(max-width:767px){.studio-navbar{padding:.65rem 0}.brand-copy small,.studio-nav-btn,.credit-label{display:none}.credit-pill{padding:.45rem .6rem}.studio-hero{padding-top:3.5rem}.studio-main{margin-top:-2rem}.workflow-overview,.workflow-panel{padding:1.25rem}.workflow-selector{min-height:230px}.panel-header{gap:1rem}.reused-alert{flex-direction:column}.panel-form-grid{padding:1.5rem 0}.preview-grid{grid-template-columns:1fr}}





/* =========================================================
   Gallery / Archive refinement
   ========================================================= */

.archive-body {
    background:
        radial-gradient(circle at 80% 8%, rgba(197, 149, 74, 0.08), transparent 22rem),
        var(--paper);
}

.archive-hero {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(120deg, #ffffff 0%, #f6f1e9 100%);
    border-bottom: 1px solid var(--line);
}

.archive-hero::after {
    content: "";
    position: absolute;
    right: -9rem;
    top: -14rem;
    width: 31rem;
    height: 31rem;
    border: 1px solid rgba(197, 149, 74, 0.16);
    border-radius: 50%;
    pointer-events: none;
}

.archive-hero-row {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 2rem;
}

.archive-hero h1 {
    max-width: 760px;
    margin: 0 0 0.8rem;
    color: var(--ink);
    font-size: clamp(2.2rem, 4vw, 4rem);
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.045em;
}

.archive-hero p:not(.eyebrow) {
    max-width: 680px;
    font-size: 1.02rem;
    line-height: 1.7;
}

.archive-total {
    flex: 0 0 auto;
    min-width: 130px;
    padding-left: 1.5rem;
    border-left: 1px solid rgba(157, 115, 56, 0.24);
}

.archive-total strong,
.archive-total span {
    display: block;
}

.archive-total strong {
    color: var(--brand-dark);
    font-family: Georgia, serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1;
}

.archive-total span {
    margin-top: 0.45rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.filter-card {
    position: relative;
    z-index: 2;
    padding: clamp(1.25rem, 3vw, 2rem);
    background: rgba(255, 255, 255, 0.97);
    border: 1px solid var(--line);
    border-radius: 22px;
    box-shadow: 0 20px 55px rgba(66, 52, 35, 0.1);
}

.filter-card-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 1.5rem;
    margin-bottom: 1.3rem;
    padding-bottom: 1.1rem;
    border-bottom: 1px solid var(--line);
}

.filter-card-header h2 {
    margin: 0;
    color: var(--ink);
    font-size: 1.45rem;
    letter-spacing: -0.025em;
}

.filter-kicker {
    color: var(--brand-dark);
    font-size: 0.67rem;
    font-weight: 800;
    letter-spacing: 0.17em;
}

.filter-reset {
    color: var(--brand-dark);
    font-size: 0.78rem;
    font-weight: 700;
    text-decoration: none;
}

.filter-reset:hover {
    color: var(--ink);
    text-decoration: underline;
}

.archive-filter-form {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr)
        minmax(190px, 0.55fr);
    gap: 1rem;
    align-items: end;
}

.filter-field .form-label {
    margin-bottom: 0.5rem;
    color: var(--ink);
    font-size: 0.76rem;
    font-weight: 750;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.filter-card .form-select {
    min-height: 48px;
    border-color: var(--line);
    border-radius: 12px;
    background-color: #fbfaf8;
    color: var(--ink);
}

.filter-card .form-select:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 0.22rem rgba(197, 149, 74, 0.14);
}

.filter-submit .btn {
    width: 100%;
    min-height: 48px;
    border-radius: 12px;
    font-weight: 700;
}

.archive-results-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin: 0 0 1rem;
}

.archive-results-heading h2 {
    margin: 0;
    color: var(--ink);
    font-size: clamp(1.45rem, 2.4vw, 2rem);
    letter-spacing: -0.035em;
}

.archive-results-heading span {
    padding: 0.38rem 0.7rem;
    background: #f4ecdf;
    border: 1px solid #e7d7bd;
    border-radius: 999px;
    color: var(--brand-dark);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.archive-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
}

.archive-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 18px;
    box-shadow: 0 12px 34px rgba(66, 52, 35, 0.065);
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease,
        border-color 0.22s ease;
}

.archive-card:hover {
    transform: translateY(-4px);
    border-color: #dac8ac;
    box-shadow: 0 21px 48px rgba(66, 52, 35, 0.11);
}

.archive-image {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    background: #efede9;
    text-decoration: none;
}

.archive-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.archive-card:hover .archive-image img {
    transform: scale(1.025);
}

.archive-image-link {
    position: absolute;
    left: 0.8rem;
    bottom: 0.8rem;
    padding: 0.42rem 0.68rem;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(230, 224, 215, 0.9);
    border-radius: 999px;
    color: var(--ink);
    font-size: 0.72rem;
    font-weight: 700;
    backdrop-filter: blur(10px);
}

.archive-card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 1rem;
}

.archive-card-meta,
.archive-card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
}

.archive-id,
.archive-card-footer time {
    color: #8a857d;
    font-size: 0.76rem;
}

.workflow-badge {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0.3rem 0.58rem;
    background: #f8efe1;
    border: 1px solid #ecdcc1;
    border-radius: 999px;
    color: var(--brand-dark);
    font-size: 0.69rem;
    font-weight: 750;
}

.prompt-preview {
    display: -webkit-box;
    min-height: 4.2em;
    margin: 1rem 0;
    overflow: hidden;
    color: #555;
    font-size: 0.88rem;
    line-height: 1.55;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.archive-card-footer {
    margin-top: auto;
    padding-top: 0.9rem;
    border-top: 1px solid #eee9e2;
}

.stars {
    color: var(--brand-dark);
    font-size: 0.77rem;
}

.archive-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.55rem;
    margin-top: 0.9rem;
}

.archive-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    border-radius: 10px;
    font-size: 0.74rem;
    font-weight: 700;
}

.archive-pagination .pagination {
    gap: 0.35rem;
}

.archive-pagination .page-link {
    min-width: 40px;
    border-color: var(--line);
    border-radius: 10px !important;
    color: var(--brand-dark);
    text-align: center;
}

.archive-pagination .page-item.active .page-link {
    background: var(--brand);
    border-color: var(--brand);
    color: #fff;
}

.empty-state-mark {
    display: grid;
    width: 58px;
    height: 58px;
    margin: 0 auto 1rem;
    place-items: center;
    background: var(--brand);
    border-radius: 50%;
    color: #fff;
    font-family: Georgia, serif;
    font-size: 1.4rem;
}

@media (max-width: 991px) {
    .archive-filter-form {
        grid-template-columns: 1fr 1fr;
    }

    .filter-submit {
        grid-column: 1 / -1;
    }

    .archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .archive-hero-row,
    .filter-card-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .archive-total {
        padding: 0;
        border-left: 0;
    }

    .archive-filter-form {
        grid-template-columns: 1fr;
    }

    .filter-submit {
        grid-column: auto;
    }
}

@media (max-width: 575px) {
    .archive-grid {
        grid-template-columns: 1fr;
    }

    .archive-actions {
        grid-template-columns: 1fr;
    }

    .archive-results-heading {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* Upscale controls */
#upscaleStatus { flex-basis: 100%; }
#upscaleStatus .alert { border-radius: 12px; }
