:root { --ink:#1d2423; --muted:#69716d; --line:#dfe5df; --paper:#f7f8f4; --white:#fff; --blue:#cfe5f4; --yellow:#f3df85; --pink:#efc8d7; --accent:#e85d3f; --shadow:0 20px 55px rgba(33,46,40,.08); }
* { box-sizing:border-box; }
body { min-width:0; margin:0; overflow-x:hidden; color:var(--ink); background:var(--paper); font-family:"Space Grotesk", sans-serif; }
button, input, textarea, select { font:inherit; }
button { cursor:pointer; }
.hidden { display:none !important; }
.login-shell { min-height:100vh; display:grid; grid-template-columns:minmax(350px, .85fr) 1.15fr; background:#f7f8f4; }
.login-panel { display:flex; grid-column:2; flex-direction:column; justify-content:center; padding:clamp(2rem,5vw,4.5rem); max-width:600px; }
.brand-mark { font-size:1.45rem; font-weight:700; letter-spacing:-.1em; }
.brand-mark span { color:var(--accent); margin:0 .1em; }
.eyebrow, .mono-label { color:var(--muted); font:500 .68rem/1 "DM Mono", monospace; letter-spacing:.14em; text-transform:uppercase; }
.login-panel h1 { max-width:420px; margin:.75rem 0 .55rem; font-size:clamp(2.35rem,4vw,4.35rem); line-height:.94; letter-spacing:-.08em; }
.lede { max-width:390px; color:var(--muted); font-size:.9rem; line-height:1.5; }
.stack-form { display:flex; flex-direction:column; gap:1rem; }
.login-panel .stack-form { max-width:390px; margin-top:1.4rem; }
label { display:flex; flex-direction:column; gap:.45rem; color:var(--muted); font-size:.8rem; font-weight:600; }
input, textarea, select { width:100%; border:1px solid var(--line); border-radius:2px; background:#fbfcf9; color:var(--ink); padding:.78rem .85rem; outline:none; transition:border-color .2s, box-shadow .2s; }
input:focus, textarea:focus, select:focus { border-color:var(--ink); box-shadow:0 0 0 3px rgba(29,36,35,.08); }
textarea { resize:vertical; line-height:1.45; }
.button { border:0; display:inline-flex; align-items:center; justify-content:space-between; gap:1rem; padding:.9rem 1.1rem; border-radius:2px; font-weight:700; text-decoration:none; transition:transform .2s, box-shadow .2s; }
.button:hover { transform:translateY(-2px); box-shadow:0 8px 18px rgba(33,46,40,.12); }
.button-dark { background:var(--ink); color:#fff; }
.button-accent { background:var(--accent); color:#fff; }
.form-error { min-height:1rem; margin:0; color:#b23f32; font-size:.78rem; }
.login-note { max-width:390px; margin-top:.65rem; color:#98a19b; font-size:.72rem; line-height:1.5; }.login-public-link { display:inline-flex; align-items:center; justify-content:space-between; width:min(390px,100%); margin-top:.7rem; border-bottom:1px solid var(--line); padding:.5rem 0; color:#725664; font:600 .7rem "Space Grotesk", sans-serif; text-decoration:none; }.login-public-link span { color:var(--accent); font:500 1rem "DM Mono", monospace; }.login-public-link:hover { border-color:var(--accent); color:var(--ink); }
.admin-role-help { display:grid; gap:.16rem; border-left:4px solid #c58b9d; padding:.58rem .68rem; background:#fff0f4; }.admin-role-help strong { color:#8b4e61; font-size:.68rem; }.admin-role-help span { color:#78636c; font-size:.6rem; line-height:1.45; }
.login-art { position:relative; grid-column:1; grid-row:1; overflow:hidden; display:flex; align-items:flex-end; padding:8vw; background:#d8e7dc; }
.login-art:before { content:""; position:absolute; inset:12% 10% auto auto; width:55vw; height:55vw; max-width:700px; max-height:700px; border-radius:50%; background:var(--yellow); }
.login-art p { position:relative; max-width:270px; margin:0; color:#445348; font-size:.85rem; line-height:1.5; }
.orbit { position:absolute; border:1px solid rgba(29,36,35,.22); border-radius:50%; }
.orbit-one { width:48vw; height:20vw; right:-8vw; top:20%; transform:rotate(-26deg); }
.orbit-two { width:40vw; height:14vw; right:5vw; top:36%; transform:rotate(34deg); }
.id-card-illustration { position:relative; z-index:1; width:min(410px, 75%); aspect-ratio:1.58; margin:auto auto 10vh; padding:1.6rem; transform:rotate(-8deg); border-radius:14px; background:#202b29; color:#f7f8f4; box-shadow:25px 30px 0 rgba(29,36,35,.12); }
.card-top { display:flex; justify-content:space-between; color:#bcd8c4; font:500 .6rem "DM Mono", monospace; letter-spacing:.14em; }
.avatar-placeholder { width:34%; aspect-ratio:1; margin:10% 0 7%; border-radius:50%; background:#f0c6a8; box-shadow:inset 20px -15px 0 #df9e89; }
.card-lines { display:flex; flex-direction:column; gap:7px; width:52%; }.card-lines i { display:block; height:5px; border-radius:2px; background:#687b6f; }.card-lines i:nth-child(2){width:75%}.card-lines i:nth-child(3){width:45%}
.card-chip { position:absolute; right:1.6rem; bottom:1.6rem; width:40px; height:28px; border:1px solid #bcd8c4; border-radius:5px; }
.app-shell { min-height:100vh; display:flex; }
.sidebar { width:245px; flex:0 0 245px; display:flex; flex-direction:column; padding:2.4rem 1.6rem 1.5rem; background:#e8eee7; border-right:1px solid #d9e2d9; }
.sidebar-caption { margin:.45rem 0 .3rem; color:#9aa69d; font:500 .67rem "DM Mono", monospace; letter-spacing:.08em; text-transform:uppercase; }
.project-version { margin:0 0 2.4rem; color:#9aa69d; font:500 .6rem "DM Mono", monospace; letter-spacing:.08em; text-transform:uppercase; }
.main-nav { display:flex; flex-direction:column; gap:.45rem; }.nav-item { display:flex; align-items:center; gap:.8rem; padding:.8rem .65rem; border:0; border-radius:2px; background:transparent; color:#758077; text-align:left; font-size:.86rem; }.nav-item span { color:#a4afa6; font:500 .65rem "DM Mono", monospace; }.nav-item.active, .nav-item:hover { background:var(--white); color:var(--ink); box-shadow:0 8px 20px rgba(33,46,40,.06); }.nav-item.active span { color:var(--accent); }
.main-nav .nav-item { background:transparent; color:#426653; box-shadow:none; }.main-nav .nav-item span { color:#8a6817; }.main-nav .nav-item.active { background:transparent; color:#e85d3f; box-shadow:none; font-weight:700; }.main-nav .nav-item.active span { color:#d6ad43; }.main-nav .nav-item:hover { background:transparent; color:#e85d3f; box-shadow:none; }.main-nav .nav-item:hover span { color:#d6ad43; }
.main-nav .nav-section-label { margin:.9rem 0 .05rem; font-weight:700; }.main-nav .nav-section-studio { color:#2f795d; }.main-nav .nav-section-setup { color:#a17816; }.main-nav .nav-section-records { color:#47708c; }.main-nav .nav-section-design { color:#c9533e; }.main-nav .nav-section-production { color:#36734e; }.main-nav .nav-section-administration { color:#80651f; }
.home-link { color:#486a53; text-decoration:none; }.home-link span { color:#6d9b78; font-size:.8rem; }.home-link:hover span { color:#e85d3f; }
.hindi-intake-link { color:#8b6817; text-decoration:none; }.hindi-intake-link span { color:#b0861f; }.hindi-intake-link:hover { color:#6d5111; }.hindi-intake-link:hover span { color:#e85d3f; }
.stamp-studio-nav-link { color:#47708c; text-decoration:none; }.stamp-studio-nav-link span { color:#6a9dbb; }.stamp-studio-nav-link:hover { color:#193f63; }.stamp-studio-nav-link:hover span { color:#e85d3f; }
.automation-nav-link { color:#80651f; text-decoration:none; }.automation-nav-link span { color:#b48719; }.automation-nav-link:hover { color:#e85d3f; }.automation-nav-link:hover span { color:#e85d3f; }
.sidebar-footer { margin-top:auto; }.status-dot { display:flex; align-items:center; gap:.55rem; margin-bottom:1.2rem; color:#78857c; font:500 .65rem "DM Mono", monospace; }.status-dot i { width:7px; height:7px; border-radius:50%; background:#55a477; box-shadow:0 0 0 4px #cce3d3; }.logout-button { padding:0; border:0; background:transparent; color:#9aa69d; font-size:.75rem; }.logout-button:hover { color:var(--ink); }
.content-shell { flex:1; min-width:0; min-height:100vh; padding:2rem clamp(1.25rem,3.5vw,4rem) 3rem; }.topbar { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:1.8rem; }.topbar h2 { margin:.55rem 0 0; font-size:1.7rem; letter-spacing:-.06em; }.topbar #workspace-role-label { color:var(--workspace-accent,#e85d3f); }.user-badge { --workspace-accent:#176d73; --workspace-soft:#d5eceb; --workspace-number:#b9dddd; display:flex; align-items:center; gap:.62rem; padding:0; }.user-badge > span { display:grid; place-items:center; width:36px; height:36px; border-radius:9px; background:var(--workspace-soft); color:var(--workspace-accent); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--workspace-accent) 18%,transparent); font:700 .92rem "Space Grotesk",sans-serif; }.user-badge strong,.user-badge small { display:block; }.user-badge strong { color:var(--ink); font-size:.82rem; letter-spacing:-.02em; }.user-badge small { display:inline-flex; width:max-content; margin-top:.22rem; padding:.16rem .38rem; border:0; border-radius:999px; background:var(--workspace-accent); color:#fff; font:700 .48rem "DM Mono",monospace; letter-spacing:.06em; text-transform:uppercase; }
.notice { position:fixed; z-index:20; right:1.25rem; bottom:1.25rem; display:none; width:min(380px, calc(100vw - 2rem)); margin:0; padding:.9rem 1rem; border:1px solid #b8ddc9; background:#eaf6ee; color:#2f795d; box-shadow:0 16px 36px rgba(33,46,40,.18); font-size:.8rem; line-height:1.4; }.notice.visible { display:block; animation:toast-in .25s ease both; } @keyframes toast-in { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
.view { --view-accent:#e85d3f; --view-soft:#f9e4dc; --view-number:#edc7ba; position:relative; display:none; animation:rise .35s ease both; }.active-view { display:block; }
.page-heading h3 .heading-accent { color:var(--view-accent); }
#view-overview { --view-accent:#e85d3f; --view-soft:#f3df85; --view-number:#ead16a; }
#view-institutes { --view-accent:#367355; --view-soft:#dceee1; --view-number:#c3dfca; }
#view-forms { --view-accent:#356f98; --view-soft:#cfe5f4; --view-number:#b8d7eb; }
#view-batches { --view-accent:#8a6817; --view-soft:#f3df85; --view-number:#ead16a; }
#view-manual { --view-accent:#a84f66; --view-soft:#efc8d7; --view-number:#e7b2c6; }
#view-templates { --view-accent:#176d73; --view-soft:#d5eceb; --view-number:#b9dddd; }
#view-layout-styles { --view-accent:#7655a5; --view-soft:#e5dcf3; --view-number:#d3c4ea; }
#view-library { --view-accent:#4d765a; --view-soft:#dfeade; --view-number:#c7ddca; }
#view-issue { --view-accent:#a55b22; --view-soft:#f4dfad; --view-number:#ebcb85; }
#view-admins { --view-accent:#8b4e61; --view-soft:#efd6df; --view-number:#e5bdcb; }
#view-super-import { --view-accent:#e85d3f; --view-soft:#f9e4dc; --view-number:#edc7ba; }

.super-import-grid { display:grid; grid-template-columns:minmax(0, 1.25fr) minmax(260px, .75fr); gap:14px; align-items:start; }
.super-import-setup { display:grid; gap:8px; padding:1rem 1.1rem; }
.super-import-setup .section-heading { margin-bottom:0; }
.super-import-setup label { gap:.25rem; font-size:.72rem; }
.super-import-setup input,.super-import-setup select,.super-import-setup textarea { padding:.58rem .65rem; font-size:.74rem; }
.super-import-setup textarea { min-height:86px; }
.super-import-destination { padding:8px 10px; border:1px solid color-mix(in srgb, var(--view-accent) 28%, #fff); background:color-mix(in srgb, var(--view-soft) 52%, #fff); color:var(--workspace-muted); font-size:.78rem; line-height:1.3; }
.super-import-destination strong { color:var(--workspace-ink); display:block; }
.super-import-source-panel { border:1px solid color-mix(in srgb, var(--view-accent) 24%, #dbe6dc); background:#fbfdfb; }
.super-import-source-panel summary { display:flex; align-items:center; justify-content:space-between; gap:.7rem; padding:.55rem .65rem; cursor:pointer; list-style:none; }
.super-import-source-panel summary::-webkit-details-marker { display:none; }
.super-import-source-panel summary span,.super-import-source-panel summary strong,.super-import-source-panel summary small { display:block; }
.super-import-source-panel summary strong { color:var(--workspace-ink); font-size:.72rem; }
.super-import-source-panel summary small { margin-top:.12rem; color:var(--workspace-muted); font-size:.6rem; }
.super-import-source-panel summary b { display:grid; place-items:center; width:23px; height:23px; border:1px solid #d4bb55; background:#fff3c5; color:#856b29; font-size:1rem; line-height:1; }
.super-import-source-panel[open] summary { border-bottom:1px solid #dbe6dc; background:#fff9e8; }
.super-import-source-panel[open] summary b { transform:rotate(45deg); }
.super-import-source-body { display:grid; gap:8px; padding:.65rem; }
#super-import-source { border-color:#d7b54b; background:#fff8d9; color:#6e5414; font-weight:700; }
#super-import-source:focus { border-color:#a77c11; box-shadow:0 0 0 3px rgba(215,181,75,.25); }
.super-import-review-action { display:grid; gap:5px; margin-top:8px; padding:.65rem; border-top:1px solid #dbe6dc; background:#fff; }
.super-import-review-action .button { justify-self:start; }
.super-import-review-action .helper,.super-import-review-action .form-error { margin:0; }
.super-import-guide { min-height:190px; }
.super-import-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr); gap:14px; align-items:start; margin:10px 0; }
.super-import-left-column { display:grid; gap:8px; min-width:0; }
.super-import-left-column .super-import-grid { display:block; }
.telegram-import-card { margin-top:0; padding:.85rem 1rem; border-top:3px solid var(--view-accent); }
.super-import-inbox { width:auto; margin:0; padding:.6rem .72rem; border-top:3px solid #8a6817; background:#fffef8; }
.super-import-inbox .section-heading { align-items:center; gap:.55rem; }
.super-import-inbox .section-heading > div { min-width:0; }
.super-import-inbox .section-heading h4 { margin:.08rem 0 .05rem; font-size:.82rem; }
.super-import-inbox .section-heading .eyebrow { margin:0; font-size:.52rem; }
.super-import-inbox .section-heading .muted { max-width:720px; margin:0; font-size:.61rem; line-height:1.25; }
.super-import-inbox .count-pill { padding:.28rem .38rem; font-size:.5rem; }
.super-import-inbox-list { display:grid; gap:.3rem; margin-top:.45rem; }
.super-import-inbox-list > .helper { margin:.1rem 0; font-size:.61rem; }
.super-import-inbox-item { display:flex; align-items:center; justify-content:space-between; gap:.55rem; padding:.4rem .5rem; border:1px solid #e2d7ad; background:#fffdf3; }
.super-import-inbox-item.is-selected { border-color:#8a6817; box-shadow:inset 3px 0 #8a6817; }
.super-import-inbox-item > div { min-width:0; flex:1; }
.super-import-inbox-item strong,.super-import-inbox-item small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.super-import-inbox-item strong { color:#4f431f; font-size:.64rem; }
.super-import-inbox-item small { margin-top:.1rem; color:#817552; font:500 .49rem "DM Mono",monospace; text-transform:uppercase; }
.super-import-inbox-actions { display:flex; flex:0 0 auto; gap:.22rem; }
.super-import-inbox-actions button { border:1px solid #d7c782; padding:.27rem .38rem; background:#fff; color:#705b14; font-size:.51rem; font-weight:700; }
.super-import-inbox-actions button:hover { border-color:#8a6817; background:#fff8dd; }
.super-import-inbox-actions button.danger { border-color:#e2b8ae; color:#ad4439; }
.telegram-import-card .section-heading { align-items:center; gap:.75rem; }
.telegram-import-card .section-heading h4 { margin:.15rem 0 .1rem; font-size:.9rem; }
.telegram-import-card .section-heading .muted { font-size:.7rem; }
.telegram-import-flow { display:flex; flex-wrap:wrap; gap:6px; margin:8px 0; }
.telegram-import-flow span { padding:6px 8px; background:color-mix(in srgb, var(--view-soft) 62%, #fff); color:var(--workspace-muted); font-size:.68rem; }
.telegram-import-card a { color:var(--view-accent); font-weight:700; }
.telegram-import-card > .helper { margin:.3rem 0 0; font-size:.68rem; line-height:1.35; }
.count-pill.is-ready { color:#2f795d; background:#eaf6ee; }
.count-pill.is-pending { color:#9a6817; background:#fff5d9; }
@media (max-width: 800px) { .super-import-layout { grid-template-columns:1fr; }.super-import-grid { grid-template-columns:1fr; }.super-import-inbox { width:100%; }.telegram-import-card { margin-top:0; } }
.page-number { position:absolute; z-index:0; top:-.55rem; right:.8rem; color:var(--view-number); font-family:"Space Grotesk",sans-serif; font-size:10rem; font-weight:700; line-height:1; letter-spacing:-.12em; opacity:.72; pointer-events:none; user-select:none; }.view > :not(.page-number) { position:relative; z-index:1; }
.view .page-heading { min-height:126px; padding:1rem 1.15rem; border-left:5px solid color-mix(in srgb,var(--view-accent) 42%,#fff); background:linear-gradient(100deg,var(--view-soft) 0%,color-mix(in srgb,var(--view-soft) 52%,#fff) 56%,rgba(255,255,255,0) 100%); }
.view .page-heading .eyebrow { color:var(--view-accent); }.view .page-heading h3 { color:#1d2423; font-family:"Space Grotesk",sans-serif; }.view .page-heading > .mono-label,.view .page-heading > .count-pill { padding:.38rem .48rem; background:rgba(255,255,255,.68); color:var(--view-accent); }
.view .page-heading + .surface,.view .page-heading + .two-column > .surface,.view .page-heading + .management-grid > .surface { border-top:3px solid var(--view-accent); }
@keyframes rise { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
.hero-row { display:flex; align-items:flex-end; justify-content:space-between; gap:2rem; margin:0 0 1.7rem; }.hero-row h3 { margin:.7rem 0 0; font-size:clamp(2.5rem,5vw,4.7rem); line-height:.87; letter-spacing:-.09em; }.hero-row h3 em { color:var(--accent); font-style:normal; }.hero-row .button { min-width:185px; }
.stat-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-bottom:1rem; }.stat-card { min-height:125px; padding:1.1rem; display:flex; flex-direction:column; justify-content:space-between; }.stat-card span { font:500 .72rem "DM Mono", monospace; letter-spacing:.1em; text-transform:uppercase; }.stat-card strong { font-size:2.8rem; line-height:1; letter-spacing:-.1em; }.stat-card small { color:#53635a; font-size:.75rem; }.stat-blue { background:var(--blue); }.stat-yellow { background:var(--yellow); }.stat-pink { background:var(--pink); }
.two-column { display:grid; grid-template-columns:1.25fr .75fr; gap:1rem; }.surface { background:var(--white); box-shadow:var(--shadow); }.checklist-card, .note-card { padding:1.5rem; }.section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }.section-heading h4 { margin:0; font-size:1rem; letter-spacing:-.04em; }.step-count, .count-pill { color:var(--muted); font:500 .65rem "DM Mono", monospace; text-transform:uppercase; }.checklist { display:flex; flex-direction:column; margin-top:1.5rem; }.checklist button { display:grid; grid-template-columns:35px 1fr 25px; align-items:center; gap:.6rem; padding:1rem 0; border:0; border-top:1px solid var(--line); background:transparent; text-align:left; }.checklist button:hover { color:var(--accent); }.checklist b { color:#adb8af; font:500 .68rem "DM Mono", monospace; }.checklist strong,.checklist small { display:block; }.checklist strong { font-size:.82rem; }.checklist small { margin-top:.2rem; color:var(--muted); font-size:.69rem; }.checklist i { font-style:normal; text-align:right; }.note-card { background:#eff4ec; }.note-spark { margin-bottom:2.5rem; color:var(--accent); font-size:1.7rem; }.note-card h4 { margin:.7rem 0; font-size:1.5rem; letter-spacing:-.07em; }.note-card p:not(.eyebrow) { color:var(--muted); font-size:.82rem; line-height:1.55; }.note-card .mono-label { display:block; margin-top:2.5rem; color:#88988c; }
.page-heading { align-items:flex-end; margin-bottom:2rem; }.page-heading h3 { margin:.65rem 0 .25rem; font-size:3.5rem; line-height:.9; letter-spacing:-.09em; }.muted { margin:0; color:var(--muted); font-size:.83rem; }.form-layout { align-items:start; }.form-layout > .surface { padding:1.5rem; }.form-layout .section-heading { margin-bottom:1.5rem; }.list-surface { min-height:360px; }.record-list { display:flex; flex-direction:column; gap:.65rem; }.empty-list { padding:3rem 1rem; color:#9aa69d; text-align:center; font-size:.8rem; border:1px dashed var(--line); }.record { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.9rem; background:#f7f9f6; }.record-main strong,.record-main small { display:block; }.record-main strong { font-size:.82rem; }.record-main small { margin-top:.25rem; color:var(--muted); font-size:.68rem; }.record-tag { flex:0 0 auto; padding:.35rem .45rem; color:#557261; background:#dfefe2; font:500 .6rem "DM Mono", monospace; text-transform:uppercase; }.dynamic-fields { display:flex; flex-direction:column; gap:1rem; }.issue-layout { align-items:stretch; }.issue-form-surface { position:relative; overflow:hidden; padding:2rem 1.7rem 1.7rem !important; }.issue-form-surface form { position:relative; z-index:1; max-width:470px; }.result-card { min-height:380px; padding:2rem; display:flex; flex-direction:column; justify-content:center; }.result-icon { color:var(--accent); font-size:2rem; }.result-card h4 { margin:.8rem 0; font-size:1.8rem; line-height:1; letter-spacing:-.07em; }.result-card p:not(.eyebrow) { max-width:320px; color:var(--muted); font-size:.83rem; line-height:1.55; }.empty-result { background:#edf2eb; }.issued-result { background:var(--yellow); }.issued-result .result-icon { color:var(--ink); }.verification-link { display:block; margin-top:1.2rem; padding:.8rem; overflow-wrap:anywhere; background:rgba(255,255,255,.55); color:var(--ink); font:500 .7rem "DM Mono", monospace; }
.section-break { margin-top:.5rem; padding-top:1rem; border-top:1px solid var(--line); }.section-break p { margin:0; }.section-break .helper { margin-top:.45rem; }
.form-section-label { margin-top:.35rem; padding-top:.85rem; border-top:1px solid var(--line); }.form-section-label span,.form-section-label small { display:block; }.form-section-label span { font:600 .68rem "DM Mono", monospace; letter-spacing:.08em; text-transform:uppercase; }.form-section-label small { margin-top:.3rem; color:var(--muted); font-size:.72rem; line-height:1.45; }
.form-quick-setup { display:flex; flex-direction:column; gap:.8rem; padding:.9rem; border:1px solid var(--line); background:#f7f9f6; }.form-basics { align-items:end; }.form-basics label:first-child { flex:1; }.assignment-row { display:grid; grid-template-columns:190px 1fr; gap:.8rem; align-items:end; padding-top:.8rem; border-top:1px solid var(--line); }.assignment-row strong,.assignment-row small { display:block; }.assignment-row strong { font-size:.74rem; }.assignment-row small { margin-top:.25rem; color:var(--muted); font-size:.65rem; line-height:1.35; }.assignment-grid { display:grid; grid-template-columns:1.15fr 1fr 1fr; gap:.55rem; }.assignment-grid label { font-size:.68rem; }.assignment-grid select { padding:.62rem .65rem; font-size:.75rem; }.form-advanced { border:1px solid var(--line); background:#fbfcf9; }.form-advanced summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.75rem .9rem; cursor:pointer; color:var(--ink); font-size:.75rem; font-weight:700; }.form-advanced summary span { color:var(--muted); font:500 .62rem "DM Mono", monospace; text-transform:uppercase; }.form-advanced-body { padding:.1rem .9rem .9rem; border-top:1px solid var(--line); }.form-basics { align-items:end; }.form-basics label:first-child { flex:1; }.smart-starter { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.8rem .9rem; border:1px solid #d9e7db; background:#edf5ef; }.smart-starter strong,.smart-starter small { display:block; }.smart-starter strong { font-size:.76rem; }.smart-starter small { max-width:280px; margin-top:.2rem; color:var(--muted); font-size:.68rem; line-height:1.4; }.smart-starter-controls { display:flex; align-items:center; gap:.55rem; min-width:275px; }.smart-starter-controls select { padding:.62rem .65rem; font-size:.72rem; }.smart-starter-controls .button { flex:0 0 auto; padding:.68rem .75rem; font-size:.72rem; }.field-builder { display:flex; flex-direction:column; gap:.5rem; }.field-row { padding:.65rem .75rem; border:1px solid var(--line); background:#f7f9f6; }.field-compact-row { display:grid; grid-template-columns:minmax(0,1.8fr) 100px 86px 62px 28px; gap:.55rem; align-items:end; }.field-row label { font-size:.68rem; }.field-question,.field-type { min-width:0; }.field-question span,.field-type span { display:block; margin-bottom:.3rem; color:var(--muted); }.field-row input,.field-row select { padding:.62rem .65rem; font-size:.76rem; }.field-row .required-toggle { align-items:center; justify-content:flex-end; gap:.35rem; padding-bottom:.15rem; }.field-row .required-toggle span { color:var(--muted); }.field-row .required-toggle input { width:auto; }.field-detail-toggle,.field-remove { height:34px; padding:0 .5rem; border:1px solid var(--line); background:#fff; color:var(--muted); font-size:.67rem; }.field-detail-toggle:hover { border-color:var(--ink); color:var(--ink); }.field-remove { color:#b23f32; font-size:1rem; }.field-more { margin-top:.65rem; padding-top:.65rem; border-top:1px solid var(--line); }.field-more-grid { display:grid; grid-template-columns:1fr 1fr 1.6fr; gap:.65rem; }.field-options small { margin-top:.2rem; }.add-field-button { width:100%; justify-content:center !important; padding:.7rem .9rem; font-size:.75rem; }
.form-basics { display:grid; grid-template-columns:minmax(0,1fr) 150px; gap:.65rem; align-items:end; }
@media (max-width:620px) { .form-basics { grid-template-columns:1fr; } }
.form-resolution-preview { padding:.68rem .75rem; border-left:3px solid var(--view-accent); background:#eef5fa; }
.form-resolution-preview span,.form-resolution-preview strong,.form-resolution-preview small { display:block; }
.form-resolution-preview span { color:var(--view-accent); font:600 .53rem "DM Mono", monospace; letter-spacing:.08em; text-transform:uppercase; }
.form-resolution-preview strong { margin:.2rem 0 .14rem; font-size:.74rem; }
.form-resolution-preview small { color:#536b7b; font-size:.64rem; line-height:1.38; }
.form-resolution-preview .resolution-fallback { margin-top:.22rem; color:#71808a; }
.form-suggestion-bar { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.7rem .8rem; border:1px solid #b9d8c2; background:#edf5ef; }.form-suggestion-bar > div { min-width:0; }.suggestion-status,.form-suggestion-bar strong,.form-suggestion-bar small { display:block; }.suggestion-status { color:#2f795d; font:500 .59rem "DM Mono", monospace; letter-spacing:.08em; }.form-suggestion-bar strong { margin-top:.18rem; font-size:.72rem; }.form-suggestion-bar small { margin-top:.16rem; color:#557261; font-size:.64rem; line-height:1.35; }.form-suggestion-bar .button { flex:0 0 auto; padding:.58rem .7rem; font-size:.68rem; }.form-suggestion-bar.has-overrides { border-color:#ead390; background:#fff8e2; }.form-suggestion-bar.has-overrides .suggestion-status { color:#8b6819; }.form-suggestion-bar.has-overrides small { color:#76653d; }.form-quick-setup .is-suggested,.form-advanced .is-suggested { border-color:#a8cfb4; background:#f7fcf8; }.form-quick-setup .is-customized,.form-advanced .is-customized { border-color:#e3c76d; background:#fffdf3; }
.field-row.is-new-suggestion { border-color:#ebb080; background:#fff7ef; box-shadow:inset 3px 0 0 #ef6545; }.field-question { position:relative; }.field-suggestion-tag { position:absolute; top:0; right:0; padding:.12rem .3rem; border-radius:99px; background:#ffe0cc; color:#b8472f; font:600 .51rem "DM Mono", monospace; letter-spacing:.04em; text-transform:uppercase; font-style:normal; }
.smart-starter { gap:.7rem; padding:.58rem .65rem; }.smart-starter strong { font-size:.71rem; }.smart-starter small { margin-top:.1rem; font-size:.61rem; line-height:1.28; }.smart-starter-controls { flex-wrap:wrap; justify-content:flex-end; gap:.35rem; min-width:0; }.smart-starter-controls select { padding:.48rem .52rem; font-size:.67rem; }.smart-starter-controls #form-suggested-field { min-width:142px; }.smart-starter-controls .button { padding:.51rem .6rem; font-size:.67rem; background:#ef6545; color:#fff; }.smart-starter-controls .button:hover { background:#d95236; }.smart-starter-controls .button:disabled { opacity:.48; cursor:not-allowed; }
.smart-starter > div:first-child { display:flex; align-items:center; gap:.45rem; min-width:0; white-space:nowrap; }.smart-starter > div:first-child small { margin:0; overflow:hidden; text-overflow:ellipsis; }.smart-starter-controls { flex-wrap:nowrap; }
@media (max-width:980px) { .smart-starter > div:first-child { white-space:normal; }.smart-starter-controls { flex-wrap:wrap; } }
.multi-entry-wrap { margin-top:.65rem; }.multi-entry-grid { min-width:760px; }.multi-grid-row > * { padding:.3rem; }.multi-grid-header { font-size:.52rem; letter-spacing:.045em; }.multi-grid-row input,.multi-grid-row select { padding:.46rem .42rem; font-size:.68rem; }.multi-photo-cell { padding:.25rem !important; }.multi-photo-cell label { width:40px; height:50px; }.multi-row-status { padding:.22rem .25rem; font-size:.5rem; }.multi-row-remove { width:21px; height:21px; font-size:.9rem; }
.multi-row-number { align-self:center; justify-self:center; color:#8a6817; font:600 .58rem "DM Mono", monospace; }
.form-actions { display:flex; align-items:center; gap:.7rem; }.form-actions .button { flex:1; }.button-light { background:#edf2eb; color:var(--ink); }.button-danger { background:#fff0ed; color:#b23f32; }.button-danger:hover { background:#b23f32; color:#fff; }
.record-link { display:inline-block; margin-top:.45rem; padding:0; border:0; background:transparent; color:var(--accent); font-size:.68rem; text-decoration:none; }.record-link:hover { text-decoration:underline; }.record-review { cursor:pointer; }.record-actions { display:flex; flex-wrap:wrap; gap:.8rem; }.record-danger { color:#b23f32; cursor:pointer; }
.form-record.is-unassigned { border:1px dashed #cfd8d0; opacity:.58; }.form-record.is-unassigned:hover { opacity:1; }
.record-tools { position:relative; display:flex; align-items:center; gap:.45rem; flex:0 0 auto; }.action-trigger { display:grid; place-items:center; width:30px; height:30px; border:1px solid var(--line); border-radius:50%; background:var(--white); color:var(--muted); font-weight:700; letter-spacing:.08em; }.action-trigger:hover { border-color:var(--ink); color:var(--ink); }.form-action-menu { position:absolute; z-index:5; top:calc(100% + .4rem); right:0; min-width:125px; padding:.35rem; background:var(--white); border:1px solid var(--line); box-shadow:0 12px 30px rgba(33,46,40,.14); }.form-action-menu button { display:block; width:100%; padding:.55rem .6rem; border:0; background:transparent; color:var(--ink); text-align:left; font-size:.72rem; }.form-action-menu button:hover { background:#edf2eb; }.form-action-menu .danger-action { color:#b23f32; }
.modal { position:fixed; z-index:10; inset:0; display:grid; place-items:center; padding:1rem; }.modal-backdrop { position:absolute; inset:0; background:rgba(29,36,35,.38); backdrop-filter:blur(3px); }.review-panel { position:relative; width:min(620px, 100%); max-height:90vh; overflow:auto; padding:1.5rem; background:var(--white); box-shadow:0 25px 70px rgba(29,36,35,.22); }.review-panel .section-heading { margin-bottom:1.5rem; }.modal-close { border:0; background:transparent; color:var(--muted); font-size:.72rem; }.modal-close:hover { color:var(--ink); }
.import-review-panel { width:min(940px,100%); }.import-review-summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.65rem .75rem; background:#edf5ef; color:#557261; font-size:.66rem; }.import-review-summary strong { color:var(--ink); font-size:.74rem; }.import-review-list { display:flex; flex-direction:column; gap:.6rem; margin-top:.75rem; }.import-review-row { display:grid; grid-template-columns:62px 72px minmax(0,1fr); gap:.65rem; padding:.65rem; border:1px solid var(--line); background:#fbfcf9; }.import-review-pick { align-self:start; color:#557261; font:600 .58rem "DM Mono",monospace; text-transform:uppercase; }.import-review-photo,.import-review-source { width:62px; height:76px; object-fit:cover; border:1px solid var(--line); background:#edf2eb; }.import-review-source { display:grid; place-items:center; padding:.3rem; color:#6b7b70; font:500 .48rem "DM Mono",monospace; text-align:center; text-transform:uppercase; }.import-review-content strong { font-size:.72rem; }.import-review-source-label { margin-left:.35rem; padding:.16rem .32rem; background:#e5f0e7; color:#2f795d; font:600 .5rem "DM Mono",monospace; letter-spacing:.04em; text-transform:uppercase; vertical-align:middle; }.import-review-alert { margin:.18rem 0 .45rem; color:#4c705a; font-size:.6rem; }.import-review-alert.has-alert { color:#a26620; }.import-review-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem; }.import-review-fields label,.import-review-photo-field { color:var(--muted); font-size:.55rem; }.import-review-fields label.import-review-difference { padding:.3rem; border:1px solid #ead390; background:#fff8e2; }.import-review-fields input { width:100%; margin-top:.15rem; padding:.4rem; font-size:.66rem; }.import-review-photo-field { display:flex; flex-direction:column; justify-content:center; min-height:48px; padding:.4rem; border:1px solid #cfe0d2; background:#f2f7f2; }.import-review-photo-field b { margin-top:.16rem; color:#2f795d; font-size:.62rem; }.import-review-actions { display:flex; justify-content:flex-end; gap:.55rem; margin-top:.85rem; }.import-review-actions .button { min-height:34px; padding:.5rem .7rem; font-size:.65rem; }
.review-photo-field { position:relative; display:grid; grid-template-columns:92px 1fr; gap:.9rem; align-items:center; padding:.75rem; border:1px solid #cfe0d2; background:#f2f7f2; }.review-photo-preview { display:grid; width:92px; height:112px; place-items:center; overflow:hidden; border:1px dashed #9fb3a4; background:#e4eee5; color:#66796c; text-align:center; font:600 .58rem "DM Mono", monospace; letter-spacing:.06em; text-transform:uppercase; }.review-photo-preview.has-photo { border-style:solid; background:#dfe8e1; }.review-photo-preview img { width:100%; height:100%; object-fit:cover; }.review-photo-copy strong,.review-photo-copy small { display:block; }.review-photo-copy strong { font-size:.78rem; }.review-photo-copy small { max-width:330px; margin:.3rem 0 .65rem; color:var(--muted); font-size:.66rem; line-height:1.4; }.review-photo-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.45rem; }.review-photo-actions span { color:#65756b; font:600 .57rem "DM Mono", monospace; text-transform:uppercase; }.review-photo-button { min-height:34px; padding:.55rem .75rem; font-size:.68rem; }.review-photo-button:disabled { cursor:not-allowed; opacity:.45; }.review-photo-input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.compact-button { flex:0 0 auto; min-width:180px; }
.multi-entry-surface { padding:1.35rem; }.multi-entry-surface > .section-heading { margin-bottom:1rem; }.multi-entry-surface .helper { margin:.3rem 0 0; }.multi-context-strip { display:grid; grid-template-columns:1fr 1fr 1fr minmax(190px,.9fr); gap:.65rem; align-items:end; padding:.8rem; border:1px solid var(--line); background:#f7f9f6; }.multi-context-strip label { font-size:.68rem; }.multi-context-strip select,.multi-batch-label input { padding:.62rem .65rem; font-size:.75rem; }.multi-context-status { display:flex; align-items:center; min-height:36px; padding:.55rem .65rem; border-left:3px solid #b9d8c2; background:#edf5ef; color:#557261; font-size:.68rem; line-height:1.35; }.multi-batch-label { max-width:360px; margin-top:.85rem; }.multi-entry-empty { margin-top:1rem; padding:1.2rem; border:1px dashed var(--line); color:var(--muted); font-size:.76rem; text-align:center; }.multi-entry-wrap { margin-top:1rem; overflow-x:auto; border:1px solid var(--line); }.multi-entry-grid { min-width:900px; }.multi-grid-row { display:grid; gap:0; min-width:100%; border-top:1px solid var(--line); background:#fff; }.multi-grid-row:first-child { border-top:0; }.multi-grid-row > * { min-width:0; padding:.45rem; border-left:1px solid var(--line); }.multi-grid-row > *:first-child { border-left:0; }.multi-grid-header { background:#edf2eb; color:#657169; font:500 .6rem "DM Mono", monospace; letter-spacing:.07em; text-transform:uppercase; }.multi-grid-header span { display:flex; align-items:center; }.multi-grid-row input,.multi-grid-row select { width:100%; min-width:0; border:1px solid transparent; border-radius:2px; padding:.58rem .55rem; background:#f8faf7; font-size:.74rem; outline:none; }.multi-grid-row input:focus,.multi-grid-row select:focus { border-color:#96bea0; background:#fff; box-shadow:0 0 0 2px rgba(84,140,101,.12); }.multi-photo-cell { display:grid; place-items:center; padding:.35rem !important; }.multi-photo-cell label { position:relative; display:grid; place-items:center; width:48px; height:58px; overflow:hidden; border:1px dashed #aebcb1; background:#edf5ef; color:#557261; cursor:pointer; }.multi-photo-cell input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }.multi-photo-cell img { display:none; width:100%; height:100%; object-fit:cover; }.multi-photo-cell img.visible { display:block; }.multi-photo-cell span { font:500 .52rem "DM Mono", monospace; text-transform:uppercase; }.multi-row-status { align-self:center; justify-self:center; padding:.28rem .35rem; font:500 .56rem "DM Mono", monospace; text-transform:uppercase; }.multi-row-status.waiting { color:#849088; }.multi-row-status.ready { color:#2f795d; background:#eaf6ee; }.multi-row-status.incomplete { color:#8b6819; background:#fff8e2; }.multi-row-remove { align-self:center; justify-self:center; width:24px; height:24px; border:0; background:transparent; color:#b23f32; font-size:1rem; }.multi-row-remove:hover { background:#fff0ed; }.multi-save-bar { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:1rem; padding:.8rem .9rem; background:#edf5ef; border:1px solid #b9d8c2; }.multi-save-bar strong,.multi-save-bar small { display:block; }.multi-save-bar strong { font-size:.78rem; }.multi-save-bar small { margin-top:.15rem; color:#557261; font-size:.65rem; }.multi-save-bar .button { flex:0 0 auto; min-width:215px; }.multi-save-bar .button:disabled { cursor:not-allowed; opacity:.45; }.batches-list-surface { min-height:0; margin-top:1rem; padding:1.35rem; }
.single-entry-wrap { margin-top:1rem; padding:1rem; border:1px solid var(--line); background:#f7f9f6; }.single-entry-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:.75rem; }.single-entry-fields label { min-width:0; font-size:.7rem; }.single-entry-fields input,.single-entry-fields select { margin-top:.3rem; padding:.68rem .7rem; font-size:.78rem; }.single-photo-field { grid-row:span 2; }.single-photo-box { position:relative; display:grid; place-items:center; min-height:122px; margin-top:.3rem; overflow:hidden; border:1px dashed #aebcb1; background:#edf5ef; color:#557261; cursor:pointer; }.single-photo-box input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }.single-photo-box img { display:none; width:100%; height:122px; object-fit:cover; }.single-photo-box img.visible { display:block; }.single-photo-box b { font:500 .62rem "DM Mono", monospace; text-transform:uppercase; }.single-photo-box b.hidden { display:none; }
.multi-mode-toggle { display:flex; overflow:hidden; border:1px solid var(--line); background:#f7f9f6; }.multi-mode-toggle button { padding:.5rem .7rem; border:0; border-left:1px solid var(--line); background:transparent; color:var(--muted); font:500 .63rem "DM Mono", monospace; text-transform:uppercase; }.multi-mode-toggle button:first-child { border-left:0; }.multi-mode-toggle button:hover { color:var(--ink); background:#edf2eb; }.multi-mode-toggle button.active { background:#263b31; color:#fff; }
.photo-fit-note { display:block; margin-top:.35rem; color:#64766a; font-size:.58rem; line-height:1.35; }
.batch-import-strip { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:.85rem; padding:.75rem .85rem; border:1px solid #d8e3d9; background:#f4f8f4; }.batch-import-strip span,.batch-import-strip strong,.batch-import-strip small { display:block; }.batch-import-strip strong { margin-top:.12rem; font-size:.72rem; }.batch-import-strip small,.multi-import-status { margin-top:.16rem; color:#64766a; font-size:.62rem; line-height:1.35; }.batch-import-actions { display:flex; flex:0 0 auto; gap:.45rem; }.batch-import-actions .button { position:relative; min-height:32px; padding:.48rem .62rem; font-size:.62rem; cursor:pointer; }.batch-import-actions input { position:absolute; width:1px; height:1px; overflow:hidden; opacity:0; }.multi-import-status { min-height:1.2em; margin:.4rem 0 0; }.multi-import-status.is-comparing { color:#c94e3d; font-weight:600; }
.batch-ai-help { display:flex; gap:.55rem; margin-top:.5rem; padding:.5rem .7rem; border-left:3px solid var(--view-accent); background:#fbfcf9; color:#617168; font-size:.61rem; line-height:1.4; }.batch-ai-help strong { flex:0 0 auto; color:var(--ink); font-size:.63rem; }.batch-ai-help span { max-width:760px; }
.batch-record { border:1px solid var(--line); background:#fff; }.batch-record + .batch-record { margin-top:.7rem; }.batch-record .record { border:0; border-bottom:1px solid var(--line); }.batch-people { background:#f7f9f6; }.batch-person { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.72rem .9rem .72rem 1.15rem; border-top:1px solid #e0e6df; border-left:3px solid #b9d8c2; }.batch-person:first-child { border-top:0; }.batch-person strong,.batch-person small { display:block; }.batch-person strong { font-size:.76rem; }.batch-person small { margin-top:.15rem; color:var(--muted); font-size:.65rem; }.batch-person-actions { display:flex; flex:0 0 auto; gap:.65rem; }.batch-empty { padding:.8rem 1.1rem; color:var(--muted); font-size:.7rem; }
.card-dashboard { margin-bottom:1rem; }.card-report-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.7rem; }.card-report { min-height:112px; padding:1rem 1.05rem; border:1px solid #dce5da; background:#f7f9f6; }.card-report span,.card-report small { display:block; color:var(--muted); font-size:.66rem; }.card-report strong { display:block; margin:.38rem 0 .18rem; font-size:2rem; letter-spacing:-.08em; }.card-report.report-warm { background:#fff8e8; border-color:#ecdaa5; }.card-report.report-ready { background:#edf5ef; border-color:#b9d8c2; }.card-report.report-issued { background:#edf3fa; border-color:#c4d7ea; }.card-dashboard-tools { display:grid; grid-template-columns:minmax(220px,1.7fr) repeat(3,minmax(135px,.7fr)); gap:.65rem; margin-top:.7rem; padding:.8rem; border:1px solid var(--line); background:#fff; }.card-dashboard-tools label { color:var(--muted); font-size:.64rem; }.card-dashboard-tools input,.card-dashboard-tools select { margin-top:.32rem; padding:.62rem .65rem; font-size:.74rem; }.card-entry-panel { margin-top:1rem; border:1px solid var(--line); background:#f7f9f6; }.card-entry-panel summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 1rem; cursor:pointer; list-style:none; }.card-entry-panel summary::-webkit-details-marker { display:none; }.card-entry-panel summary strong,.card-entry-panel summary small { display:block; }.card-entry-panel summary strong { font-size:.78rem; }.card-entry-panel summary small { margin-top:.18rem; color:var(--muted); font-size:.66rem; }.card-entry-panel summary b { display:grid; place-items:center; width:28px; height:28px; border:1px solid var(--line); color:var(--muted); font-size:1.2rem; }.card-entry-panel[open] summary { border-bottom:1px solid var(--line); background:#edf5ef; }.card-entry-panel[open] summary b { transform:rotate(45deg); }.card-entry-panel .multi-entry-surface { border:0; background:#fff; }.location-record-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.9rem 1rem; background:#edf2eb; }.location-record-header span { color:#657169; font:500 .58rem "DM Mono", monospace; letter-spacing:.08em; }.location-record-header h4 { margin:.18rem 0; font-size:.9rem; }.location-record-header small { color:var(--muted); font-size:.67rem; }.location-record-header > strong { padding:.4rem .55rem; background:#fff; color:#557261; font:500 .62rem "DM Mono", monospace; }.batch-person-actions { align-items:center; }.card-status { padding:.28rem .4rem; font:500 .56rem "DM Mono", monospace; text-transform:uppercase; }.status-submitted,.status-under_review { background:#fff8e2; color:#8b6819; }.status-approved { background:#eaf6ee; color:#2f795d; }.status-card_issued { background:#edf3fa; color:#416d96; }.status-rejected { background:#fff0ed; color:#b23f32; }.status-draft { background:#edf2eb; color:#657169; }
.batch-dashboard { margin-bottom:1rem; }.batch-report-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.7rem; }.batch-report { min-height:112px; padding:1rem 1.05rem; border:1px solid #dce5da; background:#f7f9f6; }.batch-report span,.batch-report small { display:block; color:var(--muted); font-size:.66rem; }.batch-report strong { display:block; margin:.38rem 0 .18rem; font-size:2rem; letter-spacing:-.08em; }.batch-report.report-warm { background:#fff8e8; border-color:#ecdaa5; }.batch-report.report-ready { background:#edf5ef; border-color:#b9d8c2; }.batch-report.report-issued { background:#edf3fa; border-color:#c4d7ea; }.batch-dashboard-tools { display:grid; grid-template-columns:minmax(220px,1.7fr) repeat(3,minmax(135px,.7fr)); gap:.65rem; margin-top:.7rem; padding:.8rem; border:1px solid var(--line); background:#fff; }.batch-dashboard-tools label { color:var(--muted); font-size:.64rem; }.batch-dashboard-tools input,.batch-dashboard-tools select { margin-top:.32rem; padding:.62rem .65rem; font-size:.74rem; }.batch-merge-bar { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:.7rem; padding:.75rem .85rem; border:1px solid #d9e7db; background:#edf5ef; }.batch-merge-bar strong,.batch-merge-bar small { display:block; }.batch-merge-bar strong { font-size:.75rem; }.batch-merge-bar small { margin-top:.15rem; color:#557261; font-size:.65rem; }.batch-merge-bar .button { min-width:175px; }.batch-entry-panel { margin-top:1rem; border:1px solid var(--line); background:#f7f9f6; }.batch-entry-panel summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 1rem; cursor:pointer; list-style:none; }.batch-entry-panel summary::-webkit-details-marker { display:none; }.batch-entry-panel summary strong,.batch-entry-panel summary small { display:block; }.batch-entry-panel summary strong { font-size:.78rem; }.batch-entry-panel summary small { margin-top:.18rem; color:var(--muted); font-size:.66rem; }.batch-entry-panel summary b { display:grid; place-items:center; width:28px; height:28px; border:1px solid var(--line); color:var(--muted); font-size:1.2rem; }.batch-entry-panel[open] summary { border-bottom:1px solid var(--line); background:#edf5ef; }.batch-entry-panel[open] summary b { transform:rotate(45deg); }.batch-entry-panel .multi-entry-surface { border:0; background:#fff; }.batch-unit { border-top:1px solid #dfe6de; }.batch-unit-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.7rem .9rem; background:#fff; }.batch-unit-header label { display:flex; align-items:center; gap:.45rem; color:#557261; font-size:.67rem; white-space:nowrap; }.batch-unit-header input { width:auto; }.batch-unit-header strong,.batch-unit-header small { display:block; }.batch-unit-header strong { font-size:.74rem; }.batch-unit-header small { margin-top:.12rem; color:var(--muted); font-size:.64rem; }
.batch-table-wrap { overflow-x:auto; border-top:1px solid #dfe6de; background:#fff; }.batch-data-table { width:100%; min-width:610px; border-collapse:collapse; table-layout:auto; font-size:.67rem; }.batch-data-table th { padding:.42rem .5rem; background:#f2f6f1; color:#657169; font:500 .55rem "DM Mono", monospace; letter-spacing:.06em; text-align:left; text-transform:uppercase; white-space:nowrap; }.batch-data-table td { max-width:160px; min-width:0; padding:.42rem .5rem; border-top:1px solid #e4e9e3; color:#39483f; vertical-align:middle; overflow-wrap:anywhere; }.batch-data-table td.batch-row-number { width:14px; min-width:14px; max-width:14px; padding:0; color:#8a6817; font:600 .48rem "DM Mono", monospace; text-align:center; }.batch-data-table th:nth-child(2),.batch-data-table td:nth-child(2) { min-width:125px; max-width:180px; }.batch-data-table td strong,.batch-data-table td small { display:block; }.batch-data-table td strong { font-size:.69rem; }.batch-data-table td small { margin-top:.08rem; color:var(--muted); font-size:.57rem; }.batch-table-photo { display:block; width:26px; height:34px; object-fit:cover; border:1px solid #c9d7cb; background:#edf5ef; }.cell-empty { color:#a6afa8; }.batch-table-actions { min-width:105px; white-space:nowrap; }.batch-table-actions .record-link { font-size:.63rem; }.batch-table-actions .record-link + .record-link { margin-left:.4rem; }
.batch-table-photo-upload { position:relative; display:grid; width:30px; height:38px; place-items:center; cursor:pointer; }
.batch-table-photo-upload input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.batch-table-photo-empty { display:grid; width:26px; height:34px; place-items:center; border:1px dashed #9eb8a5; background:#edf5ef; color:#557261; font:500 .46rem/1.05 "DM Mono",monospace; text-align:center; text-transform:uppercase; }
.batch-table-photo-empty b { color:#a27616; font-size:.78rem; line-height:.7; }
.batch-table-photo-upload:hover .batch-table-photo,.batch-table-photo-upload:hover .batch-table-photo-empty,.batch-table-photo-upload:focus-within .batch-table-photo,.batch-table-photo-upload:focus-within .batch-table-photo-empty { outline:2px solid #d8c77c; outline-offset:1px; }
.batch-data-table th:first-child { width:14px; min-width:14px; max-width:14px; padding:0; text-align:center; }
.batch-data-table td.batch-row-number { width:14px; min-width:14px; max-width:14px; padding:0; color:#8a6817; font:600 .48rem "DM Mono", monospace; text-align:center; }
.batch-row-select { width:28px; min-width:28px !important; max-width:28px; padding:.2rem !important; text-align:center; }.batch-row-select input,.batch-select-heading input { width:14px; height:14px; margin:0; accent-color:#8a6817; }.batch-select-heading { width:28px; min-width:28px; padding:.2rem !important; text-align:center !important; }.batch-unit-toolbar { display:flex; align-items:center; justify-content:flex-end; gap:.28rem; }.batch-unit-toolbar span { margin-right:.2rem; color:#7b887e; font:500 .54rem "DM Mono", monospace; text-transform:uppercase; }.batch-unit-toolbar button { border:1px solid #cfdacf; padding:.28rem .38rem; background:#f7faf7; color:#365744; font:600 .57rem "Space Grotesk", sans-serif; cursor:pointer; }.batch-unit-toolbar button:hover { background:#e7f1e9; }.batch-unit-toolbar button:disabled { cursor:not-allowed; opacity:.42; }.batch-unit-toolbar button.record-danger { color:#b23f32; }
.management-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(285px,1fr)); align-items:start; gap:1rem; }
.management-card { min-width:0; padding:1.35rem; }
.management-card > .section-heading { margin-bottom:1.25rem; }
.type-entry-panel { margin-bottom:1rem; border:1px solid var(--line); background:#f7f9f6; }
.management-card > .section-heading { margin-bottom:.55rem; gap:.55rem; }
.management-card > .section-heading h4 { font-size:.78rem; }
.management-card > .section-heading .mono-label { padding:.22rem .35rem; font-size:.55rem; }
.management-card .type-entry-panel,
.management-card .type-entry-panel > form,
.management-card input,
.management-card select,
.management-card textarea { min-width:0; max-width:100%; box-sizing:border-box; }
.type-entry-panel summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.72rem .8rem; cursor:pointer; list-style:none; }
.type-entry-panel summary::-webkit-details-marker { display:none; }
.type-entry-panel summary strong,.type-entry-panel summary small { display:block; }
.type-entry-panel summary strong { font-size:.72rem; }
.type-entry-panel summary small { margin-top:.12rem; color:var(--muted); font-size:.62rem; }
.type-entry-panel summary b { display:grid; place-items:center; width:25px; height:25px; border:1px solid #ead390; background:#fff8e2; color:#8a6817; font-size:1.05rem; }
.type-entry-panel[open] summary { border-bottom:1px solid var(--line); background:#edf5ef; }
.type-entry-panel[open] summary b { transform:rotate(45deg); }
.type-entry-panel > form { padding:.85rem; background:#fff; }
.auto-code-note { margin:0; padding:.58rem .65rem; border:1px solid #d9e7db; background:#edf5ef; color:#557261; font-size:.63rem; }
.auto-code-note strong,.auto-code-note span { display:block; }.auto-code-note strong { color:#2f5f48; font-size:.67rem; }.auto-code-note span { margin-top:.12rem; }
.branch-management-card { display:grid; grid-template-columns:minmax(240px,.78fr) minmax(320px,1.22fr); gap:1rem; align-items:start; }
.branch-management-card > .section-heading { grid-column:1 / -1; margin-bottom:0; }
.branch-management-card > #branch-entry-panel { min-width:0; }
.branch-management-card > #branches-list { min-width:0; max-height:320px; margin-top:0; padding-top:0; overflow:auto; border-top:0; }
.branch-management-card .form-actions { margin-top:.2rem; }
.compact-list { max-height:320px; margin-top:1.4rem; padding-top:1rem; overflow:auto; border-top:1px solid var(--line); }
#institutes-list { max-height:none; overflow:visible; }
.mini-record { align-items:flex-start; padding:.75rem; }
.mini-record .record-link { flex:0 0 auto; margin:0; }
.mini-record-actions { display:flex; flex:0 0 auto; align-items:center; gap:.7rem; }
.branch-record { position:relative; padding-right:3.8rem; min-height:58px; }
.branch-record-actions { position:absolute; top:.32rem; right:0; bottom:.32rem; display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between; gap:0; }
.branch-record-actions .record-link { margin:0; line-height:1.2; }
.management-card .mini-record { border-left:0; }
.management-card .mini-record.group-color-0 { background:#edf5ef; }
.management-card .mini-record.group-color-1 { background:#edf3fa; }
.management-card .mini-record.group-color-2 { background:#faf4dc; }
.management-card .mini-record.group-color-3 { background:#f8edf1; }
.management-card .mini-record.group-color-4 { background:#f3efea; }
.ai-provider-strip { display:grid; grid-template-columns:auto auto minmax(240px,1fr); align-items:center; gap:1.25rem; margin-bottom:1rem; padding:.75rem .9rem; border:1px solid #d6e4d8; background:#edf5ef; }.ai-provider-strip > div { display:flex; align-items:center; gap:.55rem; min-width:150px; }.ai-provider-strip i { width:8px; height:8px; flex:0 0 auto; border-radius:50%; background:#c7a84e; box-shadow:0 0 0 4px #f7ebbe; }.ai-provider-strip i.connected { background:#3e9a68; box-shadow:0 0 0 4px #cce5d4; }.ai-provider-strip strong,.ai-provider-strip small { display:block; }.ai-provider-strip strong { font-size:.69rem; }.ai-provider-strip small { margin-top:.12rem; color:#718079; font-size:.58rem; }.ai-provider-strip p { margin:0; color:#557261; font-size:.66rem; line-height:1.4; text-align:right; }
.ai-studio-grid { display:grid; grid-template-columns:minmax(300px,390px) minmax(480px,1fr); align-items:start; gap:1rem; }.ai-brief-panel,.ai-preview-panel { min-width:0; padding:1.35rem; }.ai-brief-panel { position:sticky; top:1rem; }.ai-brief-panel > .section-heading { margin-bottom:1.15rem; }.ai-source-grid { display:grid; grid-template-columns:1fr 1fr; gap:.6rem; }.ai-style-picker { padding:.7rem; border:1px solid var(--line); background:#f7f9f6; }.ai-style-picker > span { display:block; margin-bottom:.5rem; color:var(--muted); font-size:.67rem; font-weight:600; }.ai-style-picker > div { display:flex; flex-wrap:wrap; gap:.35rem; }.ai-style-picker button { border:1px solid #cbd8cd; border-radius:20px; padding:.36rem .55rem; background:#fff; color:#557261; font-size:.63rem; }.ai-style-picker button:hover,.ai-style-picker button.active { border-color:#557261; background:#dcebe0; color:#274f3c; }.ai-option-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:.55rem; }.ai-option-grid label,.ai-source-grid label { font-size:.68rem; }.ai-option-grid select,.ai-source-grid select { padding:.65rem; font-size:.72rem; }
.ai-preview-panel { overflow:hidden; background:#fbfcf9; }.ai-preview-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }.ai-preview-heading h4 { margin:.35rem 0 0; font-size:1.15rem; }.ai-side-toggle { display:flex; padding:.14rem; border:1px solid var(--line); background:#edf2eb; }.ai-side-toggle button { border:0; padding:.4rem .62rem; background:transparent; color:var(--muted); font:500 .6rem "DM Mono", monospace; text-transform:uppercase; }.ai-side-toggle button.active { background:var(--ink); color:#fff; }.ai-card-stage { display:grid; min-height:390px; place-items:center; margin:1rem 0; padding:1.5rem; overflow:hidden; background-color:#e7ece5; background-image:linear-gradient(45deg,rgba(74,94,80,.05) 25%,transparent 25%),linear-gradient(-45deg,rgba(74,94,80,.05) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(74,94,80,.05) 75%),linear-gradient(-45deg,transparent 75%,rgba(74,94,80,.05) 75%); background-position:0 0,0 8px,8px -8px,-8px 0; background-size:16px 16px; }.ai-card-preview { position:relative; width:min(100%,650px); aspect-ratio:856/540; overflow:hidden; border-radius:14px; background:#fff; box-shadow:0 26px 55px rgba(26,39,31,.2); isolation:isolate; }.ai-card-preview.is-portrait { width:min(100%,365px); aspect-ratio:540/856; }.ai-card-preview.is-empty { display:grid; place-items:center; border:1px dashed #b9c7bb; border-radius:4px; background:rgba(255,255,255,.6); box-shadow:none; }.ai-preview-empty { display:flex; max-width:250px; flex-direction:column; align-items:center; color:#718079; text-align:center; }.ai-preview-empty b { display:grid; place-items:center; width:48px; height:48px; margin-bottom:.8rem; border-radius:50%; background:var(--yellow); color:var(--ink); font:700 .8rem "DM Mono", monospace; }.ai-preview-empty strong { color:var(--ink); font-size:.85rem; }.ai-preview-empty span { margin-top:.35rem; font-size:.68rem; line-height:1.45; }.ai-card-artwork { position:absolute; z-index:-2; inset:0; background-position:center; background-size:cover; }.ai-card-tint { position:absolute; z-index:-1; inset:0; }.ai-card-layer { position:absolute; display:flex; min-width:0; overflow:hidden; line-height:1.05; }.ai-card-layer.layer-text { align-items:center; text-transform:none; }.ai-card-layer.layer-shape { opacity:1; }.ai-card-layer.layer-photo { align-items:center; justify-content:center; background:#d9e5dc; color:#52695b; font:600 10px "DM Mono", monospace; letter-spacing:.08em; }.ai-card-layer.layer-photo:before { position:absolute; top:20%; width:34%; aspect-ratio:1; border-radius:50%; background:#97aa9c; content:""; }.ai-card-layer.layer-photo:after { position:absolute; bottom:-8%; width:68%; height:50%; border-radius:50% 50% 0 0; background:#97aa9c; content:""; }.ai-card-layer.layer-photo span { position:relative; z-index:1; margin-top:72%; }.ai-card-layer.layer-logo { align-items:center; justify-content:center; border:1px solid currentColor; font:700 10px "DM Mono", monospace; letter-spacing:.08em; }.ai-card-layer.layer-logo img { width:100%; height:100%; object-fit:contain; }.ai-card-layer.layer-qr { display:grid; place-items:center; padding:8px; background:#fff; color:#17201d; font:600 8px "DM Mono", monospace; text-align:center; }.ai-card-layer.layer-qr:before { width:75%; aspect-ratio:1; margin-bottom:4px; background:repeating-conic-gradient(#17201d 0 25%,#fff 0 50%) 50%/10px 10px; border:5px solid #17201d; content:""; }
.ai-concept-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.55rem; }.ai-concept-choice { min-width:0; border:1px solid var(--line); padding:.65rem; background:#fff; text-align:left; }.ai-concept-choice:hover,.ai-concept-choice.active { border-color:#6f927a; box-shadow:inset 0 0 0 1px #6f927a; }.ai-concept-choice strong,.ai-concept-choice small { display:block; }.ai-concept-choice strong { overflow:hidden; font-size:.72rem; text-overflow:ellipsis; white-space:nowrap; }.ai-concept-choice small { min-height:2.5em; margin-top:.3rem; color:var(--muted); font-size:.58rem; line-height:1.3; }.ai-palette-dots { display:flex; gap:.22rem; margin-top:.5rem; }.ai-palette-dots i { width:13px; height:13px; border:1px solid rgba(20,30,25,.12); border-radius:50%; }.ai-template-actions { display:grid; grid-template-columns:auto minmax(110px,.5fr) minmax(185px,.8fr) auto; align-items:end; gap:.6rem; margin-top:.75rem; padding-top:.75rem; border-top:1px solid var(--line); }.ai-template-actions label { font-size:.65rem; }.ai-template-actions select { padding:.65rem; font-size:.72rem; }.ai-template-actions .button { min-height:40px; padding:.7rem .8rem; font-size:.7rem; }.ai-template-actions .button:disabled { cursor:not-allowed; opacity:.42; }.ai-preview-note { margin:.65rem 0 0; color:#718079; font-size:.63rem; line-height:1.4; }
.ai-template-library { margin-top:1rem; padding:1.35rem; }.ai-template-library > .section-heading { margin-bottom:1rem; }.ai-template-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr)); gap:.65rem; }.ai-template-record { display:flex; min-width:0; align-items:center; gap:.7rem; padding:.75rem; border:1px solid var(--line); background:#f7f9f6; }.ai-template-swatch { width:48px; height:48px; flex:0 0 auto; border-radius:4px; box-shadow:inset 0 0 0 1px rgba(20,30,25,.1); }.ai-template-copy { min-width:0; flex:1; }.ai-template-record strong,.ai-template-record small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.ai-template-record strong { font-size:.74rem; }.ai-template-record small { margin-top:.2rem; color:var(--muted); font-size:.6rem; }.ai-template-record-actions { display:flex; flex:0 0 auto; align-items:center; gap:.15rem; }.ai-template-record button { flex:0 0 auto; border:0; padding:.3rem; background:transparent; color:var(--accent); font-size:.63rem; }.ai-template-record button:hover { text-decoration:underline; }.ai-template-record button.record-danger { color:#b64d42; }
.ai-card-preview { container-type:inline-size; }
.ai-card-layer.layer-photo img { position:relative; z-index:1; display:block; width:100%; height:100%; object-fit:cover; }
.brand-kit-panel { display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding:.7rem; border:1px solid #cbd8cd; background:#f7f9f6; }.brand-kit-panel .eyebrow { margin:0 0 .15rem; }.brand-kit-panel strong { display:block; font-size:.68rem; }.brand-kit-controls { display:flex; align-items:end; gap:.38rem; }.brand-kit-controls label { color:var(--muted); font-size:.58rem; }.brand-kit-controls input { display:block; width:32px; height:28px; margin-top:.2rem; padding:2px; border:1px solid var(--line); background:#fff; }.brand-kit-controls .button { min-height:28px; padding:.35rem .5rem; font-size:.58rem; }
.layer-editor { margin-top:.85rem; padding-top:.8rem; border-top:1px solid var(--line); }.layer-editor .section-heading { margin-bottom:.55rem; }.layer-editor h4 { margin:.2rem 0 0; font-size:.86rem; }.ai-layer-list { display:flex; gap:.35rem; padding-bottom:.35rem; overflow-x:auto; }.ai-layer-list .muted { margin:0; font-size:.65rem; }.ai-layer-item { display:flex; min-width:110px; flex-direction:column; gap:.18rem; border:1px solid var(--line); padding:.45rem .5rem; background:#fff; text-align:left; }.ai-layer-item.active { border-color:#0d6e73; box-shadow:inset 0 0 0 1px #0d6e73; }.ai-layer-item span { color:#718079; font:600 .52rem "DM Mono", monospace; text-transform:uppercase; }.ai-layer-item strong { overflow:hidden; font-size:.59rem; text-overflow:ellipsis; white-space:nowrap; }.ai-layer-controls { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:.38rem; margin-top:.45rem; }.ai-layer-controls label { color:var(--muted); font-size:.55rem; }.ai-layer-controls input { width:100%; margin-top:.16rem; padding:.38rem; font-size:.66rem; }.ai-card-layer { cursor:pointer; }.ai-card-layer.is-selected { outline:2px dashed #f0b429; outline-offset:2px; }
.ai-card-layer.layer-shape { z-index:-1; background:var(--shape-color); }.ai-card-layer.layer-shape.shape-ellipse { border-radius:50%; }.ai-card-layer.layer-shape.shape-wave { border-radius:50% 50% 0 0 / 35% 35% 0 0; }.ai-card-layer.layer-shape.shape-diagonal { clip-path:polygon(0 0,100% 0,82% 100%,0 100%); }.ai-card-layer.layer-shape.shape-dots { background-color:transparent; background-image:radial-gradient(var(--shape-color) 1.5px,transparent 1.8px); background-size:12px 12px; }.ai-card-layer.layer-shape.shape-line { height:max(2px,10%); border-radius:999px; }
@media (max-width:1100px) { .ai-studio-grid { grid-template-columns:1fr; }.ai-brief-panel { position:static; }.ai-card-stage { min-height:350px; } }
@media (max-width:900px) { .login-shell { grid-template-columns:1fr; }.login-art { grid-column:auto; grid-row:auto; min-height:420px; }.login-panel { grid-column:auto; grid-row:auto; padding:2.5rem 8vw; }.app-shell { display:block; }.sidebar { width:auto; min-height:0; padding:1.25rem 1.5rem; }.project-version { margin-bottom:1rem; }.main-nav { flex-direction:row; overflow-x:auto; }.nav-item { flex:0 0 auto; }.sidebar-footer { display:none; }.content-shell { padding:2rem 1.5rem 4rem; } }
@media (max-width:620px) { .hero-row, .topbar, .page-heading { align-items:flex-start; flex-direction:column; }.hero-row .button, .compact-button { width:100%; }.stat-grid, .two-column { grid-template-columns:1fr; }.management-grid { grid-template-columns:1fr; }.assignment-row { grid-template-columns:1fr; }.assignment-grid { grid-template-columns:1fr; }.form-advanced summary { align-items:flex-start; flex-direction:column; }.form-suggestion-bar { align-items:stretch; flex-direction:column; }.form-suggestion-bar .button { width:100%; }.smart-starter { align-items:stretch; flex-direction:column; }.smart-starter-controls { min-width:0; }.field-compact-row { grid-template-columns:1fr 92px 72px 56px 28px; gap:.4rem; }.field-more-grid { grid-template-columns:1fr; }.field-row .required-toggle { justify-content:flex-start; }.multi-context-strip { grid-template-columns:1fr; }.multi-mode-toggle { width:100%; }.multi-mode-toggle button { flex:1; }.multi-save-bar { align-items:stretch; flex-direction:column; }.multi-save-bar .button { width:100%; }.batch-person { align-items:flex-start; flex-direction:column; }.batch-person-actions { width:100%; }.page-heading h3 { font-size:2.8rem; }.login-art { min-height:330px; }.id-card-illustration { margin-bottom:3rem; }.login-art p { display:none; } }
@media (min-width:901px) and (max-height:850px) { .content-shell { padding-top:1.35rem; padding-bottom:2rem; }.topbar { margin-bottom:1.2rem; }.hero-row { margin-bottom:1.2rem; }.hero-row h3 { font-size:clamp(2.35rem,4.8vw,4rem); }.stat-card { min-height:105px; padding:.9rem 1rem; }.stat-card strong { font-size:2.4rem; }.checklist-card, .note-card { padding:1.15rem; }.checklist { margin-top:.8rem; }.checklist button { padding:.65rem 0; }.note-spark { margin-bottom:1.2rem; }.note-card .mono-label { margin-top:1.2rem; } }
.login-panel h1 em { color:var(--accent); font-style:normal; }
@media (max-width:620px) { .card-report-grid,.card-dashboard-tools { grid-template-columns:1fr 1fr; }.card-dashboard-tools label:first-child { grid-column:1 / -1; }.batch-person-actions { width:100%; flex-wrap:wrap; }.location-record-header { align-items:flex-start; flex-direction:column; } }
@media (max-width:620px) { .batch-report-grid,.batch-dashboard-tools { grid-template-columns:1fr 1fr; }.batch-dashboard-tools label:first-child { grid-column:1 / -1; }.batch-merge-bar { align-items:stretch; flex-direction:column; }.batch-merge-bar .button { width:100%; }.batch-unit-header { align-items:flex-start; flex-direction:column; } }
@media (max-width:620px) { .single-entry-fields { grid-template-columns:1fr; }.single-photo-field { grid-row:auto; } }
.institutes-page-layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(280px,.65fr); gap:1rem; align-items:stretch; }
.institutes-page-layout .branch-management-card { grid-column:1 / -1; }
.institutes-side-rail { display:flex; min-width:0; flex-direction:column; gap:1rem; }
.institutes-side-rail > .branch-management-card { grid-template-columns:1fr; padding:1rem; }.institutes-side-rail > .branch-management-card > .section-heading { grid-column:auto; }.institutes-side-rail > .branch-management-card > #branches-list { max-height:none; margin-top:.35rem; padding-top:.7rem; border-top:1px solid var(--line); }
.forms-side-rail { display:flex; min-width:0; flex-direction:column; gap:1rem; }
.forms-side-rail .list-surface { min-height:0; padding:1.5rem; border-top:3px solid var(--view-accent); }
.institute-admin-summary { padding:1rem; border-top:3px solid var(--view-accent); background:#fff; }
.institute-admin-summary > span,.institute-admin-summary strong,.institute-admin-summary small { display:block; }
.institute-admin-summary > span { color:var(--view-accent); font:600 .54rem "DM Mono", monospace; letter-spacing:.1em; text-transform:uppercase; }
.institute-admin-summary > strong { margin:.35rem 0 .18rem; font-size:.9rem; line-height:1.15; letter-spacing:-.04em; }
.institute-admin-summary > small { color:var(--muted); font-size:.62rem; line-height:1.4; }
.managed-branch { margin-top:.8rem; padding:.7rem; border-top:1px solid color-mix(in srgb,var(--view-accent) 35%,#fff); background:var(--view-soft); }
.managed-branch span,.managed-branch strong,.managed-branch small { display:block; }
.managed-branch span { color:var(--view-accent); font:600 .48rem "DM Mono", monospace; letter-spacing:.08em; text-transform:uppercase; }
.managed-branch strong { margin:.25rem 0 .16rem; font-size:.72rem; line-height:1.25; }
.managed-branch small { color:#587064; font-size:.58rem; line-height:1.38; }
.managed-branch + .managed-branch { margin-top:.5rem; }
.managed-institute-heading { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:.45rem; }.managed-institute-heading > div { min-width:0; }.managed-institute-heading .record-link,.managed-branch .record-link { margin-top:.35rem; padding:0; border:0; background:transparent; color:var(--view-accent); font-size:.57rem; font-weight:700; text-align:left; }.managed-institute-heading .record-link { margin-top:.1rem; white-space:nowrap; }
.branch-management-card.is-institute-admin { grid-template-columns:minmax(0,1fr); }
.branch-management-card.is-institute-admin > #branch-create { max-width:620px; }
.branch-signature-field { display:flex; flex-direction:column; gap:.32rem; }
.branch-signature-field > .helper { overflow:hidden; font-size:.57rem; text-overflow:ellipsis; white-space:nowrap; }
.branch-code-control { display:flex; align-items:center; gap:.55rem; }
.branch-code-control input { flex:1; }
.branch-code-control input[readonly] { cursor:default; background:#f4f7f4; color:#65756b; }
.branch-code-control .record-link { flex:0 0 auto; margin:0; white-space:nowrap; }
.branch-signature-field > span { font-size:.7rem; }
.branch-signature-upload { position:relative; display:grid; grid-template-columns:88px minmax(0,1fr); gap:.65rem; align-items:center; padding:.55rem; border:1px solid #c8d9cc; background:#f5f8f5; cursor:pointer; }
.branch-signature-upload:hover { border-color:var(--view-accent); background:var(--view-soft); }
.branch-signature-upload input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.branch-signature-thumb { position:relative; display:grid; width:88px; height:48px; place-items:center; overflow:hidden; border:1px dashed #aebfb1; background-color:#fff; background-image:linear-gradient(45deg,#eef2ee 25%,transparent 25%),linear-gradient(-45deg,#eef2ee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eef2ee 75%),linear-gradient(-45deg,transparent 75%,#eef2ee 75%); background-position:0 0,0 6px,6px -6px,-6px 0; background-size:12px 12px; }
.branch-signature-thumb img { display:none; width:100%; height:100%; object-fit:contain; }
.branch-signature-thumb img.visible { display:block; }
.branch-signature-thumb b { color:#66806d; font:600 .5rem \"DM Mono\", monospace; letter-spacing:.05em; text-transform:uppercase; }
.branch-signature-thumb b.hidden { display:none; }
.branch-signature-upload strong,.branch-signature-upload small { display:block; }
.branch-signature-upload strong { font-size:.68rem; }
.branch-signature-upload small { margin-top:.18rem; line-height:1.35; }
.institute-logo-field { display:grid; gap:.4rem; }.institute-logo-field > span { color:var(--muted); font-size:.8rem; font-weight:600; }.institute-logo-upload { position:relative; display:grid; grid-template-columns:64px minmax(0,1fr); gap:.65rem; align-items:center; padding:.5rem; border:1px solid #c8d9cc; background:#f5f8f5; cursor:pointer; }.institute-logo-upload:hover { border-color:var(--view-accent); background:var(--view-soft); }.institute-logo-upload input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }.institute-logo-thumb { position:relative; display:grid; width:64px; height:52px; place-items:center; overflow:hidden; border:1px dashed #aebfb1; background:#fff; }.institute-logo-thumb img { display:none; width:100%; height:100%; object-fit:contain; }.institute-logo-thumb img.visible { display:block; }.institute-logo-thumb b { color:#66806d; font:600 .5rem "DM Mono",monospace; letter-spacing:.05em; text-transform:uppercase; }.institute-logo-thumb b.hidden { display:none; }.institute-logo-upload strong,.institute-logo-upload small { display:block; }.institute-logo-upload strong { font-size:.68rem; }.institute-logo-upload small { margin-top:.15rem; line-height:1.35; }
.institute-note-card { flex:1; min-height:360px; border-top:3px solid var(--view-accent); background:var(--view-soft); }
.institute-note-card h4 { color:var(--accent); }
.institute-note-card .note-spark,.institute-note-card .eyebrow,.institute-note-card .mono-label { color:var(--view-accent); }
.forms-context-guide { min-height:275px; border-top:3px solid var(--view-accent); background:var(--view-soft); }
.forms-context-guide h4 { color:var(--accent); }
.forms-context-guide .note-spark,.forms-context-guide .eyebrow,.forms-context-guide .mono-label { color:var(--view-accent); }
.forms-context-guide p strong { color:var(--ink); }
.view .page-heading + .institutes-page-layout .surface { border-top:3px solid var(--view-accent); }
.branch-record { position:relative; align-items:center; gap:.45rem; padding:.38rem 3.8rem .38rem 0; min-height:58px; }.branch-record .record-main { min-width:0; }.branch-record .record-main strong { font-size:.76rem; }.branch-record .record-main > small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.58rem; }.branch-record-meta { display:flex; min-width:0; flex-wrap:wrap; gap:.15rem .35rem; margin-top:.14rem; color:#839087; font:500 .49rem "DM Mono",monospace; text-transform:uppercase; }.branch-record-meta span { overflow:hidden; max-width:190px; text-overflow:ellipsis; white-space:nowrap; }.branch-record-meta span + span { padding-left:.35rem; border-left:1px solid var(--line); }.branch-record-actions { position:absolute; top:.32rem; right:0; bottom:.32rem; display:flex; flex:0 0 auto; flex-direction:column; align-items:flex-end; justify-content:space-between; gap:0; white-space:nowrap; }.branch-record-actions .record-link { margin:0; font-size:.61rem; line-height:1.2; }
@media (max-width:900px) { .institutes-page-layout { grid-template-columns:1fr; }.institute-note-card { min-height:0; } }
.branch-record-actions { flex-direction:column; align-items:flex-end; gap:.08rem; }
.branch-record-meta .signature-ready { color:#2f795d; font-weight:700; }
.branch-record-meta .signature-missing { color:#b23f32; font-weight:700; }
.layer-signature { gap:.12em; }
.layer-signature .signature-art { display:flex; width:100%; min-height:0; flex:1 1 auto; align-items:center; justify-content:center; }
.layer-signature .signature-caption { display:block; flex:0 0 auto; max-width:100%; overflow:hidden; padding:0 .2em .1em; color:inherit; font:inherit; line-height:1; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width:900px) { .branch-management-card { grid-template-columns:1fr; }.branch-management-card > .section-heading { grid-column:auto; }.branch-management-card > #branches-list { max-height:none; margin-top:.35rem; padding-top:.8rem; border-top:1px solid var(--line); } }
@media (max-width:620px) { .ai-template-actions { grid-template-columns:1fr 1fr; }.ai-template-actions .button { width:100%; }.ai-template-record { align-items:flex-start; flex-wrap:wrap; }.ai-template-record-actions { width:100%; justify-content:flex-end; padding-top:.35rem; border-top:1px solid var(--line); } }
@media (max-width:620px) { .ai-provider-strip { grid-template-columns:1fr 1fr; }.ai-provider-strip p { grid-column:1 / -1; text-align:left; }.ai-source-grid,.ai-option-grid { grid-template-columns:1fr; }.ai-preview-panel,.ai-brief-panel { padding:1rem; }.ai-card-stage { min-height:260px; margin:.75rem 0; padding:.75rem; }.ai-concept-list { grid-template-columns:1fr; }.ai-concept-choice small { min-height:0; }.ai-template-actions { grid-template-columns:1fr; }.ai-template-actions .button { width:100%; }.ai-template-list { grid-template-columns:1fr; } }
@media (max-width:620px) { .brand-kit-panel { align-items:flex-start; flex-direction:column; }.ai-layer-controls { grid-template-columns:repeat(3,minmax(0,1fr)); } }

/* Compact batch workspace: keeps each saved group easy to scan without large repeated blocks. */
.batches-list-surface { padding:1rem; }
.batches-list-surface > .section-heading { margin-bottom:.7rem; }
.location-record-header { padding:.68rem .78rem; }
.location-record-header h4 { margin:.1rem 0; font-size:.82rem; }
.location-record-header > strong { padding:.32rem .42rem; font-size:.55rem; }
.batch-unit-header { gap:.7rem; padding:.46rem .7rem; }
.batch-unit-summary { display:flex; align-items:baseline; min-width:0; gap:.42rem; }
.batch-unit-header label { display:flex; align-items:center; gap:.3rem; padding:.24rem .38rem; border:1px solid #d4e2d6; background:#f3f8f4; color:#45715a; font:600 .57rem "DM Mono", monospace; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; }
.batch-unit-header input { width:auto; margin:0; }
.batch-unit-header strong { font-size:.68rem; }
.batch-unit-header small { overflow:hidden; margin:0; color:var(--muted); font-size:.6rem; text-overflow:ellipsis; white-space:nowrap; }
.batch-unit-header small b { margin:0 .06rem; color:#9aac9f; }
.batch-review-state { display:inline-block; margin-left:.2rem; padding:.18rem .32rem; font:600 .49rem "DM Mono",monospace; letter-spacing:.04em; white-space:nowrap; }.batch-review-state.is-confirmed { background:#dff0e4; color:#2f795d; }.batch-review-state.is-progress { background:#fff1c8; color:#8a6716; }
.batch-data-table { min-width:580px; font-size:.64rem; }
.batch-data-table th { padding:.35rem .42rem; font-size:.51rem; }
.batch-data-table td { max-width:170px; padding:.37rem .42rem; }
.batch-data-table td:first-child { min-width:118px; }
.batch-data-table td strong { font-size:.66rem; }
.batch-data-table td small { margin-top:.05rem; font-size:.54rem; }
.batch-table-photo { width:24px; height:30px; }
.batch-table-actions { min-width:124px; }
.batch-row-actions { display:flex; align-items:center; gap:.38rem; }
.batch-table-actions .record-link { margin:0; font-size:.6rem; }
.batch-table-actions .record-link + .record-link { margin-left:0; }
.batch-data-table td.batch-row-number { width:14px !important; min-width:14px !important; max-width:14px !important; padding:0 !important; }
.batch-data-table th.batch-select-heading,.batch-data-table td.batch-row-select { width:22px !important; min-width:22px !important; max-width:22px !important; padding:0 !important; white-space:nowrap; text-align:center; }
.batch-data-table th.batch-select-heading input,.batch-data-table td.batch-row-select input { width:12px; height:12px; margin:0; }
.location-record-actions { display:flex; align-items:center; gap:.5rem; }
.location-record-actions > strong { display:flex; align-items:baseline; gap:.28rem; padding:.36rem .5rem; border:1px solid #d7e1d7; background:#fff; color:#557261; white-space:nowrap; }
.location-record-actions > strong b { color:#274f3c; font:700 .76rem "DM Mono", monospace; }
.location-record-actions > strong span { font:600 .56rem "DM Mono", monospace; letter-spacing:.025em; text-transform:uppercase; }
.batch-record.group-color-0 { border-color:#b9d8c2; }
.batch-record.group-color-0 .location-record-header { background:#edf5ef; border-left:3px solid #79b895; }
.batch-record.group-color-1 { border-color:#c4d7ea; }
.batch-record.group-color-1 .location-record-header { background:#edf3fa; border-left:3px solid #7ca7d0; }
.batch-record.group-color-2 { border-color:#ecdaa5; }
.batch-record.group-color-2 .location-record-header { background:#fff8e2; border-left:3px solid #d2ad43; }
.batch-record.group-color-3 { border-color:#e6c4d0; }
.batch-record.group-color-3 .location-record-header { background:#f8edf1; border-left:3px solid #c9829d; }
.batch-record.group-color-4 { border-color:#ddcec0; }
.batch-record.group-color-4 .location-record-header { background:#f3efea; border-left:3px solid #b99678; }
.batch-record.group-color-0 .batch-unit { background:#f7fbf8; border-color:#cfe3d3; }
.batch-record.group-color-0 .batch-unit-header,.batch-record.group-color-0 .batch-data-table thead { background:#edf6ef; }
.batch-record.group-color-1 .batch-unit { background:#f8fbfe; border-color:#d4e2ef; }
.batch-record.group-color-1 .batch-unit-header,.batch-record.group-color-1 .batch-data-table thead { background:#edf3fa; }
.batch-record.group-color-2 .batch-unit { background:#fffdf4; border-color:#eee1b8; }
.batch-record.group-color-2 .batch-unit-header,.batch-record.group-color-2 .batch-data-table thead { background:#fff8e2; }
.batch-record.group-color-3 .batch-unit { background:#fdf9fb; border-color:#edd7df; }
.batch-record.group-color-3 .batch-unit-header,.batch-record.group-color-3 .batch-data-table thead { background:#f8edf1; }
.batch-record.group-color-4 .batch-unit { background:#fcfaf8; border-color:#e6dcd3; }
.batch-record.group-color-4 .batch-unit-header,.batch-record.group-color-4 .batch-data-table thead { background:#f3efea; }
.location-merge-button { min-height:30px; border:1px solid #8fbca0; padding:.34rem .65rem; background:#2f795d; color:#fff; font:600 .58rem "DM Mono", monospace; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; }
.location-merge-button:hover { background:#205d44; }

/* Manual card designer */
.manual-studio-grid { display:grid; grid-template-columns:minmax(245px,285px) minmax(430px,1fr) minmax(255px,310px); align-items:start; gap:.8rem; }
.manual-tool-panel,.manual-canvas-panel,.manual-layer-panel { min-width:0; padding:1rem; }
.manual-tool-panel,.manual-layer-panel { position:sticky; top:1rem; max-height:calc(100vh - 2rem); overflow:auto; }
.manual-tool-panel > .section-heading,.manual-layer-panel > .section-heading { margin-bottom:.85rem; }
.manual-tool-panel .button { width:100%; margin-top:.65rem; padding:.7rem .75rem; font-size:.69rem; }
.manual-source-grid,.manual-compact-grid { display:grid; gap:.48rem; }
.manual-source-grid { grid-template-columns:1fr; gap:.28rem; }
.manual-compact-grid { grid-template-columns:1fr 1fr; }
.manual-source-grid label,.manual-compact-grid label,.manual-tool-panel > label { font-size:.61rem; }
.manual-source-grid label { gap:.14rem; }
.manual-layout-style { grid-column:1 / -1; }.manual-layout-style small { display:block; margin-top:.1rem; color:#6c7c73; font-size:.52rem; line-height:1.25; }
.manual-source-grid select { padding:.4rem .5rem; font-size:.65rem; }
.manual-style-mode-note { margin:0 0:.55rem; padding:.5rem .6rem; border:1px solid #d5c5e7; background:#f7f1fc; color:#594270; font-size:.62rem; line-height:1.35; }
.manual-tool-panel.is-style-editor #manual-source-grid > label:not(.manual-layout-style) { display:none; }
.manual-tool-panel.is-style-editor [data-manual-style-exclude] { display:none; }
.manual-tool-panel.is-style-editor #manual-name-wrap { display:flex; }
.manual-tool-panel.is-style-editor #manual-compact-grid { display:grid; }
.smart-layout-style-guide { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:.8rem; padding:1rem 1.1rem; background:linear-gradient(135deg,#faf7fd,#f2edf8); border-color:#d9cde9; }
.smart-layout-style-guide h4 { margin:.18rem 0; font-size:1.05rem; }.smart-layout-style-guide p { max-width:720px; margin:0; color:#677069; font-size:.75rem; line-height:1.5; }
.smart-layout-style-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(225px,1fr)); gap:.7rem; }
.smart-layout-style-card { display:flex; min-height:200px; flex-direction:column; padding:.9rem; border:1px solid #d7e0d8; background:#fff; box-shadow:0 8px 20px rgba(40,65,52,.05); }.smart-layout-style-card.is-protected { background:linear-gradient(145deg,#fff,#f7f3fb); border-color:#d9cde9; }
.smart-layout-style-card-head,.smart-layout-style-meta,.smart-layout-style-actions { display:flex; align-items:center; justify-content:space-between; gap:.35rem; }.smart-layout-style-card-head span,.smart-layout-style-card-head b { color:#69577a; font:600 .53rem "DM Mono",monospace; letter-spacing:.06em; text-transform:uppercase; }.smart-layout-style-card h4 { margin:.65rem 0 .28rem; color:#25352c; font-size:1.05rem; }.smart-layout-style-card p { min-height:44px; margin:0; color:#6d7a70; font-size:.67rem; line-height:1.45; }
.smart-layout-style-meta { margin-top:auto; padding-top:.7rem; color:#64726a; font:600 .53rem "DM Mono",monospace; letter-spacing:.02em; text-transform:uppercase; }.smart-layout-style-actions { justify-content:flex-start; flex-wrap:wrap; margin-top:.7rem; }.smart-layout-style-actions button { border:0; padding:0; background:transparent; color:#a84f66; font-size:.64rem; font-weight:700; }.smart-layout-style-actions button.danger { color:#b84a3e; }
.manual-compact-grid select,.manual-tool-panel input { padding:.56rem .58rem; font-size:.69rem; }
.manual-tool-panel > label { margin-top:.5rem; }
.manual-section-heading { margin-top:.8rem; padding-top:.72rem; border-top:1px solid var(--line); }
.manual-section-heading span { color:#617168; font:600 .58rem "DM Mono", monospace; letter-spacing:.08em; text-transform:uppercase; }
.manual-color-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.4rem; margin-top:.5rem; }
.manual-color-grid label { align-items:center; gap:.28rem; font-size:.56rem; text-align:center; }
.manual-color-grid input { width:100%; height:34px; padding:3px; }
.manual-ai-colour-tools { display:flex; align-items:center; gap:.4rem; margin-top:.45rem; padding:.42rem; border:1px solid #d5e1d7; background:#f1f7f2; }
.manual-ai-colour-tools button { flex:0 0 auto; border:1px solid #9fc3a8; padding:.38rem .5rem; background:#e5f2e8; color:#356b4b; font-size:.57rem; font-weight:700; }
.manual-ai-colour-tools button:hover:not(:disabled) { border-color:#6f9f7c; background:#d7ebdc; }
.manual-ai-colour-tools button:disabled { cursor:not-allowed; opacity:.5; }
.manual-ai-colour-tools span { min-width:0; overflow:hidden; color:#65776b; font:500 .5rem "DM Mono",monospace; text-overflow:ellipsis; white-space:nowrap; }
.manual-background-upload { margin-top:.55rem; padding:.55rem; border:1px solid #d6e1d7; background:#f7f9f6; }
.manual-background-upload > div:first-of-type { display:flex; gap:.35rem; }
.manual-background-upload button { flex:1; min-height:32px; border:1px solid #bfcfc2; padding:.4rem .45rem; background:#fff; color:#385344; font-size:.6rem; font-weight:700; }
.manual-background-upload button:hover { border-color:#668b73; background:#edf5ef; }
.manual-background-upload button:disabled { cursor:wait; opacity:.55; }
.manual-background-upload #manual-background-remove { flex:0 0 auto; color:#ad4439; }
.manual-background-upload > span { display:block; margin-top:.38rem; color:#718079; font-size:.56rem; }
.manual-background-options { display:grid; grid-template-columns:1fr 1fr; gap:.4rem; margin-top:.48rem; padding-top:.48rem; border-top:1px solid var(--line); }
.manual-background-options label { gap:.24rem; font-size:.55rem; }
.manual-background-options select { padding:.43rem; font-size:.61rem; }
.manual-background-options input[type="range"] { height:29px; padding:0; }

/* Template library */
.blank-template-launcher { display:grid; grid-template-columns:minmax(260px,1fr) 140px auto auto; align-items:end; gap:.65rem; margin-bottom:.7rem; padding:.8rem; border-left:4px solid #6ea47c; background:linear-gradient(110deg,#edf6ef 0%,#fff 62%); }.blank-template-launcher h4 { margin:.2rem 0 .15rem; font-size:.9rem; }.blank-template-launcher p:not(.eyebrow) { margin:0; color:var(--muted); font-size:.65rem; }.blank-template-launcher label { font-size:.62rem; }.blank-template-launcher select { padding:.6rem; font-size:.7rem; }.blank-template-launcher .button { min-height:38px; padding:.65rem .8rem; white-space:nowrap; font-size:.69rem; }
.quick-template-studio { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(285px,.85fr); gap:0; margin-bottom:.75rem; overflow:hidden; border-left:4px solid #6ea47c; }.quick-template-controls { padding:.75rem .85rem; }.quick-template-controls h4 { margin:.18rem 0 .12rem; font-size:.92rem; }.quick-template-controls > div:first-child .muted { font-size:.61rem; }.quick-template-basics { display:flex; align-items:flex-end; gap:.5rem; margin-top:.55rem; }.quick-template-basics label { width:132px; font-size:.58rem; }.quick-template-basics input,.quick-template-basics select { padding:.45rem .52rem; font-size:.64rem; }.quick-name-field { grid-column:1 / -1; }.quick-background-box { margin-top:.45rem; padding:.45rem; border:1px solid #d4e1d6; background:#f4f8f4; }.quick-side-switch { display:flex; width:max-content; overflow:hidden; border:1px solid #cdd9cf; background:#fff; }.quick-side-switch button { min-width:52px; padding:.3rem .45rem; border:0; border-left:1px solid #cdd9cf; background:#fff; color:#718079; font:600 .52rem "DM Mono",monospace; text-transform:uppercase; }.quick-side-switch button:first-child { border-left:0; }.quick-side-switch button.active { background:#5f8f70; color:#fff; }.quick-background-actions { display:grid; grid-template-columns:auto auto 1fr; align-items:center; gap:.35rem; margin-top:.4rem; }.quick-background-actions button { border:1px solid #cbd8cd; padding:.34rem .45rem; background:#fff; color:#385344; font-size:.57rem; font-weight:700; white-space:nowrap; }.quick-background-actions button:disabled { opacity:.45; }.quick-background-actions span { margin-left:0; overflow:hidden; color:#718079; font:600 .49rem "DM Mono",monospace; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }.quick-background-options { display:grid; grid-template-columns:120px 1fr; gap:.45rem; margin-top:.4rem; padding-top:.4rem; border-top:1px solid #dce6dd; }.quick-background-options label { color:#65756b; font-size:.55rem; }.quick-background-options select { padding:.38rem; font-size:.6rem; }.quick-background-options input[type="range"] { padding:0; }.quick-template-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.35rem; margin-top:.5rem; }.quick-template-actions .button { min-width:0; min-height:32px; justify-content:center; padding:.45rem .35rem; font-size:.57rem; text-align:center; }.quick-template-preview-panel { display:flex; min-height:300px; flex-direction:column; align-items:center; justify-content:center; padding:.75rem; background:#24372d; background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px); background-size:12px 12px; }.quick-template-preview-panel > div:first-child { display:flex; width:100%; justify-content:space-between; margin-bottom:.4rem; color:#cad8ce; font:600 .52rem "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }.quick-template-preview-panel > div:first-child small { color:#82968a; }.quick-template-card { position:relative; display:grid; width:min(100%,330px); aspect-ratio:856/540; place-items:center; overflow:hidden; border-radius:10px; background:#fff; box-shadow:0 18px 40px rgba(0,0,0,.3); }.quick-template-card.is-portrait { width:min(100%,185px); aspect-ratio:540/856; }.quick-card-background { position:absolute; inset:0; background-position:center; background-repeat:no-repeat; }.quick-template-card > span { position:relative; z-index:1; padding:.45rem .55rem; border:1px dashed #b8c7bb; background:rgba(255,255,255,.82); color:#7d8c81; font:600 .54rem "DM Mono",monospace; text-transform:uppercase; }.quick-template-card.has-background > span { opacity:.45; }.quick-template-preview-panel > p { margin:.5rem 0 0; color:#9fb0a4; font-size:.54rem; }.template-assignment-summary.needs-fields { border-color:#ead390; background:#fff8e2; color:#80651f; }.template-assignment-summary.needs-fields span { color:#9b8142; }.template-assignment-summary.design-ready { border-color:#b9d8c2; background:#edf6ef; color:#315f46; }.template-assignment-summary.design-ready span { color:#5f7d69; }
.quick-template-basics { grid-template-columns:140px; margin-top:.5rem; }
.quick-background-actions { display:grid; grid-template-columns:max-content max-content minmax(0,1fr); align-items:center; }.quick-background-actions button { display:inline-flex; min-width:96px; min-height:30px; align-items:center; justify-content:center; }.quick-background-actions span { overflow:hidden; margin-left:0; text-align:right; text-overflow:ellipsis; white-space:nowrap; }
.quick-template-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; }.quick-template-actions .button { display:flex; width:100%; min-width:0; min-height:34px; align-items:center; justify-content:center; padding:.38rem .3rem; text-align:center; }
.template-library-toolbar { display:grid; grid-template-columns:minmax(0,1fr) minmax(150px,.55fr) auto; align-items:end; gap:.6rem; padding:.8rem; }
.template-library-toolbar.institute-design-toolbar { grid-template-columns:repeat(2,minmax(150px,1fr)) auto; }
.template-library-toolbar label { font-size:.63rem; }
.template-library-toolbar input,.template-library-toolbar select { padding:.58rem .62rem; font-size:.7rem; }
.template-library-summary { display:flex; min-height:36px; align-items:baseline; justify-content:center; gap:.3rem; padding:.55rem .7rem; background:#edf5ef; color:#3e6d55; }
.template-library-summary strong { font-size:1rem; }.template-library-summary span { font:600 .56rem "DM Mono", monospace; text-transform:uppercase; }
.template-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:.8rem; margin-top:.8rem; }
.template-gallery > .empty-list { grid-column:1 / -1; }
.template-gallery-card { min-width:0; overflow:hidden; border:1px solid var(--line); background:#fff; box-shadow:0 10px 28px rgba(31,47,37,.05); }
.template-gallery-card.template-system { border-color:#b9d3c0; box-shadow:0 12px 30px rgba(45,91,62,.09); }.template-system .template-thumb-pair { background:#dfeae1; }.template-system .library-card-canvas { border:1px solid #c7d4c9; background-color:#fff !important; background-image:linear-gradient(rgba(64,96,75,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(64,96,75,.045) 1px,transparent 1px) !important; background-size:12px 12px !important; box-shadow:0 8px 22px rgba(25,39,30,.1); }.template-system .library-card-canvas:after { position:absolute; inset:42% 18%; display:grid; place-items:center; border:1px dashed #c3d0c5; color:#8a998e; font:600 5.5px "DM Mono", monospace; letter-spacing:.08em; content:"BLANK CANVAS"; }.template-status.status-system { background:#dceee1; color:#2f795d; }.template-assignment-summary.system-note { border-color:#c7ddcd; background:#f0f7f1; color:#315e46; }.starter-actions button.primary { min-width:94px; }
.template-thumb-pair { display:grid; grid-template-columns:1fr 1fr; gap:.35rem; padding:.48rem; background:#e9eee8; }
.template-thumb-pair > div { display:flex; min-width:0; flex-direction:column; align-items:center; gap:.18rem; }
.template-thumb-pair > div > span { align-self:flex-start; color:#6f7e75; font:600 .5rem "DM Mono", monospace; letter-spacing:.08em; text-transform:uppercase; }
.library-card-canvas { position:relative; width:100%; aspect-ratio:856/540; overflow:hidden; border-radius:6px; background:#fff; box-shadow:0 8px 22px rgba(25,39,30,.16); container-type:inline-size; isolation:isolate; }
.library-card-canvas.is-portrait { width:min(100%,135px); aspect-ratio:540/856; }
.library-card-empty { display:grid; place-items:center; border:1px dashed #aebcb1; border-radius:2px; color:#849088; font-size:.56rem; box-shadow:none; }
.library-card-artwork { position:absolute; z-index:-2; inset:0; background-position:center; background-repeat:no-repeat; }
.library-card-protection,.manual-card-protection { position:absolute; z-index:1; border-radius:6px; background:#fff; box-shadow:0 1px 10px rgba(20,36,27,.08); opacity:var(--panel-opacity); backdrop-filter:blur(2px); pointer-events:none; }
.library-card-layer { position:absolute; z-index:2; display:flex; min-width:0; overflow:hidden; line-height:1.05; }
.library-card-layer.layer-text,.ai-card-layer.layer-text { align-items:center; white-space:nowrap; text-overflow:ellipsis; }
.library-card-layer.layer-shape { z-index:0; background:var(--shape-color); }
.library-card-layer.shape-ellipse { border-radius:50%; }.library-card-layer.shape-wave { border-radius:50% 50% 0 0 / 35% 35% 0 0; }.library-card-layer.shape-diagonal { clip-path:polygon(0 0,100% 0,82% 100%,0 100%); }.library-card-layer.shape-dots { background-color:transparent; background-image:radial-gradient(var(--shape-color) 1.5px,transparent 1.8px); background-size:12px 12px; }.library-card-layer.shape-line { height:max(2px,10%); border-radius:999px; }
.library-card-layer.layer-photo { align-items:center; justify-content:center; background:#d9e5dc; color:#52695b; font:600 7px "DM Mono", monospace; }.library-card-layer.layer-photo img { width:100%; height:100%; object-fit:cover; }.library-card-layer.layer-photo span { margin:auto; }
.library-card-layer.layer-logo { align-items:center; justify-content:center; border:1px solid currentColor; font:700 7px "DM Mono", monospace; }.library-card-layer.layer-logo img { width:100%; height:100%; object-fit:contain; }
.library-card-layer.layer-qr { display:grid; place-items:center; padding:5px; background:#fff; color:#17201d; font:600 6px "DM Mono", monospace; text-align:center; }.library-card-layer.layer-qr:before { width:70%; aspect-ratio:1; background:repeating-conic-gradient(#17201d 0 25%,#fff 0 50%) 50%/7px 7px; border:3px solid #17201d; content:""; }.library-card-layer.layer-barcode { display:flex; align-items:center; justify-content:center; padding:4px 3%; background:#fff; }.library-card-layer.layer-barcode .barcode-bars { width:94%; height:70%; }
.template-gallery-copy { padding:.36rem .5rem .3rem; }
.template-gallery-title { display:flex; min-width:0; align-items:flex-start; justify-content:space-between; gap:.5rem; }
.template-gallery-title > div { min-width:0; }.template-gallery-title h4 { overflow:hidden; margin:0; font-size:.72rem; text-overflow:ellipsis; white-space:nowrap; }.template-gallery-title p { overflow:hidden; margin:.06rem 0 0; color:var(--muted); font-size:.52rem; text-overflow:ellipsis; white-space:nowrap; }
.template-status { flex:0 0 auto; padding:.22rem .32rem; font:600 .47rem "DM Mono", monospace; text-transform:uppercase; }.template-status.status-published { background:#eaf6ee; color:#2f795d; }.template-status.status-draft { background:#fff8e2; color:#8b6819; }.template-status.status-archived { background:#edf2eb; color:#657169; }
.template-meta-row { display:flex; overflow:hidden; align-items:center; gap:0; margin-top:.22rem; white-space:nowrap; }.template-meta-row span { padding:0 .28rem; border-left:1px solid #dce4dc; color:#617168; font:500 .44rem "DM Mono", monospace; text-transform:uppercase; }.template-meta-row span:first-child { padding-left:0; border-left:0; }
.template-gallery-copy > small { display:block; margin-top:.28rem; overflow:hidden; color:#718079; font-size:.54rem; text-overflow:ellipsis; white-space:nowrap; }
.template-assignment-summary { display:flex; min-width:0; align-items:center; justify-content:space-between; gap:.4rem; padding:.32rem .55rem; border-top:1px solid #d6e6d9; background:#edf6ef; color:#37624b; }.template-assignment-summary strong { overflow:hidden; font-size:.55rem; text-overflow:ellipsis; white-space:nowrap; }.template-assignment-summary span { flex:0 0 auto; color:#698072; font:600 .45rem "DM Mono", monospace; text-transform:uppercase; }.template-assignment-summary.is-empty { border-color:#eadfab; background:#fff9e8; color:#856a25; }.template-assignment-summary.is-empty span { color:#9a854e; }
.template-gallery-actions { display:flex; overflow-x:auto; flex-wrap:nowrap; gap:.18rem; padding:.26rem .5rem .3rem; border-top:1px solid var(--line); }
.template-gallery-actions button { flex:0 0 auto; border:1px solid #d5dfd6; padding:.25rem .34rem; background:#fff; color:#496053; font-size:.49rem; font-weight:700; }.template-gallery-actions button:hover:not(:disabled) { border-color:#6f927a; background:#edf5ef; }.template-gallery-actions button.primary { background:#263d31; color:#fff; }.template-gallery-actions button.danger { margin-left:auto; color:#ad4439; }.template-gallery-actions button:disabled { cursor:not-allowed; opacity:.35; }
.template-preview-panel { position:relative; width:min(980px,100%); max-height:94vh; overflow:auto; padding:1.1rem; background:#fff; box-shadow:0 25px 70px rgba(29,36,35,.22); }
.template-preview-heading,.template-preview-tools { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }.template-preview-heading h4 { margin:.35rem 0 .15rem; font-size:1.2rem; }.template-preview-heading .helper { margin:0; }
.template-preview-tools { display:grid; grid-template-columns:1fr 1fr 1fr auto; align-items:end; margin-top:.8rem; padding:.65rem; border:1px solid var(--line); background:#f7f9f6; }.template-preview-tools label { width:auto; min-width:0; font-size:.62rem; }.template-preview-tools select { width:100%; padding:.55rem; font-size:.68rem; }
.template-preview-assignment-bar { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:stretch; gap:.45rem; margin-top:.5rem; }.template-preview-assignment-bar > .button { width:auto; min-width:145px; min-height:0; justify-content:center; padding:.42rem .58rem; font-size:.55rem; white-space:nowrap; }
.template-preview-usage { display:grid; grid-template-columns:1.35fr .55fr .55fr .9fr; gap:0; margin:0; border:1px solid #d4e2d6; background:#eef6ef; }.template-preview-usage > div { min-width:0; padding:.36rem .48rem; border-right:1px solid #d4e2d6; }.template-preview-usage > div:nth-child(4) { border-right:0; }.template-preview-usage span,.template-preview-usage strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.template-preview-usage span { color:#718079; font:600 .43rem "DM Mono",monospace; letter-spacing:.05em; text-transform:uppercase; }.template-preview-usage strong { margin-top:.1rem; color:#315c41; font-size:.59rem; }.template-preview-usage p { grid-column:1 / -1; margin:0; padding:.3rem .48rem; border-top:1px solid #d4e2d6; color:#587061; font-size:.52rem; }.template-preview-usage.is-current { border-color:#9fc8aa; background:#e6f3e9; }.template-preview-usage.is-warning { border-color:#e6cc86; background:#fff8e4; }.template-preview-usage.is-warning p { color:#856b29; }
.template-preview-stage { display:grid; min-height:440px; place-items:center; margin-top:.65rem; padding:1.4rem; overflow:auto; background:#e8ede7; background-image:radial-gradient(rgba(72,93,80,.1) 1px,transparent 1px); background-size:12px 12px; }
#library-preview-card { display:grid; width:100%; place-items:center; }
.template-large-preview { width:min(100%,760px); border-radius:12px; box-shadow:0 24px 55px rgba(25,39,30,.22); }.template-large-preview.is-portrait { width:min(100%,390px); }
.template-preview-footer { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:.65rem; }.template-preview-note { flex:1; margin:0; color:#718079; font-size:.62rem; line-height:1.45; }.template-preview-footer .button { flex:0 0 auto; width:auto; min-width:170px; }
.template-assignment-panel { position:relative; width:min(640px,100%); max-height:92vh; overflow:auto; padding:1.2rem; background:#fff; box-shadow:0 25px 70px rgba(29,36,35,.22); }.template-assignment-panel > .section-heading { margin-bottom:1rem; }.template-assignment-panel h4 { margin:.3rem 0 .15rem; font-size:1.15rem; }.template-assignment-panel .helper { margin:0; }.template-assignment-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.55rem; }.template-assignment-grid label { min-width:0; }.template-assignment-impact { min-height:58px; padding:.7rem .8rem; border-left:3px solid #8fb79a; background:#edf5ef; color:#4f6958; font-size:.7rem; line-height:1.45; }.template-assignment-impact.is-current { border-color:#3b8d61; background:#e7f5eb; color:#2f795d; }.template-assignment-impact.is-warning { border-color:#d6ad43; background:#fff8e2; color:#80651f; }.template-assignment-actions { display:flex; gap:.55rem; }.template-assignment-actions .button { flex:1; }.template-assignment-actions .button:disabled { cursor:not-allowed; opacity:.42; }
#issue-template-match { display:block; margin-top:.35rem; }.helper.matched { color:#2f795d; font-weight:700; }
@media (max-width:900px) { .template-gallery { grid-template-columns:1fr; }.blank-template-launcher { grid-template-columns:1fr 130px auto auto; }.blank-template-launcher > div { grid-column:1 / -1; }.template-library-toolbar { grid-template-columns:1fr 1fr; }.template-library-toolbar label:first-child { grid-column:1 / -1; } }
@media (max-width:900px) { .quick-template-studio { grid-template-columns:1fr; }.quick-template-preview-panel { min-height:300px; } }
@media (max-width:620px) { .template-thumb-pair { gap:.35rem; padding:.55rem; }.blank-template-launcher { grid-template-columns:1fr 1fr; }.blank-template-launcher > div,.blank-template-launcher label { grid-column:1 / -1; }.blank-template-launcher .button { width:100%; }.template-library-toolbar { grid-template-columns:1fr; }.template-library-toolbar label:first-child { grid-column:auto; }.template-preview-tools { grid-template-columns:1fr; align-items:stretch; }.template-preview-tools label { width:100%; }.template-preview-assignment-bar { grid-template-columns:1fr; }.template-preview-assignment-bar > .button { width:100%; }.template-preview-usage { grid-template-columns:1fr 1fr; }.template-preview-usage > div { border-bottom:1px solid #d4e2d6; }.template-preview-usage > div:nth-child(even) { border-right:0; }.template-preview-footer { align-items:stretch; flex-direction:column; }.template-preview-footer .button { width:100%; }.template-preview-stage { min-height:360px; padding:1rem; }.template-gallery-actions button.danger { margin-left:0; }.template-assignment-grid { grid-template-columns:1fr; }.template-assignment-actions { flex-direction:column; } }
@media (max-width:620px) { .quick-template-basics { grid-template-columns:1fr; }.quick-name-field { grid-column:auto; }.quick-background-actions { grid-template-columns:1fr 1fr; align-items:stretch; }.quick-background-actions button { width:100%; min-width:0; }.quick-background-actions span { grid-column:1 / -1; width:100%; text-align:left; }.quick-background-options { grid-template-columns:1fr; }.quick-template-actions { grid-template-columns:1fr; }.quick-template-preview-panel { min-height:270px; }.quick-template-actions .button { width:100%; } }
.manual-add-tools { display:grid; grid-template-columns:1fr 1fr; gap:.35rem; margin-top:.5rem; }
.manual-add-tools button { min-height:34px; border:1px solid #d5dfd6; padding:.42rem; background:#f7f9f6; color:#385344; font-size:.61rem; font-weight:700; text-align:left; }
.manual-add-tools button:hover { border-color:#7da18a; background:#edf5ef; }
.manual-canvas-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.manual-canvas-heading h4 { margin:.3rem 0 0; font-size:1rem; }
.manual-mouse-toolbar { display:flex; flex-direction:column; align-items:stretch; gap:.4rem; margin-top:.7rem; padding:.45rem; border:1px solid var(--line); background:#f7f9f6; }
.manual-toolbar-row { display:flex; align-items:center; gap:.55rem; min-width:0; }
.manual-toolbar-row > label { display:flex; flex-direction:row; align-items:center; gap:.3rem; margin:0; white-space:nowrap; }
.manual-toolbar-row > label input { width:auto; margin:0; }
.manual-toolbar-row .manual-quick-tools { flex:1 1 auto; min-width:0; overflow-x:auto; scrollbar-width:thin; }
.manual-zoom-tools,.manual-quick-tools { display:flex; align-items:center; gap:.25rem; }
.manual-mouse-toolbar button { min-height:28px; border:1px solid #d5dfd6; padding:.3rem .45rem; background:#fff; color:#43584b; font-size:.56rem; font-weight:700; }
.manual-mouse-toolbar button:hover:not(:disabled) { border-color:#668b73; background:#edf5ef; }
.manual-mouse-toolbar button:disabled { cursor:not-allowed; opacity:.35; }
.manual-mouse-toolbar button.danger { color:#ad4439; }
.manual-zoom-tools span { min-width:38px; color:#52645a; font:600 .55rem "DM Mono", monospace; text-align:center; }
.manual-mouse-toolbar > label { display:flex; flex-direction:row; align-items:center; gap:.3rem; font-size:.58rem; white-space:nowrap; }
.manual-mouse-toolbar > label input { width:auto; margin:0; }
.manual-quick-tools { flex-wrap:nowrap; justify-content:flex-start; }
.manual-stage { display:grid; min-height:540px; place-items:center; margin:.55rem 0; padding:2.4rem 1.5rem; overflow:auto; background-color:#e8ede7; background-image:linear-gradient(45deg,rgba(62,79,68,.045) 25%,transparent 25%),linear-gradient(-45deg,rgba(62,79,68,.045) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(62,79,68,.045) 75%),linear-gradient(-45deg,transparent 75%,rgba(62,79,68,.045) 75%); background-position:0 0,0 10px,10px -10px,-10px 0; background-size:20px 20px; }
.manual-stage .ai-card-preview { width:min(100%,690px); box-shadow:0 22px 50px rgba(27,42,33,.2); }
.manual-stage .ai-card-preview.is-portrait { width:min(100%,345px); }
.manual-card-preview { transform-origin:center; transition:transform .15s ease; user-select:none; }
.manual-card-layer { cursor:grab; touch-action:none; }
.manual-card-layer:active { cursor:grabbing; }
.manual-card-layer.is-selected { outline:2px solid #f0b429; outline-offset:3px; box-shadow:0 0 0 1px rgba(255,255,255,.75); }
.manual-selection-box { position:absolute; z-index:30; overflow:visible; border:1px dashed #e39f16; pointer-events:none; transform-origin:center; }
.manual-resize-handle,.manual-rotate-handle,.manual-move-handle { position:absolute; z-index:31; display:block; pointer-events:auto; }
.manual-resize-handle { width:10px; height:10px; border:1px solid #9a6710; border-radius:1px; background:#fff8db; box-shadow:0 1px 3px rgba(36,48,40,.24); }
.handle-nw { top:0; left:0; cursor:nwse-resize; transform:translate(-50%,-50%); }.handle-n { top:0; left:50%; cursor:ns-resize; transform:translate(-50%,-50%); }.handle-ne { top:0; right:0; cursor:nesw-resize; transform:translate(50%,-50%); }.handle-e { top:50%; right:0; cursor:ew-resize; transform:translate(50%,-50%); }.handle-se { right:0; bottom:0; cursor:nwse-resize; transform:translate(50%,50%); }.handle-s { bottom:0; left:50%; cursor:ns-resize; transform:translate(-50%,50%); }.handle-sw { bottom:0; left:0; cursor:nesw-resize; transform:translate(-50%,50%); }.handle-w { top:50%; left:0; cursor:ew-resize; transform:translate(-50%,-50%); }
.manual-rotate-handle { top:-31px; left:50%; width:14px; height:14px; border:2px solid #fff; border-radius:50%; background:#0d6e73; box-shadow:0 0 0 1px #0d6e73; cursor:grab; transform:translateX(-50%); }
.manual-rotate-handle:before { position:absolute; top:12px; left:5px; width:1px; height:17px; background:#0d6e73; content:""; }
.manual-move-handle { top:-24px; left:0; border:0; padding:3px 5px; background:#263d31; color:#fff; font:600 7px "DM Mono", monospace; letter-spacing:.05em; cursor:move; transform:translateX(-2px); }
.manual-canvas-help { margin:.45rem 0 .7rem; color:#718079; font-size:.62rem; text-align:center; }
.manual-save-bar { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.4rem; padding-top:.65rem; border-top:1px solid var(--line); }
.manual-save-bar .button { min-width:0; min-height:38px; padding:.65rem .5rem; font-size:.64rem; white-space:nowrap; }
.manual-safety-status { min-height:1.1rem; margin:.5rem 0 0; color:#718079; font:600 .55rem "DM Mono",monospace; letter-spacing:.03em; }
.manual-safety-status.is-good { color:#2f795d; }
.manual-safety-status.has-warning { color:#9a6818; }
.manual-preview-person { grid-column:1 / -1; }
.manual-layer-list { display:flex; max-height:220px; flex-direction:column; gap:.3rem; overflow:auto; }
.manual-layer-list .muted { margin:.2rem 0; font-size:.64rem; line-height:1.4; }
.manual-layer-item { display:grid; grid-template-columns:58px 1fr; align-items:center; gap:.4rem; width:100%; border:1px solid var(--line); padding:.45rem .5rem; background:#fff; text-align:left; }
.manual-layer-item span { color:#718079; font:600 .5rem "DM Mono", monospace; letter-spacing:.05em; text-transform:uppercase; }
.manual-layer-item strong { overflow:hidden; font-size:.62rem; text-overflow:ellipsis; white-space:nowrap; }
.manual-layer-item:hover,.manual-layer-item.active { border-color:#4f8468; background:#edf5ef; }
.manual-layer-editor { margin-top:.7rem; padding-top:.7rem; border-top:1px solid var(--line); }
.manual-editor-heading { display:flex; align-items:center; justify-content:space-between; gap:.5rem; margin-bottom:.55rem; }
.manual-editor-heading strong { font-size:.68rem; }
.manual-editor-heading button { border:0; padding:.25rem; background:transparent; color:#b23f32; font-size:.6rem; }
.manual-property-grid { display:grid; grid-template-columns:1fr 1fr; gap:.4rem; }
.manual-property-grid label { gap:.2rem; font-size:.54rem; }
.manual-property-grid input,.manual-property-grid select { padding:.43rem .46rem; font-size:.64rem; }
.manual-property-grid .manual-wide { grid-column:1 / -1; }
.manual-geometry-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.3rem; }
.manual-geometry-grid .manual-editor-subheading { grid-column:1 / -1; margin-top:0; }
.manual-geometry-grid label { min-width:0; }
.manual-geometry-grid input { padding:.38rem .35rem; font-size:.59rem; }
.manual-layer-appearance { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.35rem; }.manual-layer-appearance .manual-editor-subheading { grid-column:1 / -1; }.manual-layer-appearance label { min-width:0; font-size:.54rem; }.manual-layer-appearance label b { float:right; color:#557261; font-size:.53rem; }.manual-layer-appearance input { padding:.38rem .35rem; font-size:.59rem; }.manual-layer-appearance input[type="range"] { padding:.2rem 0; }
.manual-connected-data { padding:.42rem; border-left:3px solid transparent; background:#f7f9f6; }
.manual-connected-data > span { display:block; margin-bottom:.3rem; color:#718079; font:600 .52rem "DM Mono",monospace; letter-spacing:.05em; text-transform:uppercase; }
.manual-connected-data.is-connected { border-left-color:var(--view-accent); background:color-mix(in srgb,var(--view-soft) 42%,#fff); }
.manual-connected-data.is-connected > span { color:var(--view-accent); }
.manual-connected-data.is-connected select { border-color:color-mix(in srgb,var(--view-accent) 55%,#fff); background:#fff; box-shadow:0 0 0 2px color-mix(in srgb,var(--view-accent) 14%,transparent); }
.manual-editor-subheading { grid-column:1 / -1; margin-top:.18rem; padding-top:.45rem; border-top:1px solid var(--line); color:#557261; font:600 .52rem "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.manual-layer-picker { display:flex; flex-direction:column; gap:.3rem; color:#557261; font:600 .55rem "DM Mono",monospace; text-transform:uppercase; }
.manual-layer-picker select { padding:.58rem .62rem; color:var(--ink); font:600 .68rem "Space Grotesk",sans-serif; text-transform:none; }
.manual-layer-hint { margin:.4rem 0 .7rem; color:#819087; font-size:.58rem; line-height:1.35; }
.manual-layer-order { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.35rem; margin-top:.5rem; }
.manual-layer-order button { border:1px solid var(--line); padding:.42rem; background:#f7f9f6; color:#52645a; font-size:.55rem; }
.manual-layer-order button:last-child { grid-column:auto; }
.ai-template-actions { grid-template-columns:auto auto minmax(105px,.45fr) minmax(175px,.75fr) auto; }
.background-studio-grid { display:grid; grid-template-columns:minmax(300px,.72fr) minmax(430px,1.28fr); gap:.8rem; align-items:start; }
.background-brief-panel,.background-preview-panel { padding:1rem; }
.background-brief-panel > .section-heading { margin-bottom:.65rem; padding-bottom:.6rem; border-bottom:1px solid var(--line); }
.background-brief-panel .stack-form { gap:.48rem; }
.background-ai-badge { padding:.3rem .42rem; background:#172f27; color:#d5f2df; font:600 .5rem "DM Mono",monospace; letter-spacing:.06em; }
.background-source-group { display:grid; grid-template-columns:1fr; gap:.45rem; padding:.52rem; border:1px solid var(--line); background:#f8faf7; }
.background-source-group::before,.background-option-grid::before,.background-colour-row::before { grid-column:1 / -1; color:#587064; font:600 .49rem "DM Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
.background-source-group::before { content:"Layout source"; }
.background-source-group label { gap:.25rem; font-size:.59rem; }.background-source-group select { padding:.56rem .6rem; font-size:.68rem; }
.background-side-row { display:grid; grid-template-columns:1fr auto; align-items:center; gap:.25rem; color:#607168; font-size:.59rem; font-weight:700; }
.background-side-row > span { grid-column:1 / -1; }.background-side-flow { display:flex; align-items:center; gap:.25rem; }.background-side-flow b { padding:.34rem .38rem; background:#e9eeea; color:#829087; font:600 .48rem "DM Mono",monospace; white-space:nowrap; }.background-side-flow b.active { background:#172f27; color:#fff; }.background-side-flow b.complete { background:#dceee1; color:#2f6c45; }.background-side-flow b.active.complete { background:#172f27; color:#fff; }.background-side-flow i { color:#9aa69d; font-style:normal; }.background-side-row > button { border:0; padding:.3rem .2rem; background:transparent; color:#a25a4e; font-size:.5rem; font-weight:700; }
.background-option-grid { display:grid; grid-template-columns:1fr 1fr; gap:.42rem; padding:.52rem; border:1px solid var(--line); background:#fff; }
.background-option-grid::before { content:"Design recipe"; }
.background-option-grid label { gap:.25rem; font-size:.58rem; }.background-option-grid select { padding:.55rem .58rem; font-size:.67rem; }
.background-pair-recipe { display:grid; grid-template-columns:1fr 1fr; gap:.42rem; }.background-pair-recipe > div { min-width:0; padding:.5rem .55rem; border:1px solid #d9e4db; background:#f6f9f5; }.background-pair-recipe > div:last-child { border-color:#d8e0e9; background:#f4f7fa; }.background-pair-recipe span,.background-pair-recipe strong,.background-pair-recipe small { display:block; }.background-pair-recipe span { color:#718078; font:600 .46rem "DM Mono",monospace; letter-spacing:.09em; text-transform:uppercase; }.background-pair-recipe strong { margin-top:.2rem; overflow:hidden; color:#294537; font-size:.64rem; text-overflow:ellipsis; white-space:nowrap; }.background-pair-recipe small { margin-top:.15rem; color:#6b7a72; font-size:.5rem; line-height:1.35; }
.background-model-field { grid-column:1 / -1; }.background-model-field small { display:none; }
.institute-ai-path { grid-column:1 / -1; display:flex; align-items:center; gap:.45rem; padding:.5rem .58rem; border:1px solid #b8d8cb; background:#edf7f1; color:#315f4a; }
.institute-ai-path span { font:600 .48rem "DM Mono",monospace; letter-spacing:.09em; }
.institute-ai-path strong { font-size:.62rem; }
.institute-ai-path label { display:flex; align-items:center; gap:.28rem; margin-left:auto; color:#4b6c5a; font-size:.52rem; font-weight:700; }
.institute-ai-path select { width:auto; min-width:112px; padding:.32rem .38rem; border-color:#b8d8cb; background:#fff; color:#315f4a; font-size:.57rem; }
.institute-ai-path small { margin-left:auto; color:#5f786b; font-size:.53rem; }
.background-colour-row { display:grid; grid-template-columns:64px 64px 64px minmax(120px,1fr); gap:.42rem; padding:.52rem; border:1px solid #dbe5dc; background:#eef4ee; }
.background-colour-row::before { content:"Colour controls"; }
.background-colour-row label { min-width:0; gap:.25rem; font-size:.52rem; }.background-colour-row input[type="color"] { min-height:30px; padding:.15rem; }.background-colour-row input[type="range"] { padding:0; }
.background-brief-field { gap:.3rem; padding-top:.15rem; }.background-brief-field textarea { min-height:76px; padding:.58rem .62rem; font-size:.66rem; }
.background-safety-note { margin:0; padding:.42rem .52rem; border-left:3px solid #4c8a63; background:#edf6ef; color:#4b6655; font-size:.54rem; line-height:1.35; }
.background-generate-row { display:flex; align-items:center; gap:.5rem; }
.background-generate-row .button { flex:0 0 auto; width:auto; min-width:132px; padding:.58rem .78rem; border:1px solid #a9cdb4; border-radius:3px; background:#eaf5ed; color:#356b4b; font-size:.62rem; box-shadow:none; }
.background-generate-row .button:hover { background:#dceee1; border-color:#85b596; box-shadow:0 5px 12px rgba(72,116,85,.12); }
.background-generate-row .button:disabled { background:#edf2ed; color:#8b9b8f; border-color:#d7e1d8; }
.background-reference-status { display:flex; min-height:34px; align-items:center; padding:.38rem .5rem; border:1px solid #d3e2d6; background:#f5f9f5; color:#65776b; font:700 .52rem "DM Mono",monospace; white-space:nowrap; }
.background-reference-status.is-active { border-color:#9fc3a8; background:#eaf5ed; color:#2f6541; }
.background-brief-field > span { display:flex; align-items:center; justify-content:space-between; gap:.5rem; }.background-brief-field > span button { border:0; padding:.15rem 0; background:transparent; color:#2f795d; font-size:.52rem; font-weight:700; }.background-brief-field > span button:hover { color:#172f27; text-decoration:underline; }
.background-preview-panel { position:sticky; top:.65rem; overflow:hidden; }
.background-preview-tools { display:flex; flex-direction:column; align-items:flex-end; gap:.4rem; }.background-preview-tools .ai-side-toggle button { padding:.34rem .5rem; font-size:.52rem; }
.background-comparison-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.45rem; margin:.65rem 0; }
.background-choice { display:flex; min-width:0; flex-direction:column; gap:.3rem; border:1px solid #d4dfd6; padding:.45rem; background:#f7f9f6; color:#31483b; text-align:left; }
.background-choice:hover { border-color:#6d9a7a; background:#eef5ef; }.background-choice.is-selected { border-color:#d69b1f; background:#fff8e2; box-shadow:inset 0 0 0 1px #d69b1f; }
.background-choice-card { display:grid; min-height:105px; place-items:center; padding:.35rem; overflow:hidden; background:#263a30; }.background-choice-preview { width:100%; border-radius:4px; }.background-choice-preview.is-portrait { width:min(100%,72px); }
.background-choice strong { display:flex; overflow:hidden; width:100%; align-items:center; justify-content:space-between; gap:.25rem; font-size:.6rem; text-overflow:ellipsis; white-space:nowrap; }.background-choice strong em { padding:.16rem .22rem; background:#d69b1f; color:#fff; font:600 .42rem "DM Mono",monospace; font-style:normal; letter-spacing:.04em; text-transform:uppercase; }.background-choice small { overflow:hidden; width:100%; color:#6e7c74; font:500 .48rem "DM Mono",monospace; text-overflow:ellipsis; white-space:nowrap; }
.background-choice.is-error { justify-content:flex-start; border-color:#ecc8c1; background:#fff5f3; }.background-choice.is-error small { white-space:normal; line-height:1.35; }.background-choice-error { display:grid; min-height:105px; place-items:center; background:#f7e4e0; color:#a84a3e; font:600 .54rem "DM Mono",monospace; text-transform:uppercase; }
.background-preview-stage { display:grid; min-height:400px; place-items:center; margin:.65rem 0; padding:1.15rem; background-color:#24372d; background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px); background-size:13px 13px; }
.background-card-render { display:grid; width:100%; place-items:center; transform:perspective(900px) rotateY(0); opacity:1; transition:transform .18s ease,opacity .18s ease; transform-style:preserve-3d; }.background-preview-stage.is-flipping .background-card-render { transform:perspective(900px) rotateY(90deg); opacity:.25; }.background-studio-card { width:min(100%,560px); border-radius:12px; box-shadow:0 24px 55px rgba(0,0,0,.3); backface-visibility:hidden; }.background-studio-card.is-portrait { width:min(100%,280px); }
.background-card-empty { display:flex; min-height:240px; flex-direction:column; align-items:center; justify-content:center; color:#aab9af; text-align:center; }.background-card-empty strong { color:#fff; font-size:.82rem; }.background-card-empty span { max-width:280px; margin-top:.35rem; font-size:.62rem; }
.background-back-prompt { margin:0 0 .55rem; padding:.5rem .6rem; border-left:3px solid #4b7fa8; background:#edf4f8; color:#4b6475; font-size:.57rem; line-height:1.4; }.background-back-prompt strong { color:#254b66; }
.background-studio-actions { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.4rem; }.background-studio-actions .button { width:100%; min-width:0; padding:.62rem .42rem; font-size:.57rem; }
.background-preview-note { margin:.6rem 0 0; color:#6d7c73; font-size:.6rem; line-height:1.45; text-align:center; }
.background-asset-library { margin-top:.8rem; padding:1rem; }.background-asset-library > .section-heading { margin-bottom:.7rem; }.background-asset-library .helper { margin:.2rem 0 0; }
.background-assets-grid,.starter-background-assets { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:.55rem; }.background-asset-card { min-width:0; overflow:hidden; border:1px solid #d7e0d8; background:#fff; }.background-asset-image { position:relative; display:block; width:100%; aspect-ratio:856/540; border:0; padding:0; background-color:#e7ece6; background-position:center; background-size:100% 100%; background-repeat:no-repeat; }.background-asset-image:not(:disabled) { cursor:pointer; }.background-asset-image.is-portrait { aspect-ratio:540/856; background-size:100% 100%; }.background-side-badge { position:absolute; right:.35rem; bottom:.35rem; padding:.2rem .3rem; background:rgba(23,47,39,.86); color:#fff; font:600 .43rem "DM Mono",monospace; letter-spacing:.06em; text-transform:uppercase; }.background-asset-copy { padding:.45rem .5rem .35rem; }.background-asset-copy strong,.background-asset-copy small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.background-asset-copy strong { font-size:.61rem; }.background-asset-copy small { margin-top:.15rem; color:#718079; font:500 .47rem "DM Mono",monospace; text-transform:uppercase; }.background-asset-copy .background-pair-note { color:#3f7553; font-weight:700; text-transform:none; }.background-asset-actions { display:grid; grid-template-columns:1fr auto; border-top:1px solid #e0e6df; }.background-asset-actions button { border:0; padding:.42rem .5rem; background:#f4f7f3; color:#3f5d49; font-size:.55rem; font-weight:700; }.background-asset-actions button + button { border-left:1px solid #e0e6df; }.background-asset-actions button.danger { color:#ad4439; }.background-asset-actions button:disabled { cursor:not-allowed; opacity:.38; }
.background-palette-note { margin:0; padding:0 .12rem; color:#64766b; font:600 .5rem/1.3 "DM Mono",monospace; letter-spacing:.01em; }
.cleanup-panel { margin-top:.8rem; }.cleanup-summary { display:flex; align-items:center; gap:.65rem; flex-wrap:wrap; padding:.7rem; border:1px solid #d8e3d9; background:#f4f8f4; }.cleanup-summary > span:first-child { color:#2f5d43; font-weight:700; }.cleanup-summary > span:nth-child(2) { flex:1; min-width:220px; color:#718079; font-size:.65rem; }.cleanup-summary button { border:1px solid #cbd8cd; padding:.48rem .65rem; background:#fff; color:#385344; font-size:.62rem; font-weight:700; cursor:pointer; }.cleanup-summary button.danger { border-color:#e4b8ae; background:#fff4f1; color:#ad4439; }.cleanup-summary button:disabled { cursor:not-allowed; opacity:.45; }
.cleanup-breakdown { margin-top:.55rem; border-top:1px solid #dfe7df; color:#65776b; font-size:.62rem; }.cleanup-breakdown details { padding:.48rem .1rem 0; }.cleanup-breakdown summary { cursor:pointer; color:#80651f; font-weight:700; }.cleanup-protected-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.25rem .7rem; margin-top:.42rem; padding:.45rem; background:#fffaf0; }.cleanup-protected-list div { min-width:0; overflow:hidden; }.cleanup-protected-list strong,.cleanup-protected-list span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.cleanup-protected-list strong { color:#53685b; font-size:.58rem; }.cleanup-protected-list span { margin-top:.08rem; color:#8a7748; font:500 .48rem "DM Mono",monospace; }.cleanup-protected-list small { grid-column:1 / -1; color:#8a7748; font-size:.52rem; }.cleanup-all-clear { display:block; padding:.45rem 0; color:#557261; }
.starter-background-assets { max-height:390px; margin-top:.55rem; padding:.55rem; overflow:auto; border:1px solid #d4e1d6; background:#e9f0e9; }.starter-background-assets .background-asset-card { display:grid; grid-template-columns:90px 1fr; }.starter-background-assets .background-asset-image { grid-row:1 / 3; height:100%; aspect-ratio:auto; }.starter-background-assets .background-asset-copy { min-width:0; }.starter-background-assets .background-asset-actions { grid-column:2; }
.manual-card-layer { z-index:2; }
.admin-access-requests-panel { margin-top:.8rem; border-top:3px solid var(--view-accent); }.admin-access-requests-panel .count-pill { background:var(--view-soft); color:var(--view-accent); }.admin-access-requests-panel .section-heading { margin-bottom:.55rem; }.access-request-record { align-items:center; gap:.7rem; padding:.55rem 0; }.access-request-record .record-main { min-width:0; }.access-request-record .record-main small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.access-request-record .record-main small + small { color:#839087; }.access-request-record .record-tools { display:flex; align-items:center; flex:0 0 auto; gap:.25rem; }.access-request-record .record-tools button { white-space:nowrap; padding:.25rem .35rem; font-size:.58rem; }.request-approve { color:#8b4e61; }.request-reject,.request-delete { color:#ad4439; }
@media (max-width:620px) { .access-request-record { align-items:flex-start; flex-direction:column; }.access-request-record .record-tools { width:100%; flex-wrap:wrap; }.access-request-record .record-tools button { flex:1; } }
#starter-card-preview { display:block; overflow:visible; background:transparent; box-shadow:none; }
#starter-card-preview .quick-template-card-preview { width:100%; height:100%; }
#starter-card-preview.is-portrait { width:min(100%,185px); }
.template-workflow-context { display:flex; align-items:center; gap:.7rem; margin:-.25rem 0 .75rem; padding:.58rem .7rem; border-left:4px solid #7da98a; background:#edf5ef; }.template-workflow-context button { flex:0 0 auto; border:1px solid #bfd3c4; padding:.4rem .55rem; background:#fff; color:#3d664b; font-size:.58rem; font-weight:700; }.template-workflow-context div { display:flex; flex:1 1 auto; min-width:0; align-items:baseline; gap:.45rem; }.template-workflow-context span,.template-workflow-context strong,.template-workflow-context small { display:block; }.template-workflow-context span { flex:0 0 auto; color:#708077; font:600 .48rem "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }.template-workflow-context strong { min-width:0; overflow:hidden; font-size:.72rem; text-overflow:ellipsis; white-space:nowrap; }.template-workflow-context small { flex:0 0 auto; margin:0; color:#66766d; font-size:.53rem; white-space:nowrap; }.template-gallery-card.is-workflow-selected { border-color:#7da98a; box-shadow:inset 0 0 0 2px #7da98a,0 12px 30px rgba(45,91,62,.1); }.template-gallery-card.is-layout-starter { border-color:#c7d9cc; background:linear-gradient(145deg,#fff 0%,#f3f8f4 100%); }.template-assignment-summary.layout-ready { border-color:#b9d6c2; background:#eaf4ed; }.template-assignment-summary.layout-ready strong { color:#2f6f4e; }
.layer-signature { align-items:center; justify-content:center; border-bottom:2px solid currentColor; color:#52677a; font:500 8px "DM Mono",monospace; letter-spacing:.05em; text-transform:uppercase; }
.layer-signature img { display:block; width:100%; height:100%; object-fit:contain; }
.manual-card-layer.layer-shape { z-index:0; }
@media (max-width:1180px) { .manual-studio-grid { grid-template-columns:minmax(235px,280px) 1fr; }.manual-layer-panel { position:static; grid-column:1 / -1; max-height:none; }.manual-layer-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); max-height:none; }.manual-layer-editor { max-width:760px; }.manual-mouse-toolbar { align-items:flex-start; flex-direction:column; }.manual-quick-tools { justify-content:flex-start; }.ai-template-actions { grid-template-columns:1fr 1fr; } }
@media (max-width:980px) { .background-studio-grid { grid-template-columns:1fr; }.background-preview-panel { position:static; }.background-preview-stage { min-height:430px; }.background-studio-actions { grid-template-columns:1fr 1fr; } }
@media (max-width:760px) { .manual-studio-grid { grid-template-columns:1fr; }.manual-tool-panel,.manual-layer-panel { position:static; max-height:none; }.manual-stage { min-height:380px; padding:2.1rem .7rem; }.manual-layer-list { grid-template-columns:1fr 1fr; }.manual-save-bar { grid-template-columns:repeat(4,minmax(0,1fr)); gap:.25rem; }.manual-save-bar .button { min-height:36px; padding:.5rem .18rem; font-size:.51rem; }.manual-save-bar .button:last-child { grid-column:auto; }.manual-source-grid { grid-template-columns:1fr; } }
@media (max-width:620px) { .background-source-group,.background-option-grid,.background-pair-recipe,.background-colour-row,.background-studio-actions { grid-template-columns:1fr; }.background-side-row { grid-template-columns:1fr auto; }.background-comparison-grid { grid-template-columns:1fr; }.background-choice { display:grid; grid-template-columns:110px 1fr; align-items:center; }.background-choice-card,.background-choice-error { grid-row:1 / 3; min-height:82px; }.background-preview-stage { min-height:340px; padding:.8rem; }.background-studio-card.is-portrait { width:min(100%,260px); } }
@media (max-width:620px) { .page-number { top:.1rem; right:.35rem; font-size:6.5rem; }.view .page-heading { min-height:108px; padding:.8rem .85rem; }.view .page-heading h3 { font-size:2.55rem; } }
/* Keep both preview workspaces light so the card is the visual focus. */
.quick-template-preview-panel { background:#eef3ef; background-image:radial-gradient(rgba(74,94,80,.09) 1px,transparent 1px); }
.quick-template-preview-panel > div:first-child { color:#42604d; }
.quick-template-preview-panel > div:first-child small { color:#718679; }
.quick-template-preview-panel > p { color:#718679; }
.quick-template-card { box-shadow:0 18px 40px rgba(41,65,50,.18); }
.background-choice-card { background:#eef3ef; }
.background-preview-stage { background-color:#eef3ef; background-image:radial-gradient(rgba(74,94,80,.09) 1px,transparent 1px); }
.background-card-empty { color:#718679; }
.background-card-empty strong { color:#355542; }
.background-asset-actions { grid-template-columns:repeat(auto-fit,minmax(58px,1fr)); }
.background-asset-actions button { min-width:0; padding-left:.28rem; padding-right:.28rem; }
.background-asset-card.is-style-reference { border-color:#92b99d; background:#f2f8f3; box-shadow:inset 3px 0 0 #70a17d; }
.background-asset-card.is-paired { border-color:#d9b84f; background:#fffdf3; box-shadow:inset 4px 0 0 #e6c85e,0 8px 20px rgba(174,132,29,.12); }
.background-asset-card.is-paired .background-pair-note { color:#8b6812; }
.background-pair-badge { position:absolute; top:.35rem; left:.35rem; padding:.22rem .34rem; border:1px solid rgba(255,255,255,.85); border-radius:999px; background:rgba(112,82,12,.88); color:#fff; font:700 .43rem "DM Mono",monospace; letter-spacing:.05em; text-transform:uppercase; box-shadow:0 2px 8px rgba(65,47,8,.18); }
.background-asset-card.is-style-reference .background-asset-image { position:relative; }
.background-reference-badge { position:absolute; top:.35rem; right:.35rem; padding:.2rem .3rem; border:1px solid rgba(255,255,255,.8); background:rgba(42,101,61,.86); color:#fff; font:700 .43rem "DM Mono",monospace; letter-spacing:.05em; text-transform:uppercase; box-shadow:0 2px 8px rgba(27,62,38,.16); }
.background-asset-actions button.is-reference { background:#dcefe2; color:#245d3a; }
.background-profile-line { overflow:hidden; color:#52715c !important; text-overflow:ellipsis; }
@media (max-width:620px) { .background-generate-row { align-items:stretch; flex-direction:column; }.background-reference-status { align-self:flex-start; } }
.background-comparison-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:900px) { .background-comparison-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) { .background-comparison-grid { grid-template-columns:1fr; } }
@media (max-width:620px) { .manual-geometry-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .manual-geometry-grid .manual-editor-subheading { grid-column:1 / -1; } }

/* Keep selection emphasis on the active layer and its editor, not the panel. */
.ai-card-layer.is-selected { outline-color:var(--view-accent); }
.manual-card-layer.is-selected { outline:2px solid var(--view-accent); outline-offset:3px; }
.manual-selection-box { border:0; }
.manual-layer-picker { border-left:3px solid var(--view-accent); padding:.42rem; background:color-mix(in srgb,var(--view-soft) 36%,#fff); color:var(--view-accent); }
.manual-layer-picker select { border-color:color-mix(in srgb,var(--view-accent) 55%,#fff); accent-color:var(--view-accent); }
.manual-editor-heading.is-selected-layer { border-left:3px solid var(--view-accent); padding:.38rem .45rem; background:color-mix(in srgb,var(--view-soft) 28%,#fff); }
.manual-editor-heading.is-selected-layer strong { color:var(--view-accent); }
.manual-editor-heading.is-selected-layer small { display:block; margin-top:.18rem; color:var(--ink); font:600 .6rem "Space Grotesk",sans-serif; }
.ai-card-layer.layer-barcode { display:flex; align-items:center; justify-content:center; padding:8px 5%; background:#fff; }
.barcode-bars { display:flex; align-items:stretch; width:92%; height:58%; min-height:12px; background:#fff; }
.barcode-bars i { display:block; height:100%; }
.barcode-bar { background:#17201d; }
.barcode-gap { background:#fff; }
.ai-card-layer.layer-image { align-items:center; justify-content:center; background:transparent; }
.ai-card-layer.layer-image img { display:block; width:100%; height:100%; object-fit:contain; }
.library-card-layer.layer-image { align-items:center; justify-content:center; background:transparent; }
.library-card-layer.layer-image img { display:block; width:100%; height:100%; object-fit:contain; }
.production-desk-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); gap:1rem; align-items:start; }
.production-controls,.production-settings,.production-preview-surface { padding:1.15rem; }
.production-controls .section-heading,.production-settings .section-heading { margin-bottom:.9rem; }
.production-filter-grid,.production-sheet-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.production-filter-grid label,.production-sheet-grid label { min-width:0; font-size:.67rem; }
.production-filter-grid select,.production-sheet-grid select,.production-sheet-grid input { padding:.62rem .65rem; font-size:.74rem; }
.production-batches-label { grid-column:1 / -1; }
.production-batches-label select { min-height:100px; }
.production-batches-label small,.production-sheet-grid small { margin-top:.18rem; color:var(--muted); font-size:.58rem; font-weight:500; line-height:1.35; }
.production-people { display:flex; flex-direction:column; gap:.35rem; max-height:330px; margin-top:.85rem; overflow:auto; border-top:1px solid var(--line); padding-top:.75rem; }
.production-person { display:grid; grid-template-columns:22px minmax(0,1fr) auto; align-items:center; gap:.55rem; padding:.55rem .6rem; background:#f7f9f6; }
.production-person input { width:auto; margin:0; accent-color:var(--view-accent); }
.production-person strong,.production-person small { display:block; }
.production-person strong { font-size:.72rem; }
.production-person small { margin-top:.16rem; color:var(--muted); font-size:.6rem; }
.production-person span { padding:.22rem .32rem; background:#eaf6ee; color:#2f795d; font:600 .5rem "DM Mono",monospace; text-transform:uppercase; }
.production-person.is-issued span { background:#fff4dc; color:#9a6815; }
.production-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; margin-top:.9rem; }
.production-actions > button:not(.button) { min-height:34px; border:1px solid var(--line); background:#f7f9f6; color:var(--muted); font-size:.64rem; font-weight:700; }
.production-actions .button { min-width:0; padding:.65rem .72rem; font-size:.67rem; }
.production-actions #production-export { min-height:34px; border:1px solid #d7c57f; background:#fff9df; color:#80651f; font-size:.64rem; font-weight:700; }
.production-preview-surface { margin-top:1rem; }
.production-preview-surface > .section-heading { margin-bottom:.8rem; }
.production-sheet-preview { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; min-height:220px; padding:.8rem; background:#edf1eb; }
.production-sheet-preview.is-one { grid-template-columns:1fr; }
.production-sheet-preview.is-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.production-sheet-preview .library-card-canvas { width:100%; box-shadow:0 8px 18px rgba(33,46,40,.12); }
.production-sheet-empty { display:grid; grid-column:1 / -1; min-height:180px; place-items:center; color:var(--muted); font-size:.72rem; text-align:center; }
@media (max-width:980px) { .production-desk-grid { grid-template-columns:1fr; }.production-sheet-preview.is-three { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:620px) { .production-filter-grid,.production-sheet-grid { grid-template-columns:1fr; }.production-actions { grid-template-columns:1fr; }.production-sheet-preview,.production-sheet-preview.is-three { grid-template-columns:1fr; } }
/* Keep local import controls visible but clearly locked when an Inbox source is selected. */
#super-import-source:disabled,
#super-import-file:disabled,
#super-import-text:disabled { cursor: not-allowed; opacity: .52; }
#super-import-file-wrap.is-source-locked,
#super-import-text-wrap.is-source-locked { opacity: .62; }

/* User accounts keeps the same hierarchy as the other workspace pages without
   inheriting the oversized form spacing used by the login and overview views. */
#view-admins .page-heading { min-height:108px; margin-bottom:1.25rem; padding: .9rem 1.05rem; }
#view-admins .page-heading h3 { margin:.45rem 0 .2rem; font-size:2.85rem; }
#view-admins .form-layout { gap:.8rem; }
#view-admins .form-layout > .surface { padding:1.1rem; }
#view-admins .form-layout .section-heading { margin-bottom:1rem; }
#view-admins .form-layout .stack-form { gap:.72rem; }
#view-admins .form-layout label { gap:.3rem; font-size:.73rem; }
#view-admins .form-layout input,
#view-admins .form-layout select { padding:.64rem .7rem; font-size:.73rem; }
#view-admins .list-surface { min-height:0; }
#view-admins .record-list { gap:.45rem; }
#view-admins .record { gap:.7rem; padding:.68rem .72rem; }
#view-admins .record-main strong { font-size:.76rem; }
#view-admins .record-main small { margin-top:.16rem; font-size:.62rem; line-height:1.35; }
#view-admins .record-tools { gap:.3rem; }
#view-admins .record-tools .record-link { margin-top:0; font-size:.62rem; }
#view-admins .account-record { align-items:flex-start; }
#view-admins .account-record .record-main { min-width:0; flex:1; }
#view-admins .account-title { display:flex; align-items:center; gap:.45rem; }
#view-admins .account-title .record-tag { padding:.22rem .35rem; font-size:.5rem; }
#view-admins .account-signin { color:#75827a; }
#view-admins .account-binding { display:flex; align-items:center; gap:.35rem; margin-top:.5rem; }
#view-admins .account-binding select { width:min(260px,100%); min-height:32px; padding:.35rem .45rem; border:1px solid var(--line); background:#fff; color:var(--ink); font-size:.62rem; }
#view-admins .account-binding .record-link { margin:0; white-space:nowrap; }
#view-admins .account-actions { flex-wrap:wrap; justify-content:flex-end; }
@media (max-width:720px) { #view-admins .account-record { flex-direction:column; } #view-admins .account-actions { width:100%; justify-content:flex-start; } }
#view-admins .admin-access-requests-panel { margin-top:.7rem; padding:1.1rem; }
#view-admins .admin-access-requests-panel .section-heading { margin-bottom:.45rem; }
#view-admins .admin-access-requests-panel { padding:.82rem 1.1rem; background:linear-gradient(105deg,#fff8fa 0%,#fff 72%); }
#view-admins .admin-access-requests-panel .eyebrow { color:var(--view-accent); }
#view-admins .admin-access-requests-panel .section-heading h4 { color:#673c4c; font-size:.88rem; }
#view-admins .admin-access-requests-panel .section-heading .muted { max-width:720px; font-size:.67rem; line-height:1.35; }
#view-admins .admin-access-requests-panel .count-pill { padding:.3rem .42rem; font-size:.58rem; }
#view-admins .admin-access-requests-panel .record-list { margin-top:.15rem; }
#view-admins .admin-access-requests-panel .access-request-record { padding:.42rem 0; border-top:1px solid #f0dfe5; }
#view-admins .admin-access-requests-panel .access-request-record:first-child { border-top:0; }
#view-admins .admin-access-requests-panel .request-approve { color:#7d4b5d; font-weight:700; }
#view-admins .admin-access-requests-panel .request-reject,
#view-admins .admin-access-requests-panel .request-delete { color:#ad4439; }
#view-admins .admin-access-requests-panel { padding:.58rem .82rem; }
#view-admins .admin-access-requests-panel .section-heading { gap:.45rem; margin-bottom:.22rem; }
#view-admins .admin-access-requests-panel .section-heading h4 { margin:.08rem 0 .02rem; font-size:.78rem; }
#view-admins .admin-access-requests-panel .section-heading .muted { font-size:.59rem; line-height:1.2; }
#view-admins .admin-access-requests-panel .count-pill { padding:.24rem .34rem; font-size:.52rem; }
#view-admins .admin-access-requests-panel .access-request-record { gap:.45rem; padding:.3rem 0; }
#view-admins .admin-access-requests-panel .access-request-record .record-main strong { font-size:.7rem; }
#view-admins .admin-access-requests-panel .access-request-record .record-main small { margin-top:.08rem; font-size:.56rem; line-height:1.2; }
#view-admins .admin-access-requests-panel .access-request-record .record-tools { gap:.18rem; }
#view-admins .admin-access-requests-panel .access-request-record .record-tools button { padding:.2rem .28rem; font-size:.53rem; }
#view-admins .admin-access-requests-panel .empty-list { padding:.35rem .1rem .15rem; border:0; color:#8b6a77; text-align:left; font-size:.6rem; }
#view-admins .cleanup-panel { margin-top:.7rem; }
#view-admins .cleanup-panel { padding: .9rem 1.1rem; }
#view-admins .cleanup-panel .section-heading { align-items:center; gap:.7rem; }
#view-admins .cleanup-panel .section-heading h4 { font-size:.88rem; }
#view-admins .cleanup-panel .section-heading .muted { max-width:720px; font-size:.67rem; line-height:1.35; }
#view-admins .cleanup-summary { gap:.45rem; padding:.55rem .65rem; }
#view-admins .cleanup-summary > span:first-child { font-size:.72rem; }
#view-admins .cleanup-summary > span:nth-child(2) { min-width:180px; font-size:.59rem; line-height:1.3; }
#view-admins .cleanup-summary button { padding:.38rem .5rem; font-size:.57rem; }
#view-admins .cleanup-breakdown { margin-top:.4rem; font-size:.58rem; }
#view-admins .cleanup-breakdown details { padding-top:.35rem; }
#view-admins .cleanup-protected-list { gap:.2rem .55rem; margin-top:.3rem; padding:.38rem; }
@media (max-width:620px) {
  #view-admins .page-heading { min-height:0; }
  #view-admins .page-heading h3 { font-size:2.45rem; }
}
.field-compact-row { grid-template-columns:20px minmax(0,1.8fr) 100px 86px 62px 28px; gap:.45rem; }
.field-drag-handle { align-self:end; width:20px; height:28px; padding:0; border:0; background:transparent; color:#8aa091; cursor:grab; font:700 .58rem "DM Mono", monospace; letter-spacing:-.12em; }
.field-drag-handle:hover { color:var(--accent); background:#edf2eb; }
.field-drag-handle:active { cursor:grabbing; }
.field-row.is-dragging { opacity:.48; border-color:var(--accent); }
@media (max-width:620px) { .field-compact-row { grid-template-columns:18px 1fr 92px 72px 56px 28px; gap:.35rem; }.field-drag-handle { width:18px; } }
.field-builder { gap:.3rem; }
.adaptive-field-panel { margin-top:.55rem; padding:.62rem .72rem; border:1px solid #d8c77c; background:#fff9e7; }
.adaptive-review-link { color:#9a6a16 !important; font-weight:700; }
.adaptive-field-heading { display:flex; align-items:center; justify-content:space-between; gap:.65rem; }
.adaptive-field-heading > div { display:grid; gap:.12rem; }
.adaptive-field-heading strong { color:#5d4b1b; font-size:.78rem; }
.adaptive-field-heading small { color:#796f56; font-size:.61rem; line-height:1.3; }
.adaptive-field-heading .eyebrow { color:#99751f; font-size:.53rem; }
.adaptive-field-row { display:flex; align-items:center; justify-content:space-between; gap:.55rem; padding:.48rem 0; border-top:1px solid #eee2b9; }
.adaptive-field-row:first-child { margin-top:.4rem; }
.adaptive-field-row > div:first-child { min-width:0; display:grid; gap:.12rem; }
.adaptive-field-row strong { color:#2b3933; font-size:.68rem; }
.adaptive-field-row small { color:#7d806f; font-size:.57rem; line-height:1.25; }
.adaptive-field-actions { display:flex; align-items:center; gap:.35rem; flex:0 0 auto; }
.adaptive-field-actions .button { padding:.3rem .45rem; font-size:.57rem; }
.adaptive-field-actions .text-button { padding:.2rem; background:none; border:0; font-size:.58rem; cursor:pointer; }
@media (max-width:620px) { .adaptive-field-row { align-items:flex-start; flex-direction:column; }.adaptive-field-actions { width:100%; justify-content:flex-start; } }
.form-field-health { margin:.38rem 0 0; padding:.42rem .52rem; border:1px solid #b9d8c2; background:#edf5ef; color:#557261; font-size:.64rem; line-height:1.35; }.form-field-health span { margin-right:.4rem; color:#2f795d; font:600 .56rem "DM Mono", monospace; letter-spacing:.07em; text-transform:uppercase; }.form-field-health strong { color:#2f795d; }.form-field-health.has-issues { border-color:#e7c778; background:#fff8e4; color:#806322; }.form-field-health.has-issues span,.form-field-health.has-issues strong { color:#9a6e16; }
.field-row { padding:.45rem .55rem; }
.field-compact-row { gap:.35rem; }
.field-row label { font-size:.65rem; }
.field-question span, .field-type span { margin-bottom:.18rem; }
.field-row input, .field-row select { padding:.48rem .5rem; font-size:.72rem; }
.field-more { margin-top:.4rem; padding-top:.4rem; }
.batch-signature-status { color:#557261 !important; font-size:.58rem !important; }
.ai-activity-record .record-main small { display:block; }
.ai-activity-filters { display:flex; flex-wrap:nowrap; align-items:center; gap:.3rem; margin:0 0 .45rem; padding:.38rem; overflow-x:auto; border:1px solid var(--line); background:#f6faf6; }
.ai-activity-filters select,.ai-activity-filters input { flex:0 0 auto; width:auto !important; min-width:108px; padding:.34rem .42rem; border:1px solid #cfdacf; border-radius:2px; background:#fff; color:var(--ink); font:500 .62rem "IBM Plex Sans",sans-serif; }
.ai-activity-filters input { min-width:104px; }
.ai-activity-filters #ai-activity-feature { min-width:190px; }
.ai-import-reader-panel { display:grid; grid-template-columns:minmax(0, 1fr) 190px auto; align-items:end; gap:.65rem; margin:0 0 .45rem; padding:.62rem .75rem; }
.ai-import-reader-copy .eyebrow { margin-bottom:.12rem; }
.ai-import-reader-copy h4 { margin:0; font-size:.84rem; }
.ai-import-reader-copy .muted { margin:.12rem 0 0; font-size:.64rem; line-height:1.35; }
.ai-import-reader-panel label { display:grid; gap:.16rem; margin:0; color:#587268; font:600 .6rem "IBM Plex Mono",monospace; text-transform:uppercase; letter-spacing:.06em; }
.ai-import-reader-panel select { width:100%; padding:.4rem .46rem; }
.ai-import-reader-panel small { min-height:1.4em; color:#718079; font:500 .58rem "IBM Plex Sans",sans-serif; letter-spacing:0; text-transform:none; }
.ai-import-reader-panel .button { white-space:nowrap; }
@media (max-width:760px) { .ai-import-reader-panel { grid-template-columns:1fr; align-items:stretch; }.ai-import-reader-panel .button { justify-self:start; } }
.ai-activity-record { min-height:0; padding:.38rem .55rem; }
.ai-activity-record .record-main strong { font-size:.68rem; }
.ai-activity-record .record-main small { display:block; margin-top:.08rem; color:#718079; font-size:.58rem; }
.ai-status-completed { color:#2f7550; background:#e8f4eb; }
.ai-status-failed { color:#a43d32; background:#fff0ed; }
.ai-status-fallback { color:#80651f; background:#fff8e2; }
.batch-signature-tools { display:flex; align-items:center; gap:.28rem; margin-left:auto; }
.batch-signature-thumb { display:grid; place-items:center; width:34px; height:34px; overflow:hidden; padding:2px; border:1px solid #cfdacf; border-radius:4px; background:#f7faf7; color:#557261; cursor:pointer; }
.batch-signature-thumb:hover { border-color:#8a6817; background:#fff8e2; }
.batch-signature-thumb img { width:100%; height:100%; object-fit:contain; }
.batch-signature-thumb span { display:grid; place-items:center; font:700 .85rem "DM Mono",monospace; }
.batch-signature-thumb span small { display:none; }
.location-record-header { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; }
.batch-signature-tools { margin-left:0; }
.location-record-actions { justify-self:end; }
.location-record-header > div:first-child > small { display:block; margin-top:.1rem; }
@media (max-width:760px) {
  .location-record-header { grid-template-columns:minmax(0,1fr) auto; }
  .batch-signature-tools { grid-column:2; grid-row:1; }
  .location-record-actions { grid-column:1 / -1; justify-self:stretch; }
}
.multi-mode-toggle button.active { background:#f3df85; color:#1d2423; }.multi-mode-toggle button:not(.active):hover { background:#fff8e2; color:#80651f; }
.batch-unit-summary strong { font-weight:400; color:#557261; }
.batch-unit-summary .batch-name-highlight { color:#8a6817; font-weight:500; }
.form-quick-setup input.is-customized,.form-quick-setup textarea.is-customized,.form-quick-setup select.is-customized,.form-advanced input.is-customized,.form-advanced textarea.is-customized,.form-advanced select.is-customized { border-color:#e3c76d; background:#fffaf0; box-shadow:0 0 0 2px rgba(227,199,109,.16); }

/* ID Card Studio */
.app-shell { background:#f4f6f2; }
.app-shell .sidebar { position:sticky; top:0; width:264px; height:100vh; flex-basis:264px; overflow-y:auto; padding:1.35rem 1rem 1rem; border-right:0; background:#1d2926; scrollbar-width:thin; scrollbar-color:#596a64 transparent; }
.app-shell .brand-mark { color:#fff; font-size:1.35rem; }.app-shell .brand-mark span { color:#f3cf59; }
.app-shell .sidebar-caption { margin:.38rem 0 .12rem; color:#b8d4df; font-size:.59rem; letter-spacing:.12em; }
.app-shell .project-version { margin:0 0 1.1rem; color:#6f817a; font-size:.51rem; }
.app-shell .main-nav { gap:.1rem; }
.nav-section-label { margin:.65rem .55rem .18rem; color:#6f817a; font:500 .47rem "DM Mono",monospace; letter-spacing:.12em; }
.app-shell .nav-item { position:relative; min-height:34px; gap:.62rem; padding:.47rem .56rem; border-radius:0; color:#a8b6b0; font-size:.69rem; }
.app-shell .nav-item span { min-width:26px; color:#71837b; font-size:.52rem; }
.app-shell .nav-item.active,.app-shell .nav-item:hover { color:#f8fbf8; background:#2b3a35; box-shadow:none; }
.app-shell .nav-item.active::before { position:absolute; top:7px; bottom:7px; left:0; width:3px; background:#75b3cf; content:""; }
.app-shell .nav-item.active span { color:#8bc4dc; }
.app-shell .home-link { margin-bottom:.2rem; border:1px solid rgba(255,255,255,.09); color:#d7e1dc; }.app-shell .home-link span { color:#f3cf59; }
.app-shell .hindi-intake-link,.app-shell .stamp-studio-nav-link,.app-shell .automation-nav-link { color:#c3cec9; }
.app-shell .hindi-intake-link span { color:#e3c04c; }.app-shell .stamp-studio-nav-link span { color:#7fb7d2; }.app-shell .automation-nav-link span { color:#df9277; }
.app-shell .sidebar-footer { margin-top:1rem; padding:.8rem .55rem 0; border-top:1px solid rgba(255,255,255,.09); }
.app-shell .status-dot { margin-bottom:.75rem; color:#85968f; font-size:.53rem; }.app-shell .status-dot i { width:6px; height:6px; box-shadow:0 0 0 3px rgba(85,164,119,.18); }
.app-shell .logout-button { color:#9eaaa5; font-size:.65rem; }.app-shell .logout-button:hover { color:#fff; }

.app-shell .content-shell { padding-top:1.35rem; background:linear-gradient(135deg,#f7f8f4 0%,#f1f5f3 100%); }
.app-shell .topbar { align-items:center; margin-bottom:1.35rem; padding-bottom:.9rem; border-bottom:1px solid #d9e1dc; }
.studio-kicker { margin:0 0 .32rem; color:#4f829a; font:600 .52rem "DM Mono",monospace; letter-spacing:.13em; }
.studio-title-row { display:flex; align-items:center; gap:.75rem; }
.app-shell .topbar h2 { margin:0; font-size:1.55rem; }
.app-shell .topbar #workspace-role-label { margin:0; padding:.25rem .4rem; border:1px solid color-mix(in srgb,var(--workspace-accent,#4f829a) 24%,#fff); background:color-mix(in srgb,var(--workspace-soft,#e3f0f5) 55%,#fff); font-size:.48rem; letter-spacing:.07em; }

#view-overview { --view-accent:#4f829a; --view-soft:#dcecf3; --view-number:#c3dce6; }
#view-overview .hero-row { align-items:center; min-height:238px; margin-bottom:1rem; padding:clamp(1.35rem,3vw,2.2rem); border-left:0; background:linear-gradient(115deg,#dfeef4 0%,#fff 63%,#fff3c8 100%); }
#view-overview .hero-row h3 { margin:.65rem 0 0; font-size:clamp(2.75rem,5vw,5rem); }
#view-overview .hero-row h3 em { color:#e85d3f; }
.studio-hero-copy { max-width:540px; margin:.85rem 0 0; color:#5d6d66; font-size:.72rem; line-height:1.5; }
.studio-hero-actions { display:flex; flex-direction:column; gap:.55rem; min-width:205px; }
.studio-hero-actions .button { width:100%; min-width:0; }
#view-overview .stat-grid { gap:.75rem; }
#view-overview .stat-card { min-height:118px; border-top:4px solid var(--stat-accent); background:#fff; box-shadow:0 10px 26px rgba(33,46,40,.055); }
#view-overview .stat-blue { --stat-accent:#6196af; background:#edf6fa; } #view-overview .stat-yellow { --stat-accent:#c89a22; background:#fff8dd; } #view-overview .stat-pink { --stat-accent:#c66f88; background:#fff0f4; }
#view-overview .stat-card span { color:var(--stat-accent); font-size:.58rem; }
#view-overview .stat-card strong { font-size:2.45rem; }

.studio-smart-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:1rem 0; border-top:4px solid #5f8f70; background:#edf5ef; }
.studio-smart-strip article { min-height:142px; padding:1rem; }.studio-smart-strip article + article { border-left:1px solid rgba(72,112,84,.16); }
.studio-smart-strip span { color:#4f829a; font:500 .49rem "DM Mono",monospace; letter-spacing:.08em; }
.studio-smart-strip strong { display:block; margin:.85rem 0 .35rem; font-size:.76rem; }
.studio-smart-strip p { margin:0; color:#5d6d66; font-size:.61rem; line-height:1.48; }
.studio-smart-strip .overview-import-activity { background:rgba(255,255,255,.46); }
.overview-import-activity span { color:#5f8f70; }
.overview-import-activity p { min-height:2.8em; color:#5d6d66; }
.overview-import-open { display:inline-flex; align-items:center; gap:.4rem; margin-top:.72rem; padding:0; border:0; color:#bf5438; background:transparent; font:700 .57rem "DM Mono",monospace; letter-spacing:.04em; text-transform:uppercase; cursor:pointer; }
.overview-import-open i { font-style:normal; color:#bf5438; }
.overview-import-activity.has-waiting p { color:#c44934; font-weight:700; }
.overview-import-activity.has-waiting p:before { content:""; display:inline-block; width:6px; height:6px; margin-right:.38rem; border-radius:50%; background:#e85d3f; vertical-align:middle; }
#view-overview .two-column { margin-top:1rem; }
#view-overview .checklist-card { border-top:4px solid #4f829a; }
.studio-control-card { border-top:4px solid #d49a25; background:#fff7d9; }
.studio-control-card .note-spark { display:grid; width:42px; height:42px; place-items:center; margin-bottom:2rem; border-radius:50%; color:#fff; background:#e85d3f; font:700 .7rem "DM Mono",monospace; }
.studio-control-card h4 { color:#283732; }
.studio-control-card .mono-label { color:#80651f; }

@media (max-width:900px) {
  .app-shell .sidebar { position:static; width:auto; height:auto; overflow:visible; padding:1rem; }
  .app-shell .project-version,.app-shell .sidebar-footer,.nav-section-label { display:none; }
  .app-shell .main-nav { gap:.35rem; padding-top:.8rem; }
  .app-shell .nav-item { min-height:38px; padding:.55rem .68rem; }
  .app-shell .nav-item.active::before { top:auto; right:8px; bottom:0; left:8px; width:auto; height:3px; }
}
@media (max-width:700px) {
  .studio-title-row { align-items:flex-start; flex-direction:column; gap:.35rem; }
  #view-overview .hero-row { min-height:0; padding:1.2rem; }
  .studio-hero-actions { width:100%; }
  .studio-smart-strip { grid-template-columns:1fr; }
  .studio-smart-strip article { min-height:0; }
  .studio-smart-strip article + article { border-top:1px solid rgba(75,61,139,.16); border-left:0; }
}
/* Compact AI reader choice shared by PDF, photo, and text imports. */
.batch-import-actions .ai-provider-choice { display:flex; align-items:center; gap:.28rem; padding:.18rem .38rem; border:1px solid #c5d7c8; background:#fff; color:#56705d; font:500 .54rem "DM Mono",monospace; letter-spacing:.06em; text-transform:uppercase; white-space:nowrap; }
.batch-import-actions .ai-provider-choice { margin-left:auto; }
.batch-import-actions .ai-provider-choice select { min-height:27px; padding:.22rem 1.35rem .22rem .35rem; border:1px solid #a9cbb4; border-radius:4px; background:#f5faf6; color:#28553b; font:600 .58rem "Space Grotesk",sans-serif; letter-spacing:0; text-transform:none; outline:none; }
.batch-import-actions .ai-provider-choice select:focus { border-color:#36734e; box-shadow:0 0 0 2px rgba(54,115,78,.12); }
#admins-nav { display:none !important; }
.record-tag-protected { color:#715b1d; border:1px solid #e6cc70; background:#fff8db; }
.manual-saved-layout-picker { display:grid; gap:.28rem; margin:.55rem 0 .7rem; padding:.55rem; border:1px solid #d9e6da; background:#f5faf5; color:#315c41; font-size:.62rem; font-weight:600; }
.manual-saved-layout-picker select { width:100%; margin:0; }
.manual-saved-layout-picker small { color:#718679; font-size:.56rem; font-weight:400; }
.review-photo-crop-editor { display:grid; grid-column:1 / -1; grid-template-columns:240px minmax(0,1fr); gap:.75rem; align-items:center; margin-top:.2rem; padding:.6rem; border:1px solid #ead390; background:#fff8e2; }
.review-photo-crop-frame { width:240px; height:320px; overflow:hidden; background:#202b29; cursor:grab; touch-action:none; }
.review-photo-crop-frame:active { cursor:grabbing; }
.review-photo-crop-frame canvas { display:block; width:240px; height:320px; }
.review-photo-crop-controls { display:grid; gap:.45rem; }
.review-photo-crop-controls label { display:grid; gap:.25rem; color:#765d1f; font-size:.62rem; font-weight:600; }
.review-photo-crop-controls input[type="range"] { width:100%; accent-color:#b78316; }
.review-photo-crop-controls small { color:#856b29; font-size:.62rem; line-height:1.4; }
.review-photo-crop-controls > div { display:flex; flex-wrap:wrap; gap:.4rem; }
.review-photo-crop-input { position:absolute; width:1px; height:1px; overflow:hidden; opacity:0; pointer-events:none; }
.review-photo-crop-editor.hidden { display:none; }
@media (max-width:620px) {
  .review-photo-crop-editor { grid-template-columns:1fr; }
  .review-photo-crop-frame { justify-self:center; }
}
.location-record-header > div:first-child > small:first-of-type { color:#ef5b42; font-weight:700; }
.batch-heading-actions { display:flex; align-items:center; gap:.55rem; }
.central-intake-builder { margin-bottom:1rem; padding:1rem; border-top:3px solid var(--view-accent); }
.central-intake-builder > .section-heading { align-items:center; margin-bottom:.55rem; gap:.7rem; }
.central-intake-builder > .section-heading h4 { margin:0; font-size:.9rem; }
.central-intake-builder > .section-heading .helper { margin:.12rem 0 0; font-size:.6rem; }
.central-intake-builder .multi-context-strip { gap:.45rem; padding:.55rem; }
.central-intake-builder .multi-context-strip select,
.central-intake-builder .multi-batch-label input { padding:.48rem .55rem; }
.central-intake-builder .multi-batch-label { margin-top:.55rem; }
.central-intake-builder .multi-entry-wrap { margin-top:.65rem; }
.central-intake-builder .multi-save-bar { margin-top:.65rem; padding:.6rem .7rem; }
@media (max-width:700px) {
  .batch-heading-actions { align-items:stretch; flex-direction:column; }
  .central-intake-builder { padding:.85rem; }
}
