:root{--cream: #fdf7f1;--cream-deep: #f7ead9;--brown-900: #4a3527;--brown-700: #6b5240;--brown-500: #8a6f5c;--brown-300: #b8a190;--orange: #e8825a;--orange-deep: #d96b3f;--card-border: #f0e2d4;--white: #ffffff;--radius-lg: 28px;--radius-md: 20px;--radius-sm: 14px;--error: #b3432f;--error-bg: #fbeae5;--focus-ring: var(--orange-deep);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--brown-900);background:var(--cream)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--cream);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;top:-120px;right:-160px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fbe0cf,#f7c9a8 45%,#f7c9a800 72%);z-index:-1;pointer-events:none}h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:600;line-height:1.15;color:var(--brown-900)}a{color:var(--orange-deep);font-weight:600;text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.auth-screen,.home-screen{max-width:34rem;margin:0 auto;padding:3.5rem 1.25rem 4rem;display:flex;flex-direction:column;gap:2rem}form{display:flex;flex-direction:column;gap:1.1rem}label{font-size:.875rem;font-weight:600;color:var(--brown-700)}.form-section-label{margin:0;font-family:Fraunces,Georgia,serif;font-size:1rem;font-weight:600;color:var(--brown-900)}.form-section-label:not(:first-child){margin-top:.5rem;padding-top:1.5rem;border-top:1px solid var(--card-border)}label+input,label+select{margin-top:-.6rem}input,select{padding:.75rem .9rem;font:inherit;font-size:1rem;color:var(--brown-900);background:var(--cream);border:1.5px solid var(--card-border);border-radius:var(--radius-sm);width:100%}input:focus,select:focus{outline:none;border-color:var(--orange-deep);background:var(--white)}input[aria-invalid=true]{border-color:var(--error)}button{padding:.75rem 1.5rem;font:inherit;font-weight:600;color:var(--white);background:var(--orange);border:none;border-radius:999px;cursor:pointer;transition:background .15s ease,transform .15s ease,border-color .15s ease}button:hover:not(:disabled){background:var(--orange-deep);transform:translateY(-1px)}button:disabled{opacity:.55;cursor:default;transform:none}.btn-ghost{color:var(--brown-900);background:transparent;border:1.5px solid var(--brown-300)}.btn-ghost:hover:not(:disabled){background:transparent;border-color:var(--brown-700)}.alert{border-radius:var(--radius-sm);padding:.85rem 1.1rem;font-size:.9rem;font-weight:500}.alert:focus{outline:none}.alert-error{background:var(--error-bg);color:var(--error);border:1px solid rgba(179,67,47,.25)}.alert-success{background:var(--cream-deep);color:var(--brown-900);border:1px solid var(--card-border)}.start-over{margin-top:-.6rem;padding:0;font-weight:500;color:var(--brown-700);background:none;text-decoration:underline;text-align:left}.start-over:hover:not(:disabled){background:none;transform:none;color:var(--brown-900)}.home-hero h1{font-size:2.25rem;letter-spacing:-.01em}.home-hero-meta{margin-top:.6rem;display:flex;flex-wrap:wrap;gap:.5rem 1rem;color:var(--brown-500);font-size:.9rem}.home-card{background:var(--white);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:1.75rem}.home-card+.home-card{margin-top:0}.home-card-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:1.25rem}.home-card-header h2{font-size:1.375rem}.pill-optional{flex-shrink:0;padding:.25rem .75rem;border-radius:999px;background:var(--cream-deep);color:var(--brown-700);font-size:.75rem;font-weight:600}.home-card-lead{margin:-.75rem 0 1.25rem;color:var(--brown-500);font-size:.9rem}.connections-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.connection-row{display:flex;align-items:center;gap:.75rem;padding:1rem 1.1rem;border:1px solid var(--card-border);border-radius:var(--radius-md)}.connection-row span:first-child{flex:1;font-weight:600}.connection-status{font-size:.85rem;color:var(--brown-500)}.connection-row button{white-space:nowrap;padding:.55rem 1.25rem;font-size:.9rem}.idle-warning{display:flex;gap:1rem;align-items:center;justify-content:center;padding:.75rem;background:var(--brown-900);color:var(--cream)}.idle-warning button{padding:.5rem 1.1rem}
