*{box-sizing:border-box;margin:0;padding:0}body,html{max-width:100%;overflow-x:hidden}body{background:#f7f5f8;color:#333;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.45}button,input,select,textarea{font-family:inherit;line-height:1.45}input,select,textarea{font-size:.9rem;padding:.4rem .5rem;border-radius:.4rem;border:1px solid #d4d4dd;background:#fff}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:#90bcb3;box-shadow:0 0 0 2px rgba(144,188,179,.25)}button{cursor:pointer}a{color:#3b7b6a;text-decoration:none}a:hover{text-decoration:underline}.subtle{font-size:.9rem;line-height:1.45;color:#64748b}.small-muted{font-size:.82rem;color:#94a3b8}.card{background:#fff;border-radius:1.5rem;padding:2rem 2.25rem;margin:2rem auto;max-width:1050px;border:1px solid #ece5f4;box-shadow:0 4px 14px rgba(0,0,0,.06)}.card h2{font-size:1.4rem;margin-bottom:.25rem;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.section-title{font-size:1.25rem;color:#1e293b}.section-subtitle,.section-title{font-weight:600;margin-bottom:.35rem}.section-subtitle{font-size:1.05rem;color:#334155}.grid-2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-gap:1.5rem;gap:1.5rem}@media (max-width:900px){.grid-2{grid-template-columns:minmax(0,1fr)}}.simple-list{list-style:none;padding-left:0;margin:0}.simple-list li{padding:.35rem 0;border-bottom:1px solid #f3edf9}.simple-table{width:100%;border-collapse:collapse;margin-top:.35rem;font-size:.9rem}.simple-table td,.simple-table th{padding:.45rem .55rem;border-bottom:1px solid #eee5f5;text-align:left}.simple-table th{background:#f4f0fa;font-weight:600}.info-block{background:#f9f7fb;border-radius:1rem;padding:1.5rem 1.75rem;margin-bottom:1.5rem;border:1px solid #eadff5}.badge{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.badge-status-applicant{background:#d4bbdb;color:#4b275e}.badge-status-active{background:#90bcb3;color:#134f43}.badge-status-graduated{background:#fcc56c;color:#5a3a00}.badge-status-declined{background:#f3b0b0;color:#7d1a1a}.badge-attendance-present{background:#b7e3b2;color:#245321}.badge-attendance-late{background:#ffe0a3;color:#7a4a00}.badge-attendance-no-show{background:#f4b5b5;color:#741818}.badge-attendance-excused{background:#c8dff7;color:#1c467a}.badge-note-intake{background:#d4bbdb;color:#4b275e}.badge-note-housing{background:#c3e4ff;color:#16486a}.badge-note-financial{background:#fcc56c;color:#5a3a00}.badge-note-relational{background:#fde3b7;color:#744322}.badge-note-spiritual{background:#b7d8d1;color:#204840}.badge-goal-status-in_progress{background:#e5f2ff;color:#1a4f7a}.badge-goal-status-completed{background:#bfe8bf;color:#1f5a24}.badge-goal-status-on_hold{background:#ffeec3;color:#6a4b00}.case-note{padding:.75rem .9rem;border-radius:8px;border:1px solid #eee2f3;background:#fdfbff;margin-bottom:.6rem}.case-note-header{margin-bottom:.25rem;font-size:.85rem}.goal-card{border-radius:10px;border:1px solid #eee2f3;padding:.7rem .9rem;background:#faf7ff}.goal-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.goal-card .simple-list li{font-size:.9rem}code{font-family:monospace;background:#f0e7fc;padding:2px 6px;border-radius:4px;font-size:.85rem}.stat-grid{margin-top:1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:1rem;gap:1rem}.stat-card{background:#fff;border-radius:16px;padding:.9rem 1rem;border:1px solid rgba(144,188,179,.35);box-shadow:0 10px 30px rgba(0,0,0,.03)}.stat-teal{border-top:4px solid #90bcb3}.stat-lavender{border-top:4px solid #d4bbdb}.stat-gold{border-top:4px solid #fcc56c}.stat-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7280;margin-bottom:.25rem}.stat-value{font-size:1.8rem;font-weight:700;color:#1f2933}.chip{display:inline-flex;align-items:center;border-radius:999px;padding:.3rem .8rem;font-size:11px;font-weight:500;letter-spacing:.01em;white-space:nowrap}.chip-gold{background:hsla(37,96%,71%,.18);color:#8a5a18}.chip-teal{background:rgba(144,188,179,.18);color:#2f5f58}.nav-chip{display:inline-block;padding:.75rem 1.1rem;border-radius:.7rem;font-weight:600;font-size:.95rem;cursor:pointer;text-decoration:none;transition:box-shadow .15s ease,transform .15s ease,filter .15s ease}.nav-chip-teal{background:#e6f3f1;border:1px solid #90bcb3}.nav-chip-lavender{background:#f4edf7;border:1px solid #d4bbdb}.nav-chip-gold{background:#fff6e5;border:1px solid #fcc56c}.nav-chip:hover{filter:brightness(.97);box-shadow:0 0 6px rgba(0,0,0,.08);transform:translateY(-1px)}.main-container{min-height:100vh;display:flex;flex-direction:column;background:#f7f5f8;color:#333}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 2rem;background:#fff;border-bottom:1px solid #ece5f4;box-shadow:0 10px 35px rgba(0,0,0,.04)}.app-header h1{font-size:1.4rem;margin-bottom:.25rem}.app-header p{color:#64748b}.app-header-right{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#475569}.logout-button{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .85rem;border-radius:999px;border:1px solid #cde6df;background:linear-gradient(180deg,#f7fffc,#e9f6f1);color:#1f4f43;font-weight:700;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.logout-button:hover{transform:translateY(-1px);border-color:#b7d8cf;box-shadow:0 8px 18px rgba(0,0,0,.05)}.main-container main{width:min(1200px,calc(100% - 2.5rem));margin:0 auto;padding:1.5rem 0 2.25rem;flex:1 1}@media (max-width:768px){.app-header{flex-direction:column;align-items:flex-start}.main-container main{width:min(1100px,calc(100% - 1.5rem))}}.form-shell,.intake-shell{min-height:100vh;padding:2.5rem 1rem 3rem;background:radial-gradient(circle at 18% 20%,rgba(212,187,219,.18),transparent 32%),radial-gradient(circle at 78% 8%,rgba(144,188,179,.18),transparent 28%),linear-gradient(135deg,#f8f5fb,#f5f9f7 52%,#f9f6ff)}.form-card,.intake-card{position:relative;width:min(1120px,100%);margin:0 auto;padding:2.4rem 2.2rem 2.6rem;border-radius:20px;border:1px solid #eadff5;box-shadow:0 16px 50px rgba(20,24,38,.08);overflow:hidden}.intake-card:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(212,187,219,.18),rgba(144,188,179,.14));opacity:.28;pointer-events:none}.intake-card>*{position:relative;z-index:1}.form-logo,.intake-logo{display:flex;justify-content:center;margin-bottom:.6rem}.form-logo img,.intake-logo img{filter:drop-shadow(0 10px 25px rgba(0,0,0,.08))}.form-header,.intake-header{text-align:center;padding-bottom:1.35rem;margin-bottom:1.6rem;border-bottom:1px solid rgba(148,163,184,.32)}.form-header h1,.intake-header h1{font-size:clamp(1.4rem,1vw + 1.1rem,1.85rem);letter-spacing:-.01em;color:#1f2937}.form-header-subtext,.intake-header-subtext{margin:.65rem auto 0;max-width:720px;color:#5e6a7d;line-height:1.5}.form-surface,.intake-form-shell{background:#fff;border-radius:16px;border:1px solid #ede7f6;box-shadow:0 12px 32px rgba(15,23,42,.04);padding:.35rem .35rem .75rem}.form-body,.intake-form{display:grid;grid-gap:1.2rem;gap:1.2rem;padding:0 .85rem 1.8rem}@media (min-width:640px){.intake-shell{padding-inline:1.5rem}.form-body,.intake-form{padding:0 1.4rem 1.9rem}}@media (min-width:900px){.form-body,.intake-form{padding:0 2.2rem 2rem;gap:1.5rem}}.form-section,.intake-section{background:linear-gradient(180deg,#fbfaff,#f7f4fb);border:1px solid #ede7f6;border-radius:14px;padding:1.45rem 1.15rem 1.6rem;box-shadow:0 14px 30px rgba(28,19,52,.05)}.form-section-header,.intake-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem;border-left:4px solid #d4bbdb;padding-left:.8rem;margin-bottom:1rem}.form-section-title h2,.intake-section-title h2{font-size:1.05rem;font-weight:700;color:#1f2933;margin-bottom:.2rem}.form-section-title p,.intake-section-title p{color:#64748b;font-size:.95rem;margin:.2rem 0 0}.form-section-badge,.intake-section-badge{align-self:center;display:inline-flex;align-items:center;padding:.25rem .65rem;border-radius:999px;border:1px solid #e4d7f2;background:#f4eefb;color:#53346d;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.form-label,.intake-label{display:block;font-size:.95rem;font-weight:700;color:#1f2933;margin-bottom:.35rem}.form-input,.form-textarea,.intake-input,.intake-textarea{width:100%;border:1px solid #d9d6df;border-radius:12px;background:#fff;padding:.65rem .85rem;font-size:.95rem;line-height:1.4;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.intake-textarea{min-height:120px;resize:vertical}.form-input:focus,.form-textarea:focus,.intake-input:focus,.intake-textarea:focus{border-color:#90bcb3;box-shadow:0 0 0 3px rgba(144,188,179,.25);outline:none;transform:translateY(-1px)}.form-helper,.intake-helper{color:#6b7280;font-size:.9rem}.form-checkbox-row,.intake-checkbox-row{display:flex;align-items:center;gap:.65rem;padding:.45rem .65rem;border:1px solid #e3e8ef;border-radius:10px;background:#f8fafb;color:#27303f;font-size:.95rem}.form-checkbox-row input,.intake-checkbox-row input{width:18px;height:18px;accent-color:#90bcb3}.form-checkbox-row--top,.intake-checkbox-row--top{align-items:flex-start}.form-submit-bar,.intake-submit-bar{margin-top:.5rem;padding:1rem 1.1rem;background:linear-gradient(180deg,#f6fbf8,#f2f7f4);border:1px solid #d8ebe3;border-radius:14px;display:flex;flex-direction:column;gap:.75rem}@media (min-width:640px){.intake-submit-bar{flex-direction:row;align-items:center;justify-content:space-between}}.form-submit-button,.intake-submit-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.3rem;border-radius:12px;border:1px solid #2b6f64;background:linear-gradient(180deg,#2f8f7f,#2c7a6e);color:#fff;font-weight:700;font-size:.95rem;box-shadow:0 12px 24px rgba(47,143,127,.18);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.intake-submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 30px rgba(47,143,127,.22)}.intake-submit-button:disabled{opacity:.65;cursor:not-allowed;box-shadow:none}