@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Montserrat:wght@500;600;700;800;900&display=swap');
:root{--gold:#ffb800;--gold2:#f4e84a;--gold-hover:#e6a600;--bg:#0d0d0d;--bg2:#090909;--panel:#141414;--panel2:#171717;--panel3:#101010;--line:#262626;--line2:#313131;--text:#f6f6f6;--muted:#8f8f8f;--muted2:#b6b6b6;--ok:#25d366;--danger:#ff5757;--warn:#ff9f1c;--info:#5e8cff;--shadow:0 18px 50px rgba(0,0,0,.28);--radius:16px}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}html,body{margin:0;min-height:100%;color:var(--text);background:var(--bg);font-family:'Manrope','Montserrat',Arial,sans-serif}body{overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}svg{display:block;max-width:100%;height:auto;fill:currentColor}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:#0b0b0b}::-webkit-scrollbar-thumb{background:#343434;border-radius:20px}
/* ADMIN LAYOUT - baseado no CRM */
.crm-layout,.layout{display:flex;min-height:100vh;background:var(--bg)}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;height:100vh;background:#0a0a0a;border-right:1px solid var(--line);z-index:80;overflow:hidden}.sidebar-inner{height:100%;padding:20px 0 16px;display:flex;flex-direction:column}.sidebar-brand{display:flex;align-items:center;gap:12px;margin:0 20px 28px;padding:6px 0}.brandmark{width:42px;height:42px;flex:0 0 42px;border-radius:11px;background:var(--gold);color:#000;display:grid;place-items:center;font:900 20px/1 'Montserrat',sans-serif;box-shadow:0 8px 24px rgba(255,184,0,.17)}.brandcopy{min-width:0}.brandcopy strong{display:block;font:800 18px/1.1 'Montserrat',sans-serif;letter-spacing:-.35px}.brandcopy small{display:block;margin-top:4px;color:#777;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-label{padding:0 20px 9px;color:#5f5f5f;font-size:9px;letter-spacing:1.15px;font-weight:800}.nav{display:grid;gap:3px}.nav>a{position:relative;display:flex;align-items:center;gap:12px;min-height:46px;padding:11px 20px;color:#aaa;font-size:12.5px;font-weight:650;transition:.18s ease}.nav>a:hover{color:#fff;background:rgba(255,255,255,.025)}.nav>a.active{width:90%;background:var(--gold);color:#050505;border-radius:0 22px 22px 0;font-weight:850}.nav-icon{width:20px;height:20px;flex:0 0 20px;display:grid;place-items:center}.nav-icon svg{width:19px!important;height:19px!important}.active-dot{display:none}.sep{height:1px;background:#1d1d1d;margin:12px 20px}.logout-link{color:#767676!important}.logout-link:hover{color:var(--danger)!important}.sidebar-spacer{flex:1}.sidebar-card{margin:10px 16px 12px;padding:13px;border:1px solid #222;border-radius:12px;background:#101010;display:flex;gap:10px;align-items:center}.shield-mini{width:32px;height:32px;flex:0 0 32px;border-radius:9px;background:#1d2c1f;color:var(--ok);display:grid;place-items:center;font-weight:900}.sidebar-card strong,.sidebar-user strong{display:block;font-size:11px}.sidebar-card small,.sidebar-user small{display:block;margin-top:3px;color:#707070;font-size:9px;line-height:1.35}.sidebar-user{margin:0 16px;padding:13px;border-top:1px solid #1e1e1e;display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;flex:0 0 38px;border-radius:9px;background:var(--gold);color:#000;display:grid;place-items:center;font-weight:900;font-size:13px}.content{margin-left:260px;width:calc(100% - 260px);min-height:100vh;background:var(--bg)}.admin-topbar{height:74px;position:sticky;top:0;z-index:55;border-bottom:1px solid var(--line);background:rgba(13,13,13,.94);backdrop-filter:blur(14px);display:flex;align-items:center;gap:22px;padding:0 30px}.top-title{min-width:210px}.top-title .eyebrow{margin:0 0 3px}.top-title h2{margin:0;font:800 18px/1.1 'Montserrat',sans-serif}.top-center{flex:1;display:flex;justify-content:center}.global-search{width:min(420px,100%);height:42px;border:1px solid var(--line2);border-radius:9px;background:#111;display:flex;align-items:center;gap:10px;padding:0 13px;color:#777;font-size:11px}.global-search svg{width:17px!important;height:17px!important}.top-actions{display:flex;align-items:center;gap:11px}.system-status{height:34px;padding:0 11px;border:1px solid #213628;background:#101a13;border-radius:999px;color:#91c69b;display:flex;align-items:center;gap:7px;font-size:10px;font-weight:700}.system-status i{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px rgba(37,211,102,.08)}.top-icon-btn{width:38px;height:38px;border-radius:9px;border:1px solid var(--line);background:#111;color:#8d8d8d;display:grid;place-items:center}.top-icon-btn:hover{color:var(--gold);border-color:#4b3a05}.top-icon-btn svg{width:17px!important;height:17px!important}.profile-chip{display:flex;align-items:center;gap:9px;padding-left:3px}.profile-copy strong{display:block;font-size:11px}.profile-copy small{display:block;color:#727272;margin-top:2px;font-size:9px}.page-container{width:min(100%,1460px);margin:0 auto;padding:28px 30px 45px}.pagehead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.pagehead h1{margin:4px 0 0;font:850 clamp(24px,2.4vw,31px)/1.1 'Montserrat',sans-serif;letter-spacing:-1px}.pagehead p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.eyebrow,.eyebrow-light{display:block;color:var(--gold);font-size:8.5px;letter-spacing:1.35px;font-weight:900}.page-actions{display:flex;align-items:center;gap:9px}.date-chip-top,.date-chip{height:38px;display:flex;align-items:center;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#111;color:#999;font-size:10px;font-weight:700}
/* Hero / dashboard */
.dashboard-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr);gap:26px;margin-bottom:15px;padding:27px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.dashboard-hero:after{content:"";position:absolute;width:320px;height:320px;right:-130px;top:-165px;border-radius:50%;background:radial-gradient(circle,rgba(255,184,0,.21),rgba(255,184,0,0) 70%)}.hero-copy{position:relative;z-index:1}.hero-copy h2{max-width:760px;margin:8px 0 10px;font:850 clamp(27px,3vw,40px)/1.08 'Montserrat',sans-serif;letter-spacing:-1.5px}.hero-copy p{max-width:780px;margin:0;color:#9b9b9b;font-size:12.5px;line-height:1.65}.hero-actions{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;gap:9px}.hero-btn{min-height:48px;padding:0 15px;border:1px solid #333;border-radius:9px;background:#111;color:#fff;display:flex;align-items:center;gap:9px;font-size:11px;font-weight:800}.hero-btn:hover{border-color:#4a3b13;color:var(--gold)}.hero-btn.primary-lite{background:var(--gold);color:#050505;border-color:var(--gold)}.hero-btn svg{width:18px!important;height:18px!important}.grid{display:grid;gap:14px}.grid4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:none}.card{padding:18px}.metric{min-height:158px;display:flex;flex-direction:column}.metric-head{display:flex;justify-content:space-between;gap:12px}.metric .label{color:#8c8c8c;font-size:9px;letter-spacing:.75px;text-transform:uppercase;font-weight:850}.metric .value{margin-top:7px;color:#fff;font:900 30px/1 'Montserrat',sans-serif;letter-spacing:-1px}.metric .sub{margin-top:8px;color:#6f6f6f;font-size:9.5px}.metric-icon{width:42px;height:42px;flex:0 0 42px;border-radius:10px;background:rgba(255,184,0,.1);color:var(--gold);display:grid;place-items:center}.metric-icon.warn{background:rgba(255,159,28,.1);color:var(--warn)}.metric-icon.info{background:rgba(94,140,255,.1);color:var(--info)}.metric-icon svg{width:20px!important;height:20px!important}.metric-foot{margin-top:auto;display:flex;align-items:center;gap:9px;padding-top:14px}.metric-foot>span{width:50px;color:#737373;font-size:8.5px}.mini-progress{height:4px;flex:1;border-radius:10px;background:#242424;overflow:hidden}.mini-progress i{display:block;height:100%;border-radius:10px;background:var(--gold)}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(270px,.4fr);gap:14px;margin-top:14px}.panel-title,.section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:14px}.panel-title h2,.section-title h2,.card>h2{margin:0;font:800 15px/1.2 'Montserrat',sans-serif}.panel-title p{margin:5px 0 0;color:#747474;font-size:9.5px}.panel-link{color:var(--gold);font-size:10px;font-weight:800}.attendance-card{display:flex;flex-direction:column;align-items:stretch}.attendance-ring{--p:0;width:154px;height:154px;margin:8px auto 18px;border-radius:50%;background:conic-gradient(var(--gold) calc(var(--p)*1%),#242424 0);display:grid;place-items:center}.attendance-ring:before{content:"";position:absolute}.attendance-ring-inner{width:117px;height:117px;border-radius:50%;background:var(--panel);display:grid;place-items:center;align-content:center;border:1px solid #242424}.attendance-ring-inner strong{font:900 27px/1 'Montserrat',sans-serif}.attendance-ring-inner span{margin-top:6px;color:#6f6f6f;font-size:9px}.summary-list{display:grid;gap:2px}.summary-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #202020;padding:10px 2px;font-size:10px}.summary-row span{display:flex;align-items:center;gap:8px;color:#aaa}.summary-dot{width:7px;height:7px;border-radius:50%;background:var(--gold)}.summary-dot.warn{background:var(--warn)}.summary-dot.info{background:var(--info)}
/* tables/forms */
.tablewrap{width:100%;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#111}.card>.tablewrap{border-radius:10px}.tablewrap table{width:100%;min-width:720px;border-collapse:collapse}.tablewrap th{padding:11px 13px;text-align:left;background:#101010;border-bottom:1px solid var(--line);color:#727272;font-size:8px;text-transform:uppercase;letter-spacing:.6px;font-weight:850;white-space:nowrap}.tablewrap td{padding:12px 13px;border-bottom:1px solid #202020;color:#cfcfcf;font-size:10px;vertical-align:middle}.tablewrap tr:last-child td{border-bottom:0}.tablewrap tbody tr:hover td{background:#151515}.tablewrap small{color:#707070}.person-cell{display:flex;align-items:center;gap:9px}.person-avatar{width:31px;height:31px;flex:0 0 31px;border-radius:8px;background:#252017;color:var(--gold);display:grid;place-items:center;font-size:10px;font-weight:900}.person-copy strong{display:block;color:#ececec;font-size:10px}.person-copy small{display:block;margin-top:2px;color:#6c6c6c;font-size:8px}.event-type{display:flex;align-items:center;gap:6px}.event-type i{width:6px;height:6px;border-radius:50%;background:var(--gold)}.badge{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border:1px solid #363026;border-radius:999px;background:#1b1811;color:#dcb755;font-size:8px;font-weight:850;text-transform:capitalize}.badge.ok{border-color:#193622;background:#101d14;color:#6ddd8b}.badge.danger{border-color:#452222;background:#211111;color:#ff8282}.btn,button.btn{min-height:40px;padding:0 14px;border:0;border-radius:8px;background:var(--gold);color:#070707;font-size:10.5px;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s}.btn:hover{background:var(--gold-hover);transform:translateY(-1px)}.btn.secondary{background:#121212;color:#e2e2e2;border:1px solid #333}.btn.secondary:hover{color:var(--gold);border-color:#594400;background:#111}.btn.primary{background:var(--gold);color:#050505}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{color:#8b8b8b;font-size:9.5px;font-weight:700}.field input,.field select,.field textarea{width:100%;min-height:43px;padding:10px 11px;border:1px solid #303030;border-radius:8px;background:#0d0d0d;color:#ededed;outline:none;font-size:11px;transition:.16s}.field textarea{min-height:96px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#8b6800;box-shadow:0 0 0 3px rgba(255,184,0,.07)}.field input[type=checkbox]{width:auto;min-height:0;accent-color:var(--gold)}.hint{color:#6e6e6e;font-size:8.5px;line-height:1.45}.empty{padding:25px!important;text-align:center;color:#6e6e6e!important}.flash{margin:0 0 15px;padding:11px 13px;border:1px solid #245532;border-radius:9px;background:#102016;color:#79dd94;font-size:10px}.flash.error{border-color:#5a2727;background:#211111;color:#ff8d8d}
/* Login / install no mesmo tema */
.loginpage{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);background:#080808}.loginhero{position:relative;overflow:hidden;padding:clamp(35px,6vw,80px);display:flex;flex-direction:column;justify-content:center;background:#0a0a0a;border-right:1px solid #222}.loginhero:after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;right:-170px;top:-130px;background:radial-gradient(circle,rgba(255,184,0,.18),rgba(255,184,0,0) 70%)}.loginhero .brand{position:absolute;top:34px;left:clamp(35px,6vw,80px);display:flex;align-items:center;gap:11px;font-weight:850}.loginhero h1{position:relative;z-index:1;max-width:700px;margin:0 0 15px;font:900 clamp(38px,5vw,68px)/1.02 'Montserrat',sans-serif;letter-spacing:-2.6px}.loginhero p{position:relative;z-index:1;max-width:620px;color:#8b8b8b;line-height:1.7;font-size:13px}.loginbox{display:grid;place-items:center;padding:30px}.loginbox .panel{width:min(100%,430px);padding:28px}.loginbox h2{margin:0;font:850 23px/1.1 'Montserrat',sans-serif}.loginbox p{color:#818181;font-size:11px;margin:8px 0 22px}.loginbox .grid{display:grid;gap:13px}
/* COLABORADOR - mesma identidade CRM */
.punch-shell{background:#090909;color:#fff;padding-bottom:86px}.employee-topbar{position:sticky;top:0;z-index:80;height:68px;background:rgba(9,9,9,.94);border-bottom:1px solid #222;backdrop-filter:blur(14px)}.employee-head-inner{width:min(100% - 28px,680px);height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between}.employee-brand{display:flex;align-items:center;gap:9px}.employee-brand .brandmark{width:37px;height:37px;flex-basis:37px;border-radius:9px}.employee-brand .brandcopy strong{font-size:14px}.employee-brand .brandcopy small{font-size:8px}.employee-avatar{width:37px;height:37px;border-radius:9px;background:#171717;border:1px solid #2d2d2d;color:var(--gold);display:grid;place-items:center;font-size:11px;font-weight:900}.punch-main{width:min(100% - 24px,680px);margin:0 auto;padding:20px 0 26px}.employee-welcome{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:14px}.employee-welcome h1{margin:5px 0 4px;font:850 clamp(23px,6vw,31px)/1.1 'Montserrat',sans-serif;letter-spacing:-.8px}.employee-welcome p{margin:0;color:#747474;font-size:9.5px}.live-pill{display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #24402c;background:#101a13;color:#8bd99d;border-radius:999px;font-size:8.5px;font-weight:800}.live-pill i{width:6px;height:6px;border-radius:50%;background:var(--ok)}.clock-card{position:relative;overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:23px;margin-bottom:13px}.clock-card:after{content:"";position:absolute;width:210px;height:210px;right:-100px;top:-110px;border-radius:50%;background:radial-gradient(circle,rgba(255,184,0,.18),rgba(255,184,0,0) 70%)}.clock-ring{position:relative;z-index:1}.clock-kicker{display:block;color:var(--gold);font-size:8px;letter-spacing:1.2px;font-weight:900}.time{margin-top:7px;font:900 clamp(43px,12vw,64px)/1 'Montserrat',sans-serif;letter-spacing:-2.4px}.clock-date{margin-top:6px;color:#747474;font-size:9px;text-transform:capitalize}.schedule-mini{position:relative;z-index:1;margin-top:20px;padding-top:15px;border-top:1px solid #252525;display:flex;align-items:center;justify-content:space-between;gap:12px}.schedule-mini span{color:#727272;font-size:9px}.schedule-mini strong{font-size:11px}.schedule-mini b{color:var(--gold);padding:0 6px}.journey-card,.history-card,.security-card,.punch-action-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:13px}.journey-count{min-width:42px;height:30px;border-radius:999px;background:#1e1a0f;color:var(--gold);display:grid;place-items:center;font-size:9px;font-weight:900}.punchstate{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.punchstep{min-width:0;padding:11px 7px;border:1px solid #292929;border-radius:10px;background:#111;text-align:center}.step-dot{width:24px;height:24px;margin:0 auto 7px;border-radius:7px;border:1px solid #333;display:grid;place-items:center;color:#5e5e5e;font-size:9px;font-weight:900}.punchstep strong{display:block;font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.punchstep small{display:block;margin-top:4px;color:#606060;font-size:7.5px}.punchstep.done{border-color:#564200;background:#19160d}.punchstep.done .step-dot{background:var(--gold);border-color:var(--gold);color:#050505}.punchstep.done small{color:#a58d50}.punch-action-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#181818,#121212)}.action-glow{position:absolute;width:220px;height:220px;right:-100px;top:-125px;border-radius:50%;background:radial-gradient(circle,rgba(255,184,0,.22),rgba(255,184,0,0) 68%)}.punch-action-head{position:relative;z-index:1;display:flex;align-items:flex-start;gap:12px;margin-bottom:15px}.action-icon{width:43px;height:43px;flex:0 0 43px;border-radius:10px;background:var(--gold);color:#050505;display:grid;place-items:center}.action-icon svg{width:21px!important;height:21px!important}.punch-action-head h2{margin:4px 0 4px;font:850 20px/1.1 'Montserrat',sans-serif}.punch-action-head p{margin:0;color:#777;font-size:9.5px}.premium-actions{position:relative;z-index:1;display:grid;gap:8px}.premium-actions .btn{width:100%;min-height:62px;justify-content:flex-start;padding:10px 12px;text-align:left}.premium-actions .btn>span:nth-child(2){flex:1}.premium-actions strong{display:block;font-size:10px}.premium-actions small{display:block;margin-top:3px;font-size:8px;opacity:.65}.punch-primary{background:var(--gold)!important;color:#050505!important}.face-btn{background:#111!important;color:#efefef!important;border:1px solid #333!important}.face-btn:hover{border-color:#695100!important;color:var(--gold)!important}.fingerprint,.face-symbol{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;font-size:20px}.fingerprint{background:rgba(0,0,0,.1)}.face-symbol{background:#1d1d1d;color:var(--gold)}.securitynote{margin-top:12px;color:#707070;font-size:8.5px;line-height:1.5}.secure-inline{display:flex;gap:7px;align-items:center}.secure-inline span{color:var(--ok)}.journey-complete{display:flex;align-items:center;gap:12px;margin-bottom:13px;padding:16px;border:1px solid #24422c;background:#111a13;border-radius:14px}.complete-icon{width:38px;height:38px;border-radius:10px;background:#1b3722;color:var(--ok);display:grid;place-items:center;font-weight:900}.journey-complete strong{font-size:11px}.journey-complete p{margin:3px 0 0;color:#718076;font-size:8.5px}.timeline{display:grid}.timeline-row{display:grid;grid-template-columns:31px 1fr auto;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #222}.timeline-row:last-child{border-bottom:0}.timeline-icon{width:28px;height:28px;border-radius:8px;background:#18150c;color:var(--gold);display:grid;place-items:center;font-size:9px}.timeline-row strong{display:block;font-size:9.5px}.timeline-row small{display:block;color:#686868;margin-top:2px;font-size:7.5px}.timeline-row time{font-size:10px;font-weight:800}.modern-empty{display:grid;gap:5px;place-items:center}.modern-empty div{font-size:24px;color:#454545}.modern-empty strong{font-size:10px;color:#aaa}.modern-empty span{font-size:8px}.security-header{display:flex;align-items:center;gap:11px}.security-icon{width:38px;height:38px;border-radius:9px;background:#1d1a10;color:var(--gold);display:grid;place-items:center}.security-card>.hint{margin:10px 0 13px}.security-actions{display:grid;gap:7px}.setting-row{width:100%;min-height:58px;padding:9px 11px;border:1px solid #292929;background:#111;color:#ddd;border-radius:10px;display:flex;align-items:center;gap:10px;text-align:left}.setting-row:hover{border-color:#5b4707}.setting-icon{width:35px;height:35px;border-radius:8px;background:#1c190f;color:var(--gold);display:grid;place-items:center}.setting-row>span:nth-child(2){flex:1}.setting-row strong{display:block;font-size:9.5px}.setting-row small{display:block;color:#666;font-size:7.5px;margin-top:2px}.setting-row>b{color:var(--gold)}.privacy-note{display:flex;gap:8px;margin-top:12px;padding:10px;border-radius:9px;background:#101010;border:1px solid #222;color:#6b6b6b}.privacy-note span{color:var(--gold)}.privacy-note p{margin:0;font-size:8px;line-height:1.5}.employee-bottomnav{position:fixed;z-index:90;left:50%;bottom:max(9px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(calc(100% - 20px),650px);height:66px;padding:6px;background:#0f0f0f;border:1px solid #292929;border-radius:16px;display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 18px 45px rgba(0,0,0,.45)}.employee-bottomnav a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#686868;font-size:7px}.employee-bottomnav a.active{color:var(--gold)}.employee-bottomnav a>span{width:20px;height:20px;display:grid;place-items:center}.employee-bottomnav svg{width:18px!important;height:18px!important}.employee-bottomnav .bottom-punch{color:#050505}.employee-bottomnav .bottom-punch>span{position:absolute;top:-22px;width:48px;height:48px;border-radius:14px;background:var(--gold);box-shadow:0 7px 20px rgba(255,184,0,.24)}.employee-bottomnav .bottom-punch small{margin-top:26px;color:var(--gold);font-weight:800}
/* MOBILE ADMIN */
.mobilebar{display:none}
@media(max-width:1100px){.sidebar{width:225px}.content{margin-left:225px;width:calc(100% - 225px)}.admin-topbar{padding:0 20px}.page-container{padding:22px 20px 40px}.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-main-grid{grid-template-columns:1fr}.attendance-card{display:grid;grid-template-columns:1fr 1fr;align-items:center}.attendance-card .panel-title{grid-column:1/-1}.top-center{display:none}}
@media(max-width:820px){body.admin-shell{padding-bottom:76px}.sidebar{display:none}.content{margin-left:0;width:100%}.admin-topbar{height:62px;position:sticky;padding:0 14px}.top-title{min-width:0}.top-title .eyebrow{display:none}.top-title h2{font-size:15px}.top-actions{margin-left:auto}.system-status,.profile-copy{display:none}.profile-chip .avatar{width:34px;height:34px;flex-basis:34px}.top-icon-btn{width:34px;height:34px}.page-container{padding:18px 13px 28px}.pagehead{align-items:flex-start}.pagehead h1{font-size:23px}.pagehead p{font-size:10px}.date-chip-top{display:none}.dashboard-hero{grid-template-columns:1fr;padding:18px}.hero-copy h2{font-size:28px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.mobilebar{position:fixed;z-index:100;left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));height:64px;padding:5px;background:#0f0f0f;border:1px solid #292929;border-radius:16px;display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 18px 45px rgba(0,0,0,.45)}.mobilebar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#666}.mobilebar a.active{color:var(--gold)}.mobile-icon{width:19px;height:19px;display:grid;place-items:center}.mobile-icon svg{width:18px!important;height:18px!important}.mobilebar small{font-size:7px}.mobile-icon.main-action{width:38px;height:38px;margin-top:-18px;border-radius:11px;background:var(--gold);color:#050505;box-shadow:0 8px 20px rgba(255,184,0,.22)}.admin-mobilebar a:nth-child(3) small{margin-top:-2px}.attendance-card{display:block}.loginpage{grid-template-columns:1fr}.loginhero{min-height:42vh;border-right:0;border-bottom:1px solid #222;padding:32px 24px}.loginhero .brand{position:static;margin-bottom:55px}.loginhero h1{font-size:38px}.loginbox{padding:18px}.loginbox .panel{padding:22px}}
@media(max-width:560px){.pagehead{display:block}.page-actions{margin-top:13px}.page-actions .btn{width:100%}.grid4{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric{min-height:137px;padding:13px}.metric .value{font-size:25px}.metric-icon{width:35px;height:35px;flex-basis:35px}.metric .sub{font-size:8px}.dashboard-hero{margin-bottom:9px}.hero-copy h2{font-size:25px}.hero-actions{grid-template-columns:1fr}.dashboard-main-grid{margin-top:9px}.card{padding:14px}.tablewrap{border-radius:10px}.punch-main{width:min(100% - 18px,680px);padding-top:14px}.employee-head-inner{width:calc(100% - 20px)}.punchstate{gap:5px}.punchstep{padding:9px 4px}.punchstep strong{font-size:7.5px}.time{font-size:46px}.clock-card{padding:18px}.schedule-mini{align-items:flex-end}.employee-bottomnav{width:calc(100% - 14px);bottom:max(6px,env(safe-area-inset-bottom));border-radius:14px}}

/* ===== PONTODIGITAL · MODO TOTEM ===== */
.totem-shell{min-height:100vh;background:
radial-gradient(circle at 18% 10%,rgba(255,184,0,.08),transparent 28%),
radial-gradient(circle at 85% 88%,rgba(255,184,0,.06),transparent 25%),#090909;color:#f7f7f7;overflow-x:hidden}
.totem-topbar{height:82px;padding:0 28px;border-bottom:1px solid #202020;background:rgba(10,10,10,.88);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;top:0;z-index:30}
.totem-brand{display:flex;align-items:center;gap:12px}.totem-brand .brandmark{width:43px;height:43px;border-radius:12px;background:var(--gold);color:#050505;display:grid;place-items:center;font:900 19px/1 'Montserrat',sans-serif;box-shadow:0 10px 30px rgba(255,184,0,.17)}.totem-brand strong{display:block;font:850 15px/1.1 'Montserrat',sans-serif}.totem-brand small{display:block;color:#6d6d6d;margin-top:4px;font-size:9px}
.totem-top-actions{display:flex;align-items:center;gap:9px}.totem-online{height:38px;padding:0 13px;border:1px solid #272727;background:#111;border-radius:11px;color:#888;display:flex;align-items:center;gap:7px;font-size:9px;font-weight:800}.totem-online i{width:7px;height:7px;border-radius:99px;background:#33cc73;box-shadow:0 0 0 4px rgba(51,204,115,.08)}.totem-icon-btn{width:38px;height:38px;border-radius:11px;border:1px solid #2a2a2a;background:#111;color:#aaa;display:grid;place-items:center;font-size:18px;cursor:pointer}.totem-icon-btn:hover{border-color:#5b4707;color:var(--gold)}
.totem-stage{width:min(1180px,calc(100% - 38px));margin:0 auto;padding:34px 0 48px}.totem-intro{max-width:760px;margin-bottom:24px}.totem-intro h1{margin:7px 0 8px;font:900 clamp(34px,5vw,62px)/.96 'Montserrat',sans-serif;letter-spacing:-2.2px}.totem-intro p{margin:0;color:#777;max-width:680px;font-size:12px;line-height:1.7}.totem-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.7fr);gap:17px;align-items:start}
.totem-camera-card,.totem-clock-panel,.totem-flow,.totem-stats{border:1px solid #252525;background:linear-gradient(145deg,#151515,#101010);border-radius:22px}.totem-camera-card{padding:19px}.totem-camera-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.totem-camera-head h2{margin:5px 0 0;font:850 22px/1.1 'Montserrat',sans-serif}.totem-ready{padding:7px 10px;border:1px solid #23452d;background:#101914;border-radius:999px;color:#75c88e;display:flex;align-items:center;gap:6px;font-size:8px;font-weight:850}.totem-ready i{width:6px;height:6px;background:#4bd27a;border-radius:99px}
.totem-camera{position:relative;overflow:hidden;aspect-ratio:16/9;border:1px solid #292929;border-radius:18px;background:radial-gradient(circle at 50% 44%,#1b1b1b,#0b0b0b 70%);display:grid;place-items:center}.totem-camera:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:34px 34px;pointer-events:none}.totem-camera video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.totem-face-guide{position:absolute;width:min(42%,260px);aspect-ratio:.78;border:2px solid rgba(255,184,0,.68);border-radius:45% 45% 40% 40%;box-shadow:0 0 0 999px rgba(0,0,0,.22),0 0 35px rgba(255,184,0,.08);pointer-events:none}.totem-face-guide:before,.totem-face-guide:after,.totem-face-guide span:before,.totem-face-guide span:after{content:"";position:absolute;width:25px;height:25px;border-color:var(--gold);border-style:solid}.totem-face-guide:before{left:-3px;top:-3px;border-width:3px 0 0 3px;border-radius:8px 0 0 0}.totem-face-guide:after{right:-3px;top:-3px;border-width:3px 3px 0 0;border-radius:0 8px 0 0}.totem-face-guide span:before{left:-3px;bottom:-3px;border-width:0 0 3px 3px;border-radius:0 0 0 8px}.totem-face-guide span:after{right:-3px;bottom:-3px;border-width:0 3px 3px 0;border-radius:0 0 8px 0}.totem-scan-line{position:absolute;left:27%;right:27%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);box-shadow:0 0 12px rgba(255,184,0,.5);animation:totemScan 2.5s ease-in-out infinite}@keyframes totemScan{0%,100%{top:25%;opacity:.25}50%{top:73%;opacity:1}}
.totem-camera-copy{position:absolute;left:18px;right:18px;bottom:16px;padding:12px 14px;border:1px solid rgba(255,255,255,.08);background:rgba(10,10,10,.72);backdrop-filter:blur(12px);border-radius:12px;text-align:center}.totem-camera-copy strong{display:block;font-size:11px}.totem-camera-copy small{display:block;color:#777;margin-top:3px;font-size:8px}.totem-start{margin-top:12px;width:100%;min-height:67px;border-radius:14px!important;padding:10px 14px!important;justify-content:flex-start!important;text-align:left!important}.totem-start>span:nth-child(2){flex:1}.totem-start strong{display:block;font-size:11px}.totem-start small{display:block;font-size:8px;opacity:.62;margin-top:2px}.totem-security{display:flex;align-items:center;justify-content:center;gap:7px;color:#6f6f6f;font-size:8px;padding-top:10px}.totem-security span{color:#47c879}
.totem-side{display:grid;gap:13px}.totem-clock-panel{padding:22px;position:relative;overflow:hidden}.totem-clock-panel:after{content:"";position:absolute;width:180px;height:180px;right:-80px;top:-90px;background:radial-gradient(circle,rgba(255,184,0,.15),transparent 70%);border-radius:50%}.totem-time{position:relative;z-index:1;margin-top:10px;font:900 clamp(40px,6vw,66px)/.95 'Montserrat',sans-serif;letter-spacing:-3px}.totem-date{position:relative;z-index:1;color:#727272;font-size:9px;margin-top:10px;text-transform:capitalize}.totem-flow{padding:18px}.totem-flow-title h3{margin:5px 0 14px;font:850 15px/1.2 'Montserrat',sans-serif}.totem-flow-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #242424}.totem-flow-row>span{width:29px;height:29px;border-radius:9px;background:#19160e;border:1px solid #4e3e0b;color:var(--gold);display:grid;place-items:center;font-size:9px;font-weight:900}.totem-flow-row strong{display:block;font-size:9.5px}.totem-flow-row small{display:block;color:#666;font-size:7.5px;margin-top:2px}.totem-stats{padding:16px 18px;display:flex;align-items:center;gap:11px}.totem-stats strong{font:900 28px/1 'Montserrat',sans-serif;color:var(--gold)}.totem-stats span{color:#777;font-size:8.5px;line-height:1.4}
.totem-result[hidden]{display:none}.totem-result{position:fixed;z-index:200;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(16px);display:grid;place-items:center;padding:18px}.totem-result-card{width:min(470px,100%);padding:34px 26px;border:1px solid #2c2c2c;background:linear-gradient(145deg,#171717,#0f0f0f);border-radius:24px;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.55)}.totem-result-icon{width:70px;height:70px;border-radius:20px;margin:0 auto 18px;background:var(--gold);color:#050505;display:grid;place-items:center;font-size:30px;font-weight:900;box-shadow:0 15px 35px rgba(255,184,0,.18)}.totem-result-icon.error{background:#4b1818;color:#ff8383}.totem-result-card h2{margin:7px 0 8px;font:900 28px/1.05 'Montserrat',sans-serif}.totem-result-card p{margin:0;color:#858585;font-size:10px}.totem-result-time{margin:18px auto 12px;padding:13px;border:1px solid #2a2a2a;border-radius:12px;background:#0c0c0c;font:900 27px/1 'Montserrat',sans-serif;color:var(--gold)}.totem-result-card>small{color:#555;font-size:8px}
@media(max-width:900px){.totem-grid{grid-template-columns:1fr}.totem-side{grid-template-columns:1fr 1fr}.totem-stats{grid-column:1/-1}.totem-stage{padding-top:24px}.totem-intro h1{font-size:42px}}
@media(max-width:620px){.totem-topbar{height:68px;padding:0 12px}.totem-online{display:none}.totem-brand small{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.totem-stage{width:calc(100% - 16px);padding:18px 0 28px}.totem-intro{padding:0 4px}.totem-intro h1{font-size:34px;letter-spacing:-1.5px}.totem-intro p{font-size:9.5px}.totem-camera-card{padding:10px;border-radius:16px}.totem-camera-head{padding:4px 3px}.totem-camera-head h2{font-size:17px}.totem-ready{display:none}.totem-camera{aspect-ratio:4/5;border-radius:14px}.totem-face-guide{width:52%}.totem-camera-copy{left:10px;right:10px;bottom:10px}.totem-side{grid-template-columns:1fr}.totem-stats{grid-column:auto}.totem-clock-panel,.totem-flow,.totem-stats{border-radius:16px}.totem-time{font-size:52px}.totem-result-card{border-radius:18px;padding:28px 18px}.totem-result-card h2{font-size:24px}}

/* ===== Totem V2 — terminal de ponto focado, limpo e responsivo ===== */
.totem-v2{--totem-bg:#090909;--totem-panel:#121212;--totem-panel2:#171717;--totem-line:#272727;--totem-muted:#858585;--totem-soft:#b8b8b8;overflow-x:hidden;background:radial-gradient(circle at 10% 15%,rgba(255,184,0,.055),transparent 26%),radial-gradient(circle at 88% 80%,rgba(255,184,0,.035),transparent 22%),#090909}
.totem-v2 .totem-topbar{height:74px;padding:0 clamp(18px,3vw,44px);background:rgba(9,9,9,.82);border-bottom:1px solid rgba(255,255,255,.07);backdrop-filter:blur(22px);position:relative;top:auto}
.totem-v2 .totem-brand .brandmark{width:40px;height:40px;border-radius:11px;box-shadow:none}.totem-v2 .totem-brand strong{font-size:14px}.totem-v2 .totem-brand small{font-size:8px;color:#717171}
.totem-header-clock{display:flex;align-items:flex-end;gap:8px;padding-right:4px}.totem-header-clock strong{font:800 14px/1 'Montserrat',sans-serif;letter-spacing:-.5px}.totem-header-clock small{font-size:8px;color:#6f6f6f;text-transform:uppercase;font-weight:800}.totem-v2 .totem-online{height:34px;padding:0 11px;background:#0e1410;border-color:#1e3625;color:#75c88e}.totem-v2 .totem-online span{font-size:8px}.totem-v2 .totem-icon-btn{width:34px;height:34px;border-radius:10px;font-size:15px;background:#101010}
.totem-menu{position:relative}.totem-menu summary{list-style:none}.totem-menu summary::-webkit-details-marker{display:none}.totem-menu-pop{position:absolute;right:0;top:43px;width:180px;padding:7px;background:#151515;border:1px solid #292929;border-radius:12px;box-shadow:0 20px 50px rgba(0,0,0,.45);z-index:80}.totem-menu-pop a{display:block;padding:10px 11px;border-radius:8px;color:#aaa;font-size:9px;font-weight:750}.totem-menu-pop a:hover{background:#202020;color:#fff}
.totem-v2 .totem-stage{width:min(1220px,calc(100% - 40px));padding:34px 0 28px}.totem-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:24px}.totem-hero h1{margin:7px 0 12px;font:900 clamp(34px,4.3vw,58px)/.98 'Montserrat',sans-serif;letter-spacing:-2.4px;max-width:760px}.totem-hero h1 em{font-style:normal;color:var(--gold)}.totem-hero p{margin:0;color:#7b7b7b;max-width:660px;font-size:11px;line-height:1.7}.totem-hero-badge{min-width:260px;display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #272727;border-radius:16px;background:#101010}.totem-hero-badge>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#211a08;color:var(--gold);font-size:20px}.totem-hero-badge strong{display:block;font-size:9px}.totem-hero-badge small{display:block;margin-top:3px;color:#666;font-size:7.5px}
.totem-v2 .totem-grid{grid-template-columns:minmax(0,1.75fr) minmax(290px,.66fr);gap:16px}.totem-v2 .totem-camera-card{padding:16px;border-color:#282828;background:linear-gradient(145deg,#151515,#0e0e0e);border-radius:24px;box-shadow:0 22px 70px rgba(0,0,0,.24)}.totem-v2 .totem-camera-head{margin-bottom:12px;padding:1px 2px}.totem-v2 .totem-camera-head h2{font-size:19px}.totem-v2 .totem-ready{padding:6px 9px;font-size:7.5px}.totem-v2 .totem-camera{aspect-ratio:16/8.6;border-radius:20px;border-color:#242424;background:radial-gradient(circle at 50% 45%,#1b1b1b,#090909 68%)}
.totem-v2 .totem-face-guide{width:min(31%,220px);border:1px solid rgba(255,184,0,.52);box-shadow:0 0 0 999px rgba(0,0,0,.18),0 0 65px rgba(255,184,0,.055)}.totem-corner{position:absolute;width:42px;height:42px;border-color:rgba(255,184,0,.75);border-style:solid;z-index:4}.totem-corner.tl{top:22px;left:22px;border-width:2px 0 0 2px;border-radius:10px 0 0}.totem-corner.tr{top:22px;right:22px;border-width:2px 2px 0 0;border-radius:0 10px 0 0}.totem-corner.bl{bottom:22px;left:22px;border-width:0 0 2px 2px;border-radius:0 0 0 10px}.totem-corner.br{bottom:22px;right:22px;border-width:0 2px 2px 0;border-radius:0 0 10px}.totem-v2 .totem-camera-copy{left:50%;right:auto;transform:translateX(-50%);width:min(360px,calc(100% - 36px));bottom:15px;padding:11px 14px}.totem-v2 .totem-camera-copy strong{font-size:10px}.totem-v2 .totem-camera-copy small{font-size:7.5px}
.totem-v2 .totem-start{min-height:66px;border-radius:16px!important;margin-top:13px;padding:9px 13px!important;box-shadow:0 14px 30px rgba(255,184,0,.12)}.totem-v2 .totem-start .face-symbol{width:40px;height:40px;border-radius:11px;background:#0d0d0d;color:var(--gold);display:grid;place-items:center;font-size:18px}.totem-v2 .totem-start strong{font-size:11px}.totem-v2 .totem-start small{font-size:7.7px}.totem-v2 .totem-start b{font-size:16px}.totem-v2 .totem-start:disabled{filter:saturate(.45);cursor:wait;opacity:.75}
.totem-trust-row{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;padding:12px 4px 1px;color:#626262;font-size:7.3px;font-weight:750}.totem-trust-row span:before{color:#47c879}
.totem-v2 .totem-side{gap:12px}.totem-v2 .totem-clock-panel,.totem-v2 .totem-flow,.totem-help-card,.totem-v2 .totem-stats{border:1px solid #272727;background:linear-gradient(145deg,#151515,#101010);border-radius:20px}.totem-v2 .totem-clock-panel{padding:20px}.totem-v2 .totem-time{font-size:clamp(42px,5vw,58px);letter-spacing:-3.2px;margin-top:8px}.totem-v2 .totem-date{font-size:8px;margin-top:9px;color:#707070}.totem-clock-line{display:flex;align-items:center;gap:7px;margin-top:16px;padding-top:12px;border-top:1px solid #252525;color:#666;font-size:7.3px;font-weight:750}.totem-clock-line i{width:6px;height:6px;background:#42cb75;border-radius:99px;box-shadow:0 0 0 4px rgba(66,203,117,.08)}
.totem-v2 .totem-flow{padding:18px}.totem-v2 .totem-flow-title h3{font-size:13px;line-height:1.35;margin-bottom:14px}.totem-flow-track{position:relative}.totem-flow-track:before{content:"";position:absolute;left:13px;top:16px;bottom:16px;width:1px;background:#332a10}.totem-v2 .totem-flow-row{position:relative;border:0;padding:7px 0;gap:10px}.totem-v2 .totem-flow-row>span{z-index:1;width:27px;height:27px;border-radius:50%;font-size:8px;background:#17130a}.totem-v2 .totem-flow-row strong{font-size:8.8px}.totem-v2 .totem-flow-row small{font-size:7px;color:#656565}
.totem-help-card{display:flex;align-items:center;gap:11px;padding:14px 15px}.totem-help-icon{width:32px;height:32px;border-radius:10px;background:#1b1b1b;color:#8e8e8e;display:grid;place-items:center;font:800 13px 'Montserrat',sans-serif}.totem-help-card strong{display:block;font-size:8.5px}.totem-help-card small{display:block;color:#676767;font-size:7px;line-height:1.45;margin-top:3px}.totem-v2 .totem-stats{padding:14px 16px}.totem-v2 .totem-stats strong{font-size:24px}.totem-v2 .totem-stats span{font-size:7.5px}
.totem-footer{width:min(1220px,calc(100% - 40px));margin:0 auto;padding:0 0 18px;display:flex;justify-content:center;gap:8px;color:#4d4d4d;font-size:7.5px;font-weight:700}.totem-v2 .totem-result{background:rgba(4,4,4,.84)}.totem-v2 .totem-result-card{width:min(500px,100%);padding:38px 30px;border-radius:28px;border-color:#303030}.totem-v2 .totem-result-icon{border-radius:50%;width:72px;height:72px}.totem-v2 .totem-result-card h2{font-size:30px}.totem-v2 .totem-result-time{font-size:34px;border-radius:15px;padding:15px}
.totem-v2[data-totem-state="scanning"] .totem-camera{box-shadow:inset 0 0 0 1px rgba(255,184,0,.22),0 0 45px rgba(255,184,0,.05)}.totem-v2[data-totem-state="scanning"] .totem-ready{color:var(--gold);border-color:#54420c;background:#181407}.totem-v2[data-totem-state="scanning"] .totem-ready i{background:var(--gold)}
@media(max-width:980px){.totem-hero-badge{display:none}.totem-v2 .totem-grid{grid-template-columns:1fr}.totem-v2 .totem-side{grid-template-columns:1fr 1fr}.totem-help-card,.totem-v2 .totem-stats{grid-column:auto}.totem-v2 .totem-camera{aspect-ratio:16/9}.totem-v2 .totem-face-guide{width:34%}}
@media(max-width:680px){.totem-v2 .totem-topbar{height:62px;padding:0 12px}.totem-header-clock{display:none}.totem-v2 .totem-online{padding:0 9px}.totem-v2 .totem-online span{display:none}.totem-v2 .totem-brand .brandmark{width:36px;height:36px}.totem-v2 .totem-stage{width:calc(100% - 16px);padding:20px 0 18px}.totem-hero{margin-bottom:16px}.totem-hero h1{font-size:31px;letter-spacing:-1.6px}.totem-hero h1 br{display:none}.totem-hero p{font-size:9px}.totem-v2 .totem-camera-card{padding:10px;border-radius:18px}.totem-v2 .totem-camera-head h2{font-size:16px}.totem-v2 .totem-ready{display:none}.totem-v2 .totem-camera{aspect-ratio:4/5;border-radius:15px}.totem-v2 .totem-face-guide{width:53%}.totem-corner{width:28px;height:28px}.totem-corner.tl{top:12px;left:12px}.totem-corner.tr{top:12px;right:12px}.totem-corner.bl{bottom:12px;left:12px}.totem-corner.br{bottom:12px;right:12px}.totem-trust-row{gap:10px;font-size:6.5px}.totem-v2 .totem-side{grid-template-columns:1fr}.totem-v2 .totem-time{font-size:48px}.totem-footer{width:calc(100% - 20px);padding-bottom:12px}.totem-help-card{display:none}}

/* ===== TOTEM AUTO — terminal facial contínuo ===== */
.totem-auto{min-height:100vh;background:radial-gradient(circle at 50% 0,rgba(255,184,0,.05),transparent 34%),#080808;color:#f6f6f6;overflow-x:hidden}
.auto-topbar{height:68px;padding:0 clamp(18px,3vw,44px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1d1d1d;background:rgba(8,8,8,.93);backdrop-filter:blur(18px)}
.auto-brand{display:flex;align-items:center;gap:11px}.auto-brand .brandmark{width:38px;height:38px;border-radius:11px}.auto-brand strong{display:block;font:800 13px/1.1 'Montserrat',sans-serif}.auto-brand small{display:block;margin-top:4px;color:#666;font-size:8px}.auto-tools{display:flex;align-items:center;gap:12px}.auto-tools>strong{font:800 13px 'Montserrat',sans-serif;color:#d5d5d5}.auto-online{height:32px;padding:0 11px;display:flex;align-items:center;gap:7px;border:1px solid #1f3324;border-radius:10px;background:#0c120e;color:#72ce90;font-size:8px;font-weight:800}.auto-online i{width:6px;height:6px;border-radius:50%;background:#43d078;box-shadow:0 0 0 4px rgba(67,208,120,.08)}.auto-fullscreen{width:34px;height:34px;border:1px solid #262626;border-radius:10px;background:#101010;color:#aaa;cursor:pointer;font-size:15px}
.auto-stage{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:28px 0 26px}.auto-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.auto-intro h1{margin:6px 0 5px;font:900 clamp(28px,3vw,42px)/1 'Montserrat',sans-serif;letter-spacing:-1.5px}.auto-intro p{margin:0;color:#747474;font-size:10px}.auto-date{text-align:right}.auto-date strong{display:block;font:900 clamp(26px,3vw,38px)/1 'Montserrat',sans-serif;letter-spacing:-1.5px}.auto-date small{display:block;margin-top:6px;color:#626262;font-size:8px;text-transform:capitalize}
.auto-terminal{border:1px solid #262626;border-radius:24px;background:linear-gradient(145deg,#121212,#0c0c0c);padding:14px;box-shadow:0 26px 80px rgba(0,0,0,.28)}.auto-camera-wrap{position:relative;overflow:hidden;min-height:min(67vh,690px);border:1px solid #242424;border-radius:18px;background:#050505}.auto-camera-wrap video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1);opacity:.96}.auto-shade{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0 28%,rgba(0,0,0,.14) 55%,rgba(0,0,0,.42) 100%);pointer-events:none}.auto-gridlines{position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:64px 64px;pointer-events:none}.auto-face-frame{position:absolute;left:50%;top:48%;width:min(28%,260px);aspect-ratio:.72;transform:translate(-50%,-50%);border:1px solid rgba(255,184,0,.28);border-radius:48% 48% 44% 44%;box-shadow:0 0 0 999px rgba(0,0,0,.08)}.auto-face-frame i{position:absolute;width:34px;height:34px;border-color:var(--gold);border-style:solid}.auto-face-frame i:nth-child(1){left:-10px;top:-10px;border-width:3px 0 0 3px;border-radius:10px 0 0}.auto-face-frame i:nth-child(2){right:-10px;top:-10px;border-width:3px 3px 0 0;border-radius:0 10px 0 0}.auto-face-frame i:nth-child(3){left:-10px;bottom:-10px;border-width:0 0 3px 3px;border-radius:0 0 0 10px}.auto-face-frame i:nth-child(4){right:-10px;bottom:-10px;border-width:0 3px 3px 0;border-radius:0 0 10px}.auto-scan{display:none;position:absolute;left:30%;right:30%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);box-shadow:0 0 18px rgba(255,184,0,.75);animation:autoScan 1.45s ease-in-out infinite}@keyframes autoScan{0%{top:30%;opacity:.15}50%{opacity:1}100%{top:68%;opacity:.15}}
.auto-status{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);min-width:min(430px,calc(100% - 36px));display:flex;align-items:center;justify-content:center;gap:11px;padding:12px 18px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(8,8,8,.76);backdrop-filter:blur(16px);text-align:left}.auto-status-dot{width:8px;height:8px;border-radius:50%;background:#46d27b;box-shadow:0 0 0 5px rgba(70,210,123,.08)}.auto-status strong{display:block;font-size:10px}.auto-status small{display:block;margin-top:2px;color:#777;font-size:8px}.auto-foot{min-height:52px;padding:12px 6px 0;display:flex;align-items:center;justify-content:space-between;gap:18px}.auto-sequence{display:flex;align-items:center;gap:9px;color:#858585;font-size:8px;font-weight:800}.auto-sequence b{color:#444}.auto-secure{color:#666;font-size:7.5px;font-weight:700}
.totem-auto[data-totem-state="booting"] .auto-status-dot{background:#e2a900;box-shadow:0 0 0 5px rgba(226,169,0,.08)}.totem-auto[data-totem-state="scanning"] .auto-scan{display:block}.totem-auto[data-totem-state="scanning"] .auto-face-frame{border-color:rgba(255,184,0,.7);box-shadow:0 0 0 999px rgba(0,0,0,.09),0 0 70px rgba(255,184,0,.1)}.totem-auto[data-totem-state="scanning"] .auto-status-dot{background:var(--gold);box-shadow:0 0 0 5px rgba(255,184,0,.09)}.totem-auto[data-totem-state="waiting"] .auto-status-dot{background:#66a4ff}.totem-auto[data-totem-state="error"] .auto-status-dot{background:#ff5f61}.auto-result{background:rgba(0,0,0,.82);backdrop-filter:blur(12px)}
@media(max-width:760px){.auto-topbar{height:60px;padding:0 12px}.auto-brand small,.auto-online{display:none}.auto-stage{width:calc(100% - 16px);padding:17px 0}.auto-intro{align-items:flex-start;margin-bottom:13px}.auto-intro h1{font-size:25px}.auto-intro p{font-size:8.5px}.auto-date strong{font-size:22px}.auto-date small{display:none}.auto-terminal{padding:8px;border-radius:18px}.auto-camera-wrap{min-height:calc(100vh - 205px);border-radius:14px}.auto-face-frame{width:48%}.auto-status{bottom:12px;padding:10px 12px;min-width:calc(100% - 24px)}.auto-foot{justify-content:center}.auto-sequence{font-size:7px;gap:6px}.auto-secure{display:none}}
