:root{color-scheme:light;--bg:#f6f7fb;--surface:#ffffff;--surface-weak:#f9fafb;--text:#172033;--muted:#667085;--line:#d9e0ea;--primary:#2563eb;--primary-strong:#1d4ed8;--green:#16a34a;--orange:#ea580c;--red:#dc2626;--purple:#7c3aed;--radius:8px;--shadow:0 8px 24px rgba(23,32,51,0.08)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:Arial,Apple SD Gothic Neo,Noto Sans KR,sans-serif;letter-spacing:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{background:#111827;color:#ffffff;padding:24px 18px}.sidebar-header{align-items:center;display:flex;justify-content:space-between}.brand{display:block;font-size:20px;font-weight:700;margin-bottom:6px}.menu-toggle-input{clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.menu-toggle-button{align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);color:#ffffff;cursor:pointer;display:none;font-size:13px;font-weight:700;gap:8px;min-height:36px;padding:0 10px}.menu-toggle-lines{display:grid;grid-gap:4px;gap:4px;width:16px}.menu-toggle-lines span{background:currentColor;border-radius:999px;display:block;height:2px}.sidebar p{color:#cbd5e1;font-size:13px;line-height:1.5;margin:0 0 24px}.nav-list{display:grid;grid-gap:6px;gap:6px}.nav-list a{border-radius:var(--radius);color:#e5e7eb;padding:10px 12px}.nav-list a:hover{background:rgba(255,255,255,.08)}.sidebar-logout-form{margin-top:20px}.main{min-width:0;padding:28px}.page-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.page-header h1{font-size:28px;line-height:1.2;margin:0 0 8px}.page-header p{color:var(--muted);line-height:1.6;margin:0;max-width:760px}.grid{display:grid;grid-gap:16px;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card,.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.eyebrow,.stat-card p{color:var(--muted);font-size:13px;margin:0 0 8px}.stat-card strong{display:block;font-size:30px;line-height:1}.stat-card span{color:var(--muted);display:block;font-size:13px;margin-top:8px}.stat-card-link{transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.stat-card-link:focus-visible,.stat-card-link:hover{border-color:var(--primary);box-shadow:0 12px 28px rgba(37,99,235,.14);outline:none;transform:translateY(-1px)}.table{border-collapse:collapse;width:100%}.table td,.table th{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.table th{color:var(--muted);font-size:13px;font-weight:600}.badge{border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;line-height:1;padding:6px 10px}.badge-neutral{background:#eef2f7;color:#344054}.badge-blue{background:#dbeafe;color:#1d4ed8}.badge-green{background:#dcfce7;color:#166534}.badge-orange{background:#ffedd5;color:#9a3412}.badge-red{background:#fee2e2;color:#991b1b}.badge-purple{background:#ede9fe;color:#5b21b6}.button,.button-link{align-items:center;border:0;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-weight:700;justify-content:center;min-height:40px;padding:0 14px}.button,.button-link-primary{background:var(--primary);color:#ffffff}.button-link-secondary{background:#e5e7eb;color:var(--text)}.form{display:grid;grid-gap:12px;gap:12px}.form label{color:var(--muted);display:grid;font-size:13px;font-weight:700;grid-gap:6px;gap:6px}.form input,.form select,.form textarea{background:var(--surface-weak);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);min-height:40px;padding:10px 12px}.form textarea{min-height:92px;resize:vertical}.checkbox{align-items:center;display:flex!important;flex-direction:row;font-weight:500!important}.checkbox input{min-height:auto}.public-page{background:#eef2f7;min-height:100vh;padding:18px}.public-card{background:#ffffff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);margin:0 auto;max-width:720px;overflow:hidden}.public-hero{align-items:center;background:linear-gradient(135deg,#172033,#2563eb);color:#ffffff;display:grid;grid-gap:22px;gap:22px;grid-template-columns:minmax(0,1fr) auto;padding:28px}.public-hero .eyebrow{color:#bfdbfe}.public-hero-copy{min-width:0}.public-hero h1{font-size:30px;margin:8px 0}.public-role-line{color:#dbeafe;font-weight:700;line-height:1.5;margin:0}.public-headline{color:#eef6ff;line-height:1.6;margin:12px 0 0;max-width:460px}.public-profile-frame{align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);border-radius:22px;display:flex;height:132px;justify-content:center;padding:10px;width:132px}.public-profile-image{background:#ffffff;border:1px solid rgba(255,255,255,.85);border-radius:18px;display:block;height:100%;object-fit:cover;width:100%}.public-content{display:grid;grid-gap:18px;gap:18px;padding:22px}.public-intake-form{gap:18px}.public-intake-header{align-items:flex-start;display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(0,1fr) auto}.public-intake-header h2{font-size:20px;line-height:1.3;margin:0}.mode-toggle{background:var(--surface-weak);border:1px solid var(--line);border-radius:var(--radius);display:inline-grid;gap:4px;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px}.mode-toggle label{align-items:center;border-radius:6px;color:var(--muted);cursor:pointer;display:flex;font-size:13px;font-weight:700;justify-content:center;min-height:36px;padding:0 12px;white-space:nowrap}.mode-toggle input{height:1px;opacity:0;position:absolute;width:1px}.mode-toggle label:has(input:checked){background:#ffffff;box-shadow:0 1px 4px rgba(23,32,51,.12);color:var(--text)}.coffee-chat-fields,.public-intake-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.public-intake-wide{grid-column:1/-1}.coffee-chat-fields{background:#f8fafc;border:1px solid var(--line);border-radius:var(--radius);display:none;padding:14px}.public-intake-form:has(input[value=coffee]:checked) .coffee-chat-fields{display:grid}.public-intake-form:has(input[value=coffee]:checked) .contact-submit-button,.public-intake-form:not(:has(input[value=coffee]:checked)) .coffee-submit-button{display:none}.public-intake-actions{display:flex;justify-content:flex-end}.resource-list{display:grid;grid-gap:10px;gap:10px}.resource-item{border:1px solid var(--line);border-radius:var(--radius);padding:12px}.resource-item strong{display:block;margin-bottom:4px}.muted{color:var(--muted)}.form-error{background:#fee2e2;border:1px solid #fecaca;border-radius:var(--radius);color:var(--red)}.form-error,.form-success{font-weight:700;margin:0 0 16px;padding:12px 14px}.form-success{background:#dcfce7;border:1px solid #86efac;border-radius:var(--radius);color:#166534}.auth-page{align-items:center;background:var(--bg);display:flex;min-height:100vh;padding:20px}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);margin:0 auto;max-width:460px;padding:26px;width:100%}.auth-card h1{margin:0 0 8px}.employee-form{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.employee-form label{color:var(--muted);display:grid;font-size:13px;font-weight:700;grid-gap:6px;gap:6px}.employee-form input,.employee-form select,.employee-form textarea{background:var(--surface-weak);border:1px solid var(--line);border-radius:var(--radius);min-height:38px;padding:8px 10px}.employee-form textarea{min-height:82px;resize:vertical}.employee-form-actions,.employee-form-wide{grid-column:span 2}.employee-form-compact{grid-template-columns:repeat(2,minmax(150px,1fr));min-width:520px}.employee-avatar{background:#eef2ff;border:1px solid var(--line);border-radius:50%;height:56px;object-fit:cover;width:56px}.employee-table-card{overflow-x:auto}.content-list{display:none}.content-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);display:grid;grid-gap:14px;gap:14px;padding:16px}.content-card-summary{align-items:flex-start;display:grid;grid-gap:10px;gap:10px}.content-card-title h2{font-size:20px;line-height:1.3;margin:0 0 6px;overflow-wrap:anywhere}.content-card-title p{margin:0}.content-card-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.content-card-meta{background:var(--surface-weak);border:1px solid var(--line);border-radius:var(--radius);display:grid;grid-gap:4px;gap:4px;padding:10px 12px}.content-card-meta span,.content-card-meta strong{display:block}.content-card-meta strong{font-size:13px;overflow-wrap:anywhere}.content-card-form{margin-top:12px}.content-delete-form{display:flex;justify-content:flex-end}.employee-card,.employee-list{display:grid;grid-gap:14px;gap:14px}.employee-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.employee-card-summary{align-items:flex-start;display:grid;grid-gap:14px;gap:14px;grid-template-columns:auto minmax(0,1fr) auto}.employee-card-title h2{font-size:20px;line-height:1.3;margin:0 0 4px}.employee-card-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.employee-card-meta{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.employee-card-meta span,.employee-card-meta strong{display:block}.employee-card-meta strong{overflow-wrap:anywhere}.employee-edit-panel{border-top:1px solid var(--line);padding-top:12px}.employee-edit-panel summary{color:var(--primary);cursor:pointer;font-weight:700}.employee-card-form{margin-top:12px}.employee-delete-form{display:flex;justify-content:flex-end}.contact-card,.contact-list{display:grid;grid-gap:14px;gap:14px}.contact-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.contact-card-summary{align-items:flex-start;display:flex;gap:14px;justify-content:space-between}.contact-card-summary h2{font-size:20px;line-height:1.3;margin:0 0 4px}.contact-card-badges,.contact-card-segments,.customer-card-status{display:flex;flex-wrap:wrap;gap:6px}.contact-card-meta{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.contact-card-meta span,.contact-card-meta strong{display:block}.contact-card-meta strong,.customer-card-lines span{overflow-wrap:anywhere}.contact-card-note{background:var(--surface-weak);border:1px solid var(--line);border-radius:var(--radius);margin:0;padding:10px 12px}.contact-card-actions,.contact-delete-form{display:flex;justify-content:flex-end}.contact-card-form{margin-top:12px}.customer-card-view{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.customer-business-card{background:linear-gradient(135deg,#111827,#0f766e);border-radius:var(--radius);box-shadow:var(--shadow);color:#ffffff;display:grid;grid-gap:18px;gap:18px;min-height:260px;padding:24px}.customer-business-card h2{font-size:32px;line-height:1.2;margin:0}.customer-business-card .eyebrow{color:#ccfbf1}.customer-card-lines{align-self:end;display:grid;grid-gap:6px;gap:6px}.customer-share-card{gap:12px}.customer-share-url{background:var(--surface-weak);border:1px solid var(--line);border-radius:var(--radius);color:var(--primary);display:block;overflow-wrap:anywhere;padding:10px 12px}.customer-share-actions{display:flex;flex-wrap:wrap;gap:8px}.availability-card,.availability-list{display:grid;grid-gap:14px;gap:14px}.availability-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.availability-card-summary{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.availability-card-summary h2{font-size:18px;line-height:1.35;margin:0 0 4px}.availability-card-meta{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.availability-card-meta span,.availability-card-meta strong{display:block}.availability-edit-form{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(6,minmax(0,1fr)) auto}.availability-edit-form label{color:var(--muted);display:grid;font-size:13px;font-weight:700;grid-gap:6px;gap:6px}.availability-edit-form input,.availability-edit-form select{background:var(--surface-weak);border:1px solid var(--line);border-radius:var(--radius);min-height:38px;padding:8px 10px}.availability-card-actions,.availability-delete-form{align-items:flex-end;display:flex}.danger-button{background:#fee2e2;border:1px solid #fecaca;border-radius:var(--radius);color:#991b1b;cursor:pointer;font-weight:700;min-height:34px;padding:0 10px}@media (max-width:860px){.app-shell{grid-template-columns:1fr}.sidebar{padding:14px 16px;position:static}.brand{margin-bottom:0}.menu-toggle-button{display:inline-flex}.menu-toggle-input:focus-visible+.sidebar-header .menu-toggle-button{outline:2px solid #93c5fd;outline-offset:2px}.sidebar-panel{display:none;padding-top:14px}.menu-toggle-input:checked~.sidebar-panel{display:block}.sidebar-panel p{margin-bottom:12px}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-logout-form{margin-top:12px}.main{padding:18px}.page-header{display:grid}.grid-2,.grid-3,.public-hero{grid-template-columns:1fr}.public-hero{padding:24px}.public-profile-frame{grid-row:1;height:112px;width:112px}.public-hero h1{font-size:28px}.coffee-chat-fields,.public-intake-grid,.public-intake-header{grid-template-columns:1fr}.mode-toggle{width:100%}.public-intake-actions{display:grid}.employee-form,.employee-form-compact{grid-template-columns:1fr;min-width:0}.employee-form-actions,.employee-form-wide{grid-column:span 1}.content-table-card{display:none}.content-list{display:grid;grid-gap:14px;gap:14px}.content-delete-form{display:grid}.employee-card-summary{grid-template-columns:auto minmax(0,1fr)}.employee-card-badges{grid-column:1/-1;justify-content:flex-start}.employee-card-meta{grid-template-columns:1fr}.contact-card-summary,.employee-delete-form{display:grid}.contact-card-meta,.customer-card-view{grid-template-columns:1fr}.contact-card-actions,.contact-delete-form{display:grid}.customer-business-card h2{font-size:26px}.availability-card-summary{display:grid}.availability-card-meta,.availability-edit-form{grid-template-columns:1fr}.availability-card-actions,.availability-delete-form{display:grid}}