*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--green-dark: #17252A;--green: #2B7A78;--green-light: #3AAFA9;--cream: #DEF2F1;--white: #FEFFFF;--text: #17252A;--text-muted: #4a6274;--teal: #2B7A78;--teal-dark: #17252A;--teal-light: #3AAFA9;--shadow: 0 2px 12px rgba(23,37,42,.12);--radius: 8px}body{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:#f0f5f4;line-height:1.55;font-size:16px;-webkit-text-size-adjust:100%}.app-shell{min-height:100vh;display:flex;flex-direction:column;max-width:600px;margin:0 auto;background:var(--white);box-shadow:0 0 40px #00000014}.app-header{background:var(--green-dark);color:#fff}.header-inner{display:flex;align-items:center;gap:.9rem;padding:1rem 1.1rem}.header-icon{width:48px;height:48px;border-radius:10px;flex-shrink:0}.brand{font-size:1.1rem;font-weight:700;line-height:1.2;color:#fff}.tagline{font-size:.78rem;opacity:.7;margin-top:.2rem;line-height:1.3}.offline-banner{background:#c0392b;color:#fff;text-align:center;padding:.5rem 1rem;font-size:.83rem;font-weight:500}.sync-banner{background:var(--green-light);color:var(--green-dark);text-align:center;padding:.5rem 1rem;font-size:.83rem;font-weight:600}.guidelines-section{background:var(--green);color:#fff}.guidelines-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.1rem;background:none;border:none;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;font-family:inherit;letter-spacing:.01em}.toggle-arrow{font-size:.75rem;opacity:.8}.guidelines-list{padding:0 1.1rem 1rem;display:flex;flex-direction:column;gap:.8rem}.guideline{font-size:.88rem}.guideline-title{font-weight:700;margin-bottom:.25rem;color:var(--cream)}.guideline ul{padding-left:1.2rem;opacity:.88}.guideline li{margin-bottom:.2rem;line-height:1.4}.form-section{flex:1;padding:1.4rem 1.1rem 2rem;background:var(--white)}.form-section h2{font-size:1.25rem;color:var(--green-dark);margin-bottom:.25rem}.form-intro{color:var(--text-muted);font-size:.88rem;margin-bottom:1.4rem}.field{margin-bottom:1.2rem}.field>label:first-child{display:block;font-weight:600;font-size:.88rem;color:var(--green-dark);margin-bottom:.4rem}.field input[type=text],.field input[type=email],.field input[type=date],.field textarea{width:100%;padding:.7rem .85rem;border:1.5px solid #c5d5d3;border-radius:var(--radius);font-size:1rem;font-family:inherit;color:var(--text);background:var(--white);transition:border-color .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field input:focus,.field textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px #2b7a781f}.field textarea{height:88px;resize:vertical;line-height:1.5}.required{color:#c0392b;margin-left:2px}.optional{font-weight:400;color:var(--text-muted);font-size:.78rem}.actions-list{display:flex;flex-direction:column;gap:.35rem}.action-item{display:flex;align-items:center;gap:.6rem;padding:.6rem .8rem;background:#f0f5f4;border-radius:6px;cursor:pointer;font-size:.93rem;line-height:1.3}.action-item input[type=checkbox]{width:18px;height:18px;flex-shrink:0;accent-color:var(--green);cursor:pointer}.btn-submit{display:block;width:100%;padding:1rem;background:var(--green);color:#fff;border:none;border-radius:var(--radius);font-size:1.05rem;font-weight:700;cursor:pointer;font-family:inherit;margin-top:.75rem;transition:background .15s;letter-spacing:.01em}.btn-submit:hover{background:var(--green-dark)}.btn-submit:active{background:var(--green-dark);transform:scale(.99)}.checkin-result{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1.5rem;text-align:center;background:var(--white);gap:.75rem}.result-icon{font-size:3.5rem}.checkin-result h2{font-size:1.5rem;color:var(--green-dark)}.checkin-result p{color:var(--text-muted);max-width:300px;line-height:1.6}.pending-note{font-weight:600;color:var(--green-dark)}.app-footer{background:var(--green-dark);color:#ffffff73;text-align:center;padding:1rem;font-size:.78rem}.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow)}.card h3{color:var(--teal-dark);margin-bottom:.75rem;font-size:1.1rem}.card p{color:var(--text-muted);font-size:.95rem}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:.65rem 1rem;font-size:.88rem}th{background:var(--cream);color:var(--teal-dark);font-weight:600}tr:not(:last-child) td{border-bottom:1px solid #e6efee}.btn{display:inline-block;padding:.6rem 1.4rem;border-radius:var(--radius);font-size:.95rem;font-weight:600;text-decoration:none;cursor:pointer;border:none;font-family:inherit}.btn-teal{background:var(--teal);color:#fff}.btn-primary{background:var(--white);color:var(--teal-dark)}
