:root{color-scheme:light;--brand:#2e3192;--brand-dark:#202369;--brand-light:#eef0ff;--page-bg:#f1f3f9;--surface:#ffffff;--surface-2:#f8f9fc;--sidebar-bg:#1a2035;--sidebar-text:#8d9ab3;--sidebar-text-active:#ffffff;--sidebar-hover:rgba(255,255,255,0.07);--sidebar-active:#2e3192;--sidebar-border:rgba(255,255,255,0.07);--sidebar-width:240px;--sidebar-collapsed-width:64px;--appbar-height:60px;--ink:#111827;--ink-2:#374151;--ink-muted:#6b7280;--border:#e5e7eb;--border-strong:#d1d5db;--success:#059669;--success-bg:#ecfdf5;--warning:#d97706;--warning-bg:#fffbeb;--danger:#dc2626;--danger-bg:#fef2f2;--info:#2563eb;--info-bg:#eff6ff;--shadow-xs:0 1px 2px rgba(17,24,39,0.05);--shadow-sm:0 1px 3px rgba(17,24,39,0.1),0 1px 2px rgba(17,24,39,0.06);--shadow-md:0 4px 6px -1px rgba(17,24,39,0.1),0 2px 4px -1px rgba(17,24,39,0.06);--shadow-lg:0 10px 15px -3px rgba(17,24,39,0.1),0 4px 6px -2px rgba(17,24,39,0.05);--shadow-xl:0 20px 25px -5px rgba(17,24,39,0.1),0 10px 10px -5px rgba(17,24,39,0.04);--radius-sm:4px;--radius:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background:var(--page-bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.9375rem;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.app-layout{display:grid;grid-template-rows:var(--appbar-height) 1fr;height:100vh;overflow:hidden}.app-body{display:flex;overflow:hidden;position:relative}.app-loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--surface)}.app-loading-card{display:flex;width:min(116px,calc(100vw - 3rem));align-items:center;animation:diaconiaLoaderPulse 1.4s ease-in-out infinite}.app-loading-logo-crop{display:block;width:116px;height:74px;overflow:hidden}.app-loading-logo{display:block;width:auto;height:74px;max-width:none}@keyframes diaconiaLoaderPulse{0%,to{opacity:.72;transform:scale(.96)}50%{opacity:1;transform:scale(1)}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-bar{justify-content:space-between;padding:0 1.25rem;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-xs);z-index:30;gap:.75rem}.app-bar,.app-bar-left{display:flex;align-items:center}.app-bar-left{gap:.625rem;min-width:0}.app-bar-right{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.brand-logo{height:34px;width:auto}.sidebar{display:flex;flex-direction:column;width:var(--sidebar-width);min-width:var(--sidebar-width);background:var(--sidebar-bg);overflow:hidden;transition:width .22s ease,min-width .22s ease;flex-shrink:0;z-index:20}.sidebar.sidebar-collapsed{width:var(--sidebar-collapsed-width);min-width:var(--sidebar-collapsed-width)}.sidebar.sidebar-collapsed .nav-label{display:none}.sidebar.sidebar-collapsed .sidebar-brand{justify-content:center;padding:.5rem .5rem .375rem}.sidebar.sidebar-collapsed .sidebar-brand-logo{width:24px;height:24px;max-width:24px;max-height:24px}.sidebar.sidebar-collapsed .sidebar-brand-logo-full{display:none}.sidebar.sidebar-collapsed .sidebar-brand-logo-mark{display:block}.sidebar.sidebar-collapsed .nav-item{justify-content:center;padding:.625rem}.sidebar-brand{display:flex;align-items:center;justify-content:flex-start;min-height:42px;padding:.5rem .75rem .375rem;border-bottom:1px solid var(--sidebar-border);overflow:hidden;flex-shrink:0}.sidebar-brand-logo{display:block;width:auto;height:30px;max-width:150px;object-fit:contain;transition:opacity .15s ease,width .22s ease,height .22s ease}.sidebar-brand-logo-mark{display:none}.nav-items{display:flex;flex-direction:column;padding:.375rem .5rem .75rem;gap:2px;flex:1 1;overflow-y:auto}.nav-footer{padding:.5rem;border-top:1px solid var(--sidebar-border);flex-shrink:0}.nav-item{display:flex;align-items:center;gap:.7rem;padding:.6rem .75rem;border-radius:var(--radius);color:var(--sidebar-text);font-size:.875rem;font-weight:500;white-space:nowrap;transition:background .12s,color .12s;cursor:pointer;border:none;background:transparent;width:100%}.nav-item:hover{background:var(--sidebar-hover);color:#fff}.nav-item.nav-item-active{background:var(--sidebar-active);color:var(--sidebar-text-active)}.nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px}.nav-label{overflow:hidden;text-overflow:ellipsis;line-height:1}.sidebar-overlay{display:none}.hamburger-btn{color:var(--ink-2)}.main-content{flex:1 1;overflow-y:auto;padding:2rem 2.25rem;min-width:0}.access-issue-panel{min-height:calc(100dvh - var(--appbar-height) - 4rem);display:grid;grid-template-columns:auto minmax(0,38rem);align-content:center;justify-content:center;grid-gap:1rem;gap:1rem}.access-issue-status{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:var(--radius-md);background:var(--danger-bg);color:var(--danger);border:1px solid #fecaca;font-size:1.25rem;font-weight:800;line-height:1}.access-issue-copy{display:flex;flex-direction:column;gap:.875rem;min-width:0}.access-issue-copy h1{color:var(--ink);font-size:1.35rem;line-height:1.25}.access-issue-lead{color:var(--ink-2);font-size:.98rem;max-width:34rem}.access-issue-detail{color:var(--ink-muted);font-size:.875rem;max-width:36rem}.access-issue-actions{display:flex;flex-wrap:wrap;gap:.625rem}.page-header{margin-bottom:1.75rem}.page-title{font-size:1.5rem;font-weight:700;color:var(--ink);line-height:1.25;letter-spacing:-.02em}.page-subtitle{margin-top:.3rem;font-size:.875rem;color:var(--ink-muted)}.dashboard-page{--dashboard-map-height:max(20rem,calc(100dvh - var(--appbar-height) - 17rem));display:flex;flex-direction:column;min-height:calc(100dvh - var(--appbar-height) - 4rem)}.stat-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1.25rem;gap:1.25rem;margin-bottom:1.5rem}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-xs);transition:box-shadow .15s,border-color .15s}.stat-card-link{color:inherit;display:block;text-decoration:none}.stat-card-link:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-light),var(--shadow-sm);outline:none}.stat-card:hover{box-shadow:var(--shadow-sm);border-color:var(--border-strong)}.stat-card-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-md);margin-bottom:1.25rem}.stat-card-icon.blue{background:var(--info-bg);color:var(--info)}.stat-card-icon.purple{background:var(--brand-light);color:var(--brand)}.stat-card-icon.green{background:var(--success-bg);color:var(--success)}.stat-card-value{font-size:2.25rem;font-weight:700;color:var(--ink);line-height:1;letter-spacing:-.03em;margin-bottom:.4rem}.stat-card-label{font-size:.875rem;font-weight:600;color:var(--ink-2)}.stat-card-desc{font-size:.78rem;color:var(--ink-muted);margin-top:.2rem}.dashboard-stat-cards{gap:.875rem;margin-bottom:1rem}.dashboard-stat-card{display:grid;grid-template-columns:auto 1fr;grid-column-gap:.75rem;column-gap:.75rem;grid-row-gap:.1rem;row-gap:.1rem;align-items:center;padding:.875rem 1rem}.dashboard-stat-card .stat-card-icon{grid-row:1/4;width:2rem;height:2rem;margin-bottom:0}.dashboard-stat-card .stat-card-value{font-size:1.5rem;margin-bottom:0}.dashboard-stat-card .stat-card-label{font-size:.8125rem}.dashboard-stat-card .stat-card-desc{font-size:.75rem;margin-top:0}.dashboard-loading{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:var(--ink-muted);font-size:.875rem}.dashboard-map-card{display:flex;flex:1 1;flex-direction:column;min-height:28rem}.dashboard-map-body{display:flex}.dashboard-map-body,.dashboard-map-body>*{flex:1 1;min-height:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.card-title{font-size:.9375rem;font-weight:600;color:var(--ink)}.card-body{padding:1.25rem}.quick-links{display:flex;flex-wrap:wrap;gap:.5rem}.quick-link{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .875rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-full);font-size:.875rem;font-weight:500;color:var(--ink-2);transition:background .12s,border-color .12s}.quick-link:hover{background:var(--brand-light);border-color:var(--brand);color:var(--brand-dark)}.toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.form-field{display:flex;flex-direction:column;gap:.3rem}.form-field label{font-size:.75rem;font-weight:700;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em}input:not([type]),input[type=date],input[type=email],input[type=password],input[type=text],select,textarea{height:2.25rem;padding:0 .75rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font-size:.875rem;outline:none;transition:border-color .15s,box-shadow .15s;width:100%}input:not([type]):focus,input[type=date]:focus,input[type=email]:focus,input[type=password]:focus,input[type=text]:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(46,49,146,.1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;height:2.25rem;padding:0 .875rem;border:none;border-radius:var(--radius);font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .12s,opacity .12s;line-height:1}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-dark)}.btn-secondary{background:var(--surface);color:var(--ink-2);border:1px solid var(--border-strong)}.btn-secondary:hover:not(:disabled){background:var(--surface-2)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.125rem;height:2.125rem;border:none;border-radius:var(--radius);background:transparent;color:var(--ink-2);cursor:pointer;transition:background .12s,color .12s;flex-shrink:0;padding:0}.icon-btn:hover{background:var(--surface-2)}.avatar-circle{display:flex;align-items:center;justify-content:center;width:2.125rem;height:2.125rem;border-radius:var(--radius-full);background:var(--brand);color:#fff;font-size:.8rem;font-weight:700;overflow:hidden;flex-shrink:0;border:2px solid var(--brand-light);-webkit-user-select:none;-moz-user-select:none;user-select:none}.avatar-circle img{width:100%;height:100%;object-fit:cover}.avatar-edit-wrap{position:relative;display:inline-block;line-height:0;margin-bottom:1.75rem}.avatar-camera-btn{position:absolute;bottom:4px;right:4px;width:1.75rem;height:1.75rem;border-radius:var(--radius-full);background:var(--brand);color:#fff;border:2px solid var(--surface);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .15s}.avatar-camera-btn:hover:not(:disabled){background:var(--brand-dark,color-mix(in srgb,var(--brand) 80%,#000))}.avatar-camera-btn:disabled{opacity:.7;cursor:default}.avatar-hero{display:flex;align-items:center;gap:1.25rem;margin-bottom:1.5rem}.avatar-hero-info{display:flex;flex-direction:column;gap:.25rem}.avatar-hero-name{font-size:1.25rem;font-weight:700;margin:0;color:var(--text)}.locale-toggle{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-full);overflow:hidden;background:var(--surface)}.locale-btn{height:1.875rem;min-width:2.5rem;padding:0 .6rem;border:none;border-radius:0;background:transparent;color:var(--ink-2);font-size:.8rem;font-weight:700;cursor:pointer;transition:background .12s,color .12s}.locale-btn.active{background:var(--brand);color:#fff}.dots-anchor{position:relative}.dots-btn{color:var(--ink-muted)}.context-menu{position:absolute;top:calc(100% + .5rem);right:0;z-index:50;width:220px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);overflow:hidden}.context-menu-header{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.125rem}.context-menu-header strong{font-size:.875rem;color:var(--ink);font-weight:600}.context-menu-header span,.context-menu-header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-menu-header span{font-size:.8rem;color:var(--ink-muted)}.context-menu-divider{height:1px;background:var(--border);margin:0;border:none}.context-menu-item{display:flex;align-items:center;gap:.625rem;width:100%;padding:.625rem 1rem;background:none;border:none;border-radius:0;color:var(--ink-2);font-size:.875rem;text-align:left;cursor:pointer;transition:background .1s}.context-menu-item:hover{background:var(--surface-2)}.context-menu-item.danger{color:var(--danger)}.context-menu-item.danger:hover{background:var(--danger-bg)}.status-bar{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.8rem;color:var(--ink-muted);border-bottom:1px solid var(--border);background:var(--surface-2)}.loading-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--brand);animation:blink 1.1s ease-in-out infinite;flex-shrink:0}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}.table-wrapper{overflow-x:auto}table{width:100%;border-collapse:collapse}thead th{padding:.6rem .875rem;text-align:left;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);background:var(--surface-2);white-space:nowrap}tbody tr,thead th{border-bottom:1px solid var(--border)}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:#fafbff}tbody td{padding:.875rem;font-size:.875rem;color:var(--ink);vertical-align:top}.table-empty{text-align:center!important;color:var(--ink-muted)!important;padding:3rem 1rem!important;font-size:.875rem!important}.badge{display:inline-flex;align-items:center;height:1.4rem;padding:0 .5rem;border-radius:var(--radius-full);font-size:.7rem;font-weight:700;letter-spacing:.02em;white-space:nowrap;text-transform:capitalize}.badge-default{background:var(--brand-light);color:var(--brand-dark)}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-muted{background:#f3f4f6;color:var(--ink-muted)}.prayer-list{display:flex;flex-direction:column;gap:.45rem;min-width:200px}.prayer-card{padding:.45rem .625rem;border-left:2.5px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#f5f6ff}.prayer-card strong{display:block;font-size:.78rem;font-weight:600;color:var(--brand-dark);margin-bottom:.15rem}.prayer-card p{font-size:.8rem;color:var(--ink-2);margin-bottom:.2rem;line-height:1.4}.prayer-status{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted)}.thumbs{display:flex;flex-wrap:wrap;gap:.35rem}.thumbs img{width:46px;height:46px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border)}.modal-backdrop{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:rgba(17,24,39,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:1rem}.modal{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:min(480px,100%);overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h2{font-size:1.125rem;font-weight:700;color:var(--ink)}.modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid var(--border);background:var(--surface-2)}.signin-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--page-bg);padding:1rem}.signin-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:2.5rem;width:min(420px,100%);gap:1.75rem}.signin-card,.signin-clerk{display:flex;flex-direction:column}.signin-clerk{width:min(520px,100%);align-items:center;gap:1.5rem}.clerk-auth-root,.signin-clerk .alert{width:min(420px,100%)}.clerk-auth-card{box-shadow:var(--shadow-lg)}.signin-access-error{width:min(520px,100%);display:flex;flex-direction:column;gap:.75rem}.signin-access-error .alert{width:100%}.signin-access-actions{display:flex;justify-content:center;gap:.625rem}.custom-auth-card{width:min(500px,100%);padding:2.75rem 3rem 2.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:1.5rem}.custom-auth-logo{display:flex;justify-content:center}.custom-auth-logo img{height:44px;width:auto}.custom-auth-heading{text-align:center}.custom-auth-heading h1{color:var(--ink);font-size:1.625rem;font-weight:800;line-height:1.2}.custom-auth-heading p{margin-top:.625rem;color:var(--ink-muted);font-size:.9375rem}.social-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.625rem;gap:.625rem}.social-btn{height:2.375rem;border:1px solid #dadce0;border-radius:.5rem;background:#fff;color:#3c4043;font-size:.875rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;cursor:pointer;box-shadow:0 1px 2px rgba(60,64,67,.08);transition:background .12s,border-color .12s,box-shadow .12s}.social-btn:hover:not(:disabled){background:#f8fafd;border-color:#c7c9cc;box-shadow:0 1px 3px rgba(60,64,67,.16)}.social-btn:disabled{cursor:not-allowed;opacity:.6}.brand-icon{width:1.125rem;height:1.125rem;flex:0 0 auto}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:1rem;gap:1rem;color:var(--ink-muted);font-size:.875rem}.auth-divider span{height:1px;background:var(--border)}.auth-divider strong{font-weight:500}.custom-auth-form{display:flex;flex-direction:column;gap:.875rem}.custom-auth-form label{color:var(--ink);font-size:.875rem;font-weight:700}.phone-input-row{height:2.75rem;display:grid;grid-template-columns:auto 1fr;align-items:center;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.phone-input-row select{height:100%;border:none;border-right:1px solid var(--border);font-size:.875rem;font-weight:700;cursor:pointer}.auth-input,.phone-input-row input,.phone-input-row select{padding:0 .875rem;background:var(--surface);color:var(--ink);outline:none}.auth-input,.phone-input-row input{width:100%;height:2.75rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.9375rem}.phone-input-row input{border:none;border-radius:0}.auth-input:focus,.phone-input-row input:focus{box-shadow:0 0 0 3px rgba(46,49,146,.14)}.auth-submit{width:100%;height:2.75rem}.map-popup{min-width:180px;display:flex;flex-direction:column;gap:.25rem}.map-popup strong{color:var(--ink);font-size:.9rem}.map-popup small,.map-popup span{color:var(--ink-muted)}.map-popup a{color:var(--brand);font-weight:700;text-decoration:none}.map-popup-detail-link{margin-top:.375rem}.map-popup-steward a{margin-left:.15rem}.map-popup a:hover{text-decoration:underline}.signin-logo{display:flex;justify-content:center}.signin-logo img{height:40px;width:auto}.signin-heading{text-align:center}.signin-heading h1{font-size:1.375rem;font-weight:700;color:var(--ink);letter-spacing:-.02em}.signin-heading p{margin-top:.5rem;font-size:.875rem;color:var(--ink-muted);line-height:1.55}.signin-form{display:flex;flex-direction:column;gap:1rem}.alert{padding:.75rem 1rem;border-radius:var(--radius);font-size:.875rem}.alert-danger{background:var(--danger-bg);color:var(--danger);border:1px solid #fecaca}.placeholder-page{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center;color:var(--ink-muted)}.placeholder-icon{opacity:.3}.text-muted{color:var(--ink-muted)}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}@media (max-width:768px){.dashboard-page{--dashboard-map-height:max(18rem,calc(100dvh - var(--appbar-height) - 15rem))}.main-content{padding:1.25rem}.access-issue-panel{min-height:calc(100dvh - var(--appbar-height) - 2.5rem);grid-template-columns:1fr;align-content:start;padding-top:1.5rem}.access-issue-status{width:2.5rem;height:2.5rem}.stat-cards{grid-template-columns:1fr;gap:.875rem}.sidebar{position:fixed;top:var(--appbar-height);left:0;bottom:0;z-index:25;width:var(--sidebar-width)!important;min-width:var(--sidebar-width)!important;transition:transform .25s ease;transform:translateX(0)}.sidebar.sidebar-collapsed{transform:translateX(-100%)}.sidebar-overlay{display:block;position:fixed;inset:0;top:var(--appbar-height);z-index:24;background:rgba(17,24,39,.45)}.toolbar{flex-direction:column;align-items:stretch}.form-field,.form-field input{width:100%}}@media (max-height:720px){.dashboard-page{--dashboard-map-height:max(14rem,calc(100dvh - var(--appbar-height) - 14rem))}}@media (max-height:560px){.dashboard-page{--dashboard-map-height:max(11rem,calc(100dvh - var(--appbar-height) - 12rem))}}@media (min-width:769px) and (max-width:1100px){.stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}textarea{height:auto!important;min-height:5rem;padding:.5rem .75rem!important;resize:vertical;line-height:1.5}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-ghost{background:transparent;color:var(--ink-2);border:1px solid var(--border-strong)}.btn-ghost:hover:not(:disabled){background:var(--surface-2)}.btn-link{background:none;border:none;color:var(--brand);padding:0;height:auto;font-weight:500;cursor:pointer;font-size:.875rem;text-decoration:none;display:inline-flex;align-items:center;gap:.3rem}.btn-link:hover:not(:disabled){text-decoration:underline;opacity:1}.btn-link:disabled{opacity:.5}.page-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.75rem}.page-header-row .page-header{margin-bottom:0}.page-header-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.breadcrumb{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--ink-muted);margin-bottom:1.25rem}.breadcrumb a{color:var(--brand);font-weight:500}.breadcrumb a:hover{text-decoration:underline}.breadcrumb-sep{color:var(--border-strong);font-size:.75rem}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1.25rem 2.5rem;gap:1.25rem 2.5rem}.detail-field{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.69rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted)}.detail-value{font-size:.9375rem;color:var(--ink);line-height:1.4}.detail-value.muted{color:var(--ink-muted);font-style:italic}.form-page{max-width:680px}.form-section{display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.form-section+.form-section{border-top:1px solid var(--border)}.form-section-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);padding-bottom:.625rem;border-bottom:1px solid var(--border);margin-bottom:.25rem}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.inline-confirm{display:flex;align-items:center;gap:.625rem;padding:.625rem .875rem;background:var(--danger-bg);border:1px solid #fecaca;border-radius:var(--radius);font-size:.875rem;color:var(--danger)}.inline-confirm-msg{flex:1 1;font-weight:500}tbody tr.row-link{cursor:pointer}tbody tr.row-link:hover{background:var(--brand-light)}.row-action-cell{width:2.5rem;text-align:right!important;color:var(--ink-muted)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3.5rem 2rem;text-align:center;color:var(--ink-muted)}.empty-state-icon{opacity:.25;margin-bottom:.25rem}.empty-state-title{font-size:.9375rem;font-weight:600;color:var(--ink-2)}.empty-state-desc{font-size:.875rem;color:var(--ink-muted);max-width:280px}.banner{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:var(--radius);font-size:.875rem;margin-bottom:1.25rem}.banner-error{background:var(--danger-bg);color:var(--danger);border:1px solid #fecaca}.banner-success{background:var(--success-bg);color:var(--success);border:1px solid #a7f3d0}@media (max-width:768px){.detail-grid,.form-grid-2{grid-template-columns:1fr}.page-header-row{flex-direction:column}.page-header-actions{width:100%}}