:root{--bg:#f6f5f2;--surface:#ffffff;--ink:#1f2320;--muted:#66706a;--line:#dedbd2;--green:#23856f;--green-soft:#dff3ed;--blue:#245f9f;--amber:#a86b18;--red:#a33a33}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Microsoft JhengHei,sans-serif}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.sidebar{background:#14332c;color:#ffffff;padding:24px 18px}.brand-mark{font-size:18px;font-weight:700;margin-bottom:28px}.nav-list{display:grid;grid-gap:8px;gap:8px}.nav-link{color:rgba(255,255,255,.72);border-radius:8px;padding:10px 12px}.nav-link:hover{background:rgba(255,255,255,.08);color:#ffffff}.main{padding:32px}.access-page{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:24px}.access-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;max-width:420px;padding:28px;width:100%}.access-card h1{margin:0 0 8px}.access-card p{color:var(--muted);margin:0 0 20px}.access-form{display:grid;grid-gap:14px;gap:14px}.error-note{background:#fcebea;border:1px solid #f3b7b2;border-radius:8px;color:var(--red);margin-bottom:14px;padding:10px 12px}.page-title{margin:0 0 8px;font-size:28px}.page-subtitle{margin:0 0 28px;color:var(--muted)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:20px}.section-head{align-items:flex-start;display:flex;justify-content:space-between;gap:16px;margin-bottom:16px}.panel h2,.screening-list h3,.section-head h2{margin:0 0 6px}.screening-list p,.section-head p{color:var(--muted);margin:0}.grid{display:grid;grid-gap:16px;gap:16px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.stacked-form{display:grid;grid-gap:24px;gap:24px}.field{display:grid;grid-gap:6px;gap:6px}.field span{color:var(--muted);font-size:13px;font-weight:700}.field input,.field select,.field textarea{background:#ffffff;border:1px solid var(--line);border-radius:8px;color:var(--ink);font:inherit;padding:10px 12px;width:100%}.field textarea{resize:vertical}.field-wide,.form-actions{grid-column:1/-1}.form-actions{align-items:center;display:flex;gap:10px}.button{background:var(--green);border:0;border-radius:8px;color:#ffffff;cursor:pointer;font:inherit;font-weight:700;padding:10px 14px}.button:hover{background:#1d705e}.empty-note{background:#fff8e8;border:1px solid #ead39a;border-radius:8px;color:#725015;padding:12px 14px}.screening-list{display:grid;grid-gap:12px;gap:12px}.screening-item{border:1px solid var(--line);border-radius:10px;margin:0;padding:14px}.screening-item legend{display:grid;grid-gap:4px;gap:4px;padding:0 6px}.screening-item legend span{color:var(--muted);font-size:13px;font-weight:400}.score-options{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.score-options label{border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:6px;gap:6px;min-height:112px;padding:12px}.score-options span{font-weight:700}.score-options small{color:var(--muted);line-height:1.45}.stat{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:18px}.stat-value{font-size:28px;font-weight:700}.stat-label{color:var(--muted);font-size:13px;margin-top:4px}.table{width:100%;border-collapse:collapse}.table td,.table th{border-bottom:1px solid var(--line);padding:12px;text-align:left;font-size:14px}.table th{color:var(--muted);font-weight:600}.tag{display:inline-flex;border-radius:999px;padding:4px 9px;background:var(--green-soft);color:var(--green);font-size:12px;font-weight:700}.brand-logo,.logo-placeholder{align-items:center;border:1px solid var(--line);border-radius:8px;display:inline-flex;height:36px;justify-content:center;object-fit:contain;width:36px}.logo-placeholder{background:var(--green-soft);color:var(--green);font-weight:700;position:relative}.logo-shape{background:linear-gradient(135deg,var(--green) 0 46%,transparent 46%),linear-gradient(135deg,transparent 54%,var(--blue) 54% 100%),linear-gradient(90deg,#ffffff 0 100%);border-radius:5px;display:block;height:20px;width:22px}.inline-upload{align-items:center;display:flex;gap:6px;margin-top:8px}.inline-upload button,.inline-upload label{background:#ffffff;border:1px solid var(--line);border-radius:6px;color:var(--muted);cursor:pointer;font:inherit;font-size:12px;padding:4px 8px}.inline-upload input[type=file]{display:none}@media (max-width:820px){.shell{grid-template-columns:1fr}.sidebar{position:static}.form-grid,.grid-3,.score-options{grid-template-columns:1fr}}