@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#142c3c;--muted:#607480;--teal:#087e79;--mint:#d7f4e7;--line:#dde7e7;--paper:#f6f9f8;--white:#fff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 'DM Sans',Segoe UI,sans-serif}h1,h2,h3,.brand{font-family:Manrope,Segoe UI,sans-serif;line-height:1.2;letter-spacing:-.035em}h1{font-size:38px;margin:12px 0 18px;font-weight:800}h2{font-size:28px;margin:0 0 18px}h3{font-size:21px}p{color:var(--muted)}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #62c6bd;outline-offset:3px}.topbar{height:88px;max-width:1280px;margin:auto;padding:0 52px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:24px;font-weight:800;letter-spacing:-1px}.brand:hover{text-decoration:none}.brand-icon{display:grid;place-items:center;color:white;background:var(--teal);width:36px;height:36px;border-radius:12px;font-size:24px}.brand-light{font-weight:500;color:var(--teal)}nav{display:flex;align-items:center;gap:28px}nav>a{color:var(--ink);font-weight:600;font-size:14px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--teal);color:#fff;padding:14px 23px;border:1px solid var(--teal);border-radius:10px;line-height:1.4;font-weight:700;gap:8px;white-space:normal;text-align:center}.button:hover{background:#096c69;text-decoration:none;color:#fff}.button.secondary{background:transparent;color:var(--ink);border-color:#cedbdc}.button.secondary:hover{background:#edf4f1}.button.small{font-size:13px;padding:10px 16px}.button.full{width:100%;margin:22px 0 12px}.link-button{border:0;background:transparent;color:var(--teal);padding:5px 0;font-weight:600}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--teal)}.hero{max-width:1280px;margin:auto;padding:55px 52px 70px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:35px}.hero h1{font-size:clamp(44px,5.3vw,70px);line-height:1.1;letter-spacing:-.06em;margin:20px 0 25px}.hero h1 em{color:var(--teal);font-style:normal}.hero-copy>p{font-size:18px;max-width:515px;line-height:1.8}.hero-notes{font-size:12px;color:var(--muted);display:flex;gap:24px;margin-top:28px}.hero-visual{position:relative;min-height:540px;display:grid;place-items:center}.orbit{position:absolute;width:450px;height:450px;max-width:100%;border-radius:50%;background:#e0f0e8;border:35px solid #edf5ee}.phone-preview{z-index:1;background:white;width:270px;min-height:480px;border:7px solid #16363f;border-radius:36px;padding:28px 20px 18px;text-align:center;box-shadow:0 30px 70px #173d3b24;transform:rotate(4deg);position:relative}.phone-notch{height:15px;width:90px;background:#16363f;border-radius:0 0 12px 12px;position:absolute;top:0;left:83px}.preview-top{font-size:15px;font-weight:800;margin-bottom:25px}.preview-top span{color:var(--teal)}.avatar{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:#daf1e8;color:var(--teal);font-weight:800;margin:0 auto 12px}.phone-preview h2{font-size:24px;margin:5px}.phone-preview p{font-size:11px;margin-top:8px}.clock-preview{font-size:42px;font-weight:800;letter-spacing:-2px;margin:22px 0}.clock-preview span{display:block;font-size:11px;font-weight:400;letter-spacing:0;color:var(--muted)}.preview-check{background:var(--teal);color:white;padding:13px 7px;border-radius:10px;font-weight:700;font-size:13px}.location-preview{font-size:10px;color:var(--teal);padding:14px 0}.phone-preview>small{color:#80908e;font-size:9px}.floating-card{z-index:2;position:absolute;bottom:25px;left:0;display:flex;align-items:center;gap:13px;background:white;border:1px solid var(--line);border-radius:13px;padding:17px 20px;box-shadow:0 10px 30px #173d3b0f}.floating-card strong{display:block;font-size:13px}.floating-card span:not(.green-dot){display:block;font-size:11px;color:var(--muted)}.green-dot{width:13px;height:13px;background:#20a678;box-shadow:0 0 0 7px #e8f7ef;border-radius:50%;margin:6px}.feature-strip{display:grid;grid-template-columns:repeat(3,1fr);max-width:1176px;margin:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0}.feature-strip>div{padding:0 35px;border-right:1px solid var(--line)}.feature-strip>div:last-child{border:0}.feature-strip strong,.feature-strip span{display:block}.feature-strip span{font-size:13px;color:var(--muted);margin-top:5px}.section{max-width:1280px;margin:auto;padding:85px 52px}.section>h2{font-size:39px;margin:18px 0 35px}.three-columns,.two-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.two-columns{grid-template-columns:repeat(2,1fr);margin:25px 0}.feature-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px}.feature-card p{font-size:14px}.step{color:var(--teal);font-size:13px;font-weight:800;background:#eaf4ef;padding:8px 12px;border-radius:8px}.split-section{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;padding-top:30px}.split-section h2{font-size:37px;margin-top:20px}.benefit-list>div{padding:18px 0;border-bottom:1px solid var(--line)}.benefit-list p{margin:7px 0;font-size:14px}.text-link{font-weight:700}.cta-section{background:#173c3c;color:#fff;text-align:center;padding:65px 25px;margin:0 52px 60px;border-radius:25px}.cta-section .eyebrow{color:#94d7bb}.cta-section h2{font-size:40px;margin:16px 0}.cta-section p{color:#b7cecb}.cta-section .button{background:#b8efcf;color:#143d36;border-color:#b8efcf}footer{display:flex;gap:25px;justify-content:space-between;padding:30px 52px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);max-width:1280px;margin:auto}.card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:28px;margin-bottom:24px}.card h2{font-size:22px}.auth-section{max-width:1130px;margin:45px auto 100px;padding:30px 45px;display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:start}.auth-copy{padding-top:45px}.auth-copy h1{font-size:48px}.auth-copy p{font-size:17px}.auth-benefit{margin-top:30px;color:var(--teal);line-height:2.4}.auth-card{padding:35px;box-shadow:0 20px 70px #24494308}.auth-card p{font-size:13px}.activation-identity{background:#e9f6ef;padding:17px;border-radius:12px}.activation-identity strong,.activation-identity span{display:block}label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:#3f5963;margin-bottom:16px}input,select,textarea{width:100%;padding:10px 12px;border:1px solid #d2dede;border-radius:8px;background:#fff;color:var(--ink);min-height:43px}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--teal)}textarea{min-height:80px;resize:vertical}.check-label{display:flex;flex-direction:row;align-items:center;gap:10px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.span2{grid-column:span 2}.validation-errors,.validation-message{color:#b42337;font-size:12px}.invalid{border-color:#c02f43}.notice{padding:15px 25px;max-width:1176px;margin:10px auto;border-radius:10px;display:flex;justify-content:space-between;gap:15px;font-size:14px}.notice.success{background:#e1f4e9;color:#205e45}.notice.error{background:#fff0ed;color:#943b2d}.notice button{border:0;background:none;color:inherit;font-size:20px}.busy-line{height:3px;background:linear-gradient(90deg,#0b7c75,#a7ecc7);animation:pulse 1s infinite}.portal-shell{display:grid;grid-template-columns:230px minmax(0,1fr);max-width:1600px;margin:auto;border-top:1px solid var(--line);min-height:calc(100vh - 170px)}.sidebar{background:#fff;border-right:1px solid var(--line);padding:28px 18px}.company-label{font-family:Manrope,sans-serif;font-weight:800;font-size:15px;margin:0 10px 24px;overflow-wrap:anywhere}.sidebar>a{display:block;color:#536b74;border-radius:8px;padding:10px 13px;margin:4px 0;font-size:13px}.sidebar>a.active{background:#e5f3ec;color:var(--teal);font-weight:700}.subscription{background:#eff7f2;padding:15px;border-radius:10px;margin-top:30px;font-size:11px}.subscription strong,.subscription span,.subscription small{display:block;margin:5px 0}.subscription.expired{background:#fff1e7}.portal-main{padding:35px;min-width:0}.page-heading{margin-bottom:30px}.page-heading h1{font-size:32px;margin:8px 0}.page-heading p{margin-top:8px}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.section-heading{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-bottom:18px}.section-heading h2{margin:0}.section-heading input{max-width:260px}.list-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid #ecf0ef}.list-row:last-child{border-bottom:0}.list-row span,.list-row small{display:block;font-size:12px;color:var(--muted)}.list-row strong{font-size:14px}.empty{text-align:center;padding:35px;color:var(--muted)}.empty h3{color:var(--ink)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{color:#698087;font-size:10px;letter-spacing:.03em;text-transform:uppercase;background:#f7faf8;padding:13px 12px;white-space:nowrap}td{padding:15px 12px;border-bottom:1px solid #e8eeec;vertical-align:middle}td>small{display:block;color:var(--muted);font-size:10px}.row-actions{white-space:nowrap}.row-actions button{background:transparent;border:0;color:var(--teal);font-size:11px;padding:5px}.badge{display:inline-block;background:#e8f5ef;color:#21714f;border-radius:6px;padding:5px 8px;font-size:10px;white-space:nowrap}.badge.warning{background:#fff3da;color:#95641e}.badge.neutral{background:#edf1f3;color:#617380}.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-bottom:24px}.stat{background:white;border:1px solid var(--line);padding:22px;border-radius:14px}.stat span{font-size:11px;color:var(--muted)}.stat strong{display:block;font:800 35px Manrope,sans-serif;margin-top:8px}.filter-bar{display:flex;align-items:end;gap:15px;flex-wrap:wrap}.filter-bar label{flex:1;min-width:130px;margin:0}.filter-bar .button{padding:11px 15px}.muted{color:var(--muted);font-size:12px}.schedule-table input{min-width:80px;padding:6px;min-height:35px}.schedule-table input[type=checkbox]{min-width:18px}.correction-row{display:grid;grid-template-columns:1.5fr 1fr;gap:25px;padding:20px 0;border-bottom:1px solid var(--line)}.correction-row span{display:block;font-size:12px;color:var(--muted)}.correction-row p{font-size:13px}.qr-card{display:flex;gap:25px;justify-content:space-between;align-items:center}.qr-card img{max-width:40%;height:auto}.employee-photo{width:60px;height:60px;object-fit:cover;border-radius:50%;margin-right:15px}.employee-space{max-width:700px;margin:35px auto 70px;padding:0 22px}.employee-heading h1{font-size:30px}.clock-card{text-align:center;padding:35px}.clock-card h2{margin:20px 0 10px}.clock-card small{display:block;color:var(--muted)}.clock-card .link-button{display:block;margin:15px auto 0}.punch-actions{display:flex;flex-direction:column;gap:12px;margin:25px 0}.punch-button{font-size:18px;padding:20px}.narrow{max-width:950px}.narrow h1{font-size:42px}.narrow .card h2{margin-top:25px}.account-name{font-size:12px;color:var(--muted)}#blazor-error-ui{display:none;background:#fff1e9;padding:15px;position:fixed;bottom:0;width:100%;z-index:100}.loading-progress{width:90px;height:90px;display:block;margin:25vh auto 20px}.loading-progress circle{fill:none;stroke:#0b7c75;stroke-width:5}.loading-progress-text{text-align:center}.loading-progress-text:after{content:'Cargando Checador Digital…'}@keyframes pulse{50%{opacity:.3}}
@media(max-width:1100px){.topbar{padding:0 25px}.hero{padding:35px 30px}.hero-visual{min-height:500px}.section{padding:65px 30px}.hero-notes{gap:12px;flex-wrap:wrap}.split-section{gap:40px}.portal-main{padding:25px}.stats-grid{grid-template-columns:repeat(3,1fr)}.form-grid.three{grid-template-columns:repeat(2,1fr)}.editor-grid{grid-template-columns:1fr}.auth-section{gap:40px}.sidebar{padding:25px 10px}.portal-shell{grid-template-columns:200px minmax(0,1fr)}}
@media(max-width:760px){.topbar{height:auto;min-height:78px;padding:18px 20px;align-items:flex-start}.brand{font-size:19px;gap:6px}.brand-icon{width:29px;height:29px;font-size:19px;border-radius:9px}nav{gap:13px;flex-wrap:wrap;justify-content:flex-end}nav>a,nav button{font-size:12px}nav>a:first-child:not(.button){display:none}nav .button.small{padding:8px 11px}.account-name{display:none}.hero{grid-template-columns:1fr;padding:35px 25px 45px;gap:25px}.hero h1{font-size:49px}.hero-copy>p{font-size:16px}.hero-visual{min-height:490px}.phone-preview{transform:rotate(2deg);width:250px}.phone-notch{left:73px}.floating-card{left:5px;bottom:0}.feature-strip{grid-template-columns:1fr;margin:0 25px;padding:10px 0}.feature-strip>div{padding:15px 5px;border-right:0;border-bottom:1px solid var(--line)}.three-columns,.two-columns,.split-section,.auth-section{grid-template-columns:1fr}.section{padding:50px 25px}.section>h2,.split-section h2{font-size:30px}.split-section{gap:10px;padding-top:5px}.cta-section{margin:0 20px 35px;padding:40px 20px}.cta-section h2{font-size:31px}footer{padding:25px;flex-direction:column;gap:12px}.auth-section{padding:0 20px;margin:15px auto 50px;gap:15px}.auth-copy{padding-top:15px}.auth-copy h1{font-size:35px}.auth-benefit{display:none}.auth-card{padding:25px}.portal-shell{display:block}.sidebar{padding:15px;border-right:0;border-bottom:1px solid var(--line);display:flex;gap:7px;overflow:auto;align-items:center}.sidebar .company-label,.sidebar .subscription{display:none}.sidebar>a{white-space:nowrap;padding:8px 12px;background:#f3f7f5;margin:0}.portal-main{padding:25px 15px}.page-heading h1{font-size:28px}.card{padding:20px;border-radius:13px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat{padding:17px}.stat strong{font-size:30px}.form-grid,.form-grid.three{grid-template-columns:1fr}.span2{grid-column:auto}.section-heading{align-items:flex-start;flex-direction:column}.section-heading input{max-width:100%}.qr-card{flex-direction:column}.qr-card img{max-width:100%}.correction-row{grid-template-columns:1fr;gap:10px}.employee-space{padding:0 15px}.employee-space h1{font-size:27px}.hero .actions .button{width:100%}.filter-bar .button{flex:1}.narrow h1{font-size:32px}}
h1:focus{outline:none}
