:root{color:#272425;font-synthesis:none;--navy:#171c34;--camel:#b0a89d;--line:#dedbd6;--muted:#66625d;background:#f7f7f7;font-family:Quattrocento Sans,Arial,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:wait;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--navy);outline-offset:3px}a{color:var(--navy)}h1,h2,h3,p{margin:0}h1,h2{font-family:Quattrocento,Georgia,serif;font-weight:400}input,select{color:#272425;background:#fff;border:1px solid #aaa49b;border-radius:2px;width:100%;padding:11px 12px}input::placeholder{color:#76716b}label{margin:24px 0 8px;font-weight:700;display:block}.primary{background:var(--navy);color:#fff;border-radius:2px;justify-content:center;align-items:center;gap:12px;min-height:44px;padding:10px 20px;font-weight:700;display:inline-flex}.primary:hover{background:#30364d}.text-button,.subtle-button{color:var(--navy);text-underline-offset:3px;text-decoration:underline}.text-button{align-items:center;gap:8px;padding:8px 0;display:inline-flex}.brand{width:100%;height:auto;display:block}.signin-page{background:#fff;min-height:100dvh;padding:80px 24px}.signin-main{width:100%;max-width:400px;margin:0 auto}.signin-main>.brand{width:300px;max-width:100%;margin:0 0 56px}.signin-card h1{color:var(--navy);margin-bottom:16px;font-size:32px}.signin-description{color:var(--muted);line-height:1.6}.signin-submit{width:100%;margin-top:24px}.sent-state{margin-top:16px}.access-note{border-top:1px solid var(--line);color:var(--muted);margin-top:32px;padding-top:20px;font-size:14px;line-height:1.5}.back-link{margin-top:20px;display:inline-block}.error{color:#8b2721;background:#fff4f3;border-left:3px solid #8b2721;margin:16px 0;padding:12px 16px;line-height:1.6}.loading{flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:100dvh;display:flex}.loading .brand{width:280px}.loading p{color:var(--muted)}.dashboard{min-height:100dvh;display:flex}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;width:240px;height:100dvh;padding:36px 18px 24px;display:flex;position:fixed}.brand-link{margin:0 10px 48px;display:block}.nav-item{text-align:left;color:#55514d;border-left:3px solid #0000;align-items:center;gap:10px;width:100%;min-height:44px;margin:4px 0;padding:11px 12px;display:flex}.nav-item>svg{flex-shrink:0}.nav-item>span{color:var(--muted);margin-left:auto;font-size:14px}.nav-item:hover{background:#f7f6f3}.nav-item.selected{color:var(--navy);border-left-color:var(--camel);background:#f0eeea;font-weight:700}.sidebar-bottom{margin-top:auto;padding-top:32px}.dashboard-main{width:calc(100% - 240px);margin-left:240px}.content{max-width:1440px;margin:0 auto;padding:40px 36px 0}.page-heading{margin-bottom:28px}.page-heading h1{color:var(--navy);font-size:34px}.page-heading p{color:var(--muted);margin-top:12px;line-height:1.6}.requests-panel{border:1px solid var(--line);background:#fff;border-radius:3px;overflow:hidden}.panel-toolbar{border-bottom:1px solid var(--line);padding:16px 20px}.search{max-width:370px;color:var(--muted);border:1px solid #aaa49b;border-radius:2px;align-items:center;gap:10px;padding-left:12px;display:flex}.search input{border:0;min-width:0;padding:9px 12px 9px 0}.request-layout{grid-template-columns:minmax(270px,.8fr) minmax(350px,1.3fr);min-height:540px;display:grid}.person-list{border-right:1px solid var(--line);max-height:800px;overflow-y:auto}.list-label{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:12px;padding:16px 20px;font-size:13px;display:flex}.person-row{text-align:left;border-bottom:1px solid #e8e5e0;border-left:3px solid #0000;align-items:center;gap:12px;width:100%;padding:20px 18px;display:flex}.person-row.active{border-left-color:var(--camel);background:#f3f1ed}.person-row:hover{background:#f7f6f3}.person-summary{flex:1;min-width:0}.person-title{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.person-title h3{overflow-wrap:anywhere;font-size:17px;font-weight:700}.person-title>span{white-space:nowrap;color:var(--muted);font-size:12px}.person-summary>p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:15px;line-height:1.5;overflow:hidden}.person-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;font-size:13px;display:flex}.row-chevron{color:var(--muted);flex-shrink:0}.person-detail{min-width:0;padding:28px 30px}.detail-heading{margin-bottom:28px}.detail-heading h2{color:var(--navy);overflow-wrap:anywhere;font-size:28px}.detail-heading p{color:var(--muted);margin-top:12px;font-size:15px;line-height:1.6}.timeline-item{border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:28px}.timeline-item:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.timeline-date{color:var(--muted);margin-bottom:12px;font-size:13px}.prayer-card h3{margin-bottom:12px;font-size:18px;font-weight:700;line-height:1.5}.prayer-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.65}.request-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:20px;display:flex}.subtle-button{min-height:40px;font-size:14px}.icon-button{color:#55514d;place-items:center;min-width:40px;min-height:40px;padding:10px;display:inline-grid}.dashboard-footer{color:var(--muted);padding:22px 0;font-size:14px}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:320px;padding:32px;display:flex}.empty-state h2{color:var(--navy);font-size:25px}.empty-state p{color:var(--muted);max-width:400px;line-height:1.6}.modal-backdrop{z-index:10;background:#171c3470;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:3px;width:100%;max-width:480px;max-height:90dvh;padding:32px;position:relative;overflow:auto}.modal h2{color:var(--navy);margin:12px 30px 20px 0;font-size:28px;line-height:1.3}.modal p{color:var(--muted);margin:16px 0;line-height:1.6}.modal .primary{width:100%;margin-top:24px}.modal-close{position:absolute;top:10px;right:10px}.mobile-back{display:none}@media (width<=1150px){.sidebar{width:220px;padding-left:12px;padding-right:12px}.dashboard-main{width:calc(100% - 220px);margin-left:220px}.content{padding:30px 24px 0}.request-layout{grid-template-columns:minmax(230px,.85fr) minmax(300px,1.15fr)}.person-detail{padding:24px}.person-title{flex-wrap:wrap;gap:4px}}@media (width<=850px){.dashboard{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);width:100%;height:auto;padding:20px;position:static}.brand-link{width:220px;margin:0 0 22px}.sidebar nav{flex-wrap:wrap;gap:4px;display:flex}.nav-item{border-bottom:2px solid #0000;border-left:0;gap:8px;width:auto;padding:10px;font-size:15px}.nav-item.selected{border-left:0;border-bottom-color:var(--camel)}.nav-item>span{font-size:13px}.sidebar-bottom{gap:12px;margin:8px 0 0;padding:0;display:flex}.sidebar-bottom .nav-item{margin:0;font-size:14px}.dashboard-main{width:100%;margin-left:0}.content{padding:28px 20px 0}.page-heading h1{font-size:30px}.request-layout{grid-template-columns:minmax(220px,.85fr) minmax(280px,1.15fr)}}@media (width<=600px){.signin-page{padding:48px 24px}.signin-main>.brand{width:270px;margin-bottom:44px}.sidebar{padding:20px 16px 12px}.brand-link{width:210px;margin-bottom:16px}.sidebar nav{gap:0}.nav-item{gap:6px;padding:8px;font-size:14px}.nav-item>svg{width:16px}.nav-item>span{font-size:12px}.content{padding:24px 16px 0}.page-heading{margin-bottom:20px}.page-heading h1{font-size:28px}.panel-toolbar{padding:12px}.search{max-width:none}.request-layout{min-height:360px;display:block}.person-list{border:0;max-height:none}.person-title{flex-wrap:nowrap;gap:12px}.person-title>span{font-size:11px}.person-detail{padding:20px;display:none}.show-detail .person-list{display:none}.show-detail .person-detail{display:block}.mobile-back{margin-bottom:24px;display:inline-flex}.detail-heading h2{font-size:26px}.request-actions{gap:10px}.empty-state,.modal{padding:24px}}
