:root{font-family:Arial,Helvetica,sans-serif;color:#1e302b;background:#f7f8f5;font-synthesis:none;--green:#23483d;--muted:#7b8580;--line:#e5e9e2;--lime:#d9eea2}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button,input,select{border-radius:8px}button{border:0}button:focus-visible,a:focus-visible{outline:3px solid #9dbd72;outline-offset:3px}input,select{border:1px solid #dce2da;background:#fff;padding:12px;color:#243b31;min-width:0}input:focus,select:focus{outline:2px solid #b9cf9e;outline-offset:1px}input{width:100%}label{display:block;font-size:13px;font-weight:600;margin:18px 0}label input{display:block;margin-top:8px;font-weight:400}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500;letter-spacing:-1.2px}h1{font-size:34px;line-height:1.2}h2{font-size:30px}h3{font-size:23px;letter-spacing:-.6px}p{line-height:1.6}.muted{color:var(--muted);font-size:14px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#7a887d;margin-bottom:14px}.primary,.secondary{padding:12px 18px;white-space:nowrap;font-size:13px;font-weight:600}.primary{background:var(--green);color:#fff}.primary:hover{background:#32614f}.secondary{background:white;color:var(--green);border:1px solid #dae0d6}.secondary:hover{background:#eef3e9}.brand{font-size:25px;letter-spacing:-1px;font-weight:700;display:flex;align-items:center;gap:8px}.brand-symbol{display:inline-grid;place-items:center;background:var(--green);color:white;border-radius:10px;width:35px;height:35px;font-size:29px}.brand-dot{font-size:10px;align-self:start;margin-top:6px}.workspace{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);padding:36px 22px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sidebar .brand{padding-left:12px}.nav-caption{margin:54px 0 16px 14px;font-size:9px}.nav-item{width:100%;display:flex;gap:13px;align-items:center;background:none;color:#79857b;text-align:left;padding:13px 16px;margin-bottom:8px;font-size:13px}.nav-item span{font-size:19px;width:20px}.nav-item.active{background:#edf2e7;color:#23483d;font-weight:700}.sidebar-note{margin-top:auto;padding:24px 14px;color:#7e887b}.sidebar-note strong{display:block;font-size:12px;color:#4b5f4a}.sidebar-note p{font-size:11px;margin:9px 0}.small-orbit{display:block;font-size:26px;margin-bottom:13px}.sidebar footer{border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:center;gap:9px}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#edf0e7;font-size:11px;color:#486048}.sidebar footer strong{font-size:11px}.sidebar footer small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.icon-button{background:none;margin-left:auto;font-size:22px;color:#7e887b}main{min-width:0}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 42px;border-bottom:1px solid var(--line);background:#fbfcf9;font-size:11px;color:#7c857d}.breadcrumb{color:#334b3e;margin-left:14px}.connection{font-size:10px;color:#4a7658}.connection::before,.green-dot{content:'';display:inline-block;width:6px;height:6px;background:#7da677;border-radius:50%;margin-right:7px}.connection.offline{color:#b05c35}.connection.offline::before{background:#b05c35}.page{padding:36px 42px 0;max-width:1500px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading h1{margin-bottom:10px}.page-heading p:last-child{margin:0}.event-hero{background:#213e34;border-radius:14px;padding:30px 34px;position:relative;overflow:hidden;min-height:205px;color:#fff;display:flex;justify-content:space-between;margin-bottom:22px}.event-hero>div:first-child{z-index:1;max-width:75%}.event-tag{display:inline-block;border:1px solid #6a8070;padding:5px 9px;border-radius:5px;font-size:9px;letter-spacing:1.3px;margin-bottom:18px}.event-hero h2{margin-bottom:8px;font-size:31px}.event-hero p{font-size:12px;color:#c1cbbd;margin-bottom:12px}.event-hero select{background:#2c4c40;color:#e0ebd6;border:1px solid #526b56;font-size:11px;padding:7px;max-width:100%}.hero-art{position:absolute;right:20px;top:-20px;width:280px;height:270px;opacity:.85}.orbit{border:1px solid #839475;position:absolute;width:230px;height:230px;border-radius:50%;top:35px;left:20px}.orbit-two{transform:scaleX(.55) rotate(45deg)}.orbit-three{transform:scaleX(.55) rotate(-45deg)}.hero-art>span{font:italic 160px Georgia,serif;color:#ddebba;position:absolute;left:86px;top:30px;letter-spacing:-15px}.hero-art i{position:absolute;top:40px;right:24px;color:#e5eecf;font-size:35px;font-style:normal}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px}.stats article{background:white;border:1px solid var(--line);border-radius:10px;padding:19px 20px}.stats article>div:first-child{display:flex;align-items:center;justify-content:space-between;color:#7b857b;font-size:11px}.stat-icon{font-size:16px;color:#94a18b}.stats strong{display:block;font-size:37px;font-weight:500;letter-spacing:-1.8px;margin:15px 0 10px}.stats small{font-size:10px;color:#969e93}.stats em{font-size:21px;font-style:normal;margin-left:3px;color:#839078}.progress{height:4px;background:#edf0e8;border-radius:3px;margin-top:19px}.progress>div{height:100%;background:#a9c482;border-radius:3px}.dashboard-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:25px;min-width:0}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.panel-heading h3{margin-bottom:0}.panel-heading .eyebrow{font-size:9px;margin-bottom:10px}.panel-heading p.muted{margin:7px 0 0;font-size:12px}.text-button{background:none;color:#657e51;font-size:11px;padding:8px}.empty{padding:45px 15px;text-align:center;color:#8d978a;font-size:13px;line-height:1.7}.empty>span{display:block;font-size:34px;color:#b0bda2;margin-bottom:12px}.next-step{background:#edf1e6;display:flex;flex-direction:column;align-items:start;position:relative}.next-step h3{font-size:27px;margin-bottom:12px;line-height:1.25}.next-step .muted{font-size:12px;max-width:260px}.next-step .primary{margin-top:auto;font-size:11px}.step-icon{position:absolute;right:25px;top:22px;font-size:31px;color:#7d9665}.next-step .eyebrow{margin:12px 0 20px;font-size:9px;max-width:70%}.arrival{display:flex;align-items:center;gap:12px;border-bottom:1px solid #f0f2eb;padding:13px 0}.arrival:last-child{border-bottom:0}.arrival strong{font-size:12px;font-weight:600}.arrival small{display:block;font-size:10px;color:#9ba193;margin-top:4px}.arrival time{margin-left:auto;font-size:11px;color:#7a8e66}.demo-note{display:flex;align-items:center;gap:15px;border:1px solid var(--line);border-radius:10px;padding:20px;margin-top:24px;background:#f1f4eb}.demo-note>span:first-child{font-size:25px;color:#879a6e}.demo-note strong{font-size:11px;font-weight:600}.demo-note p{font-size:11px;color:#8c9683;margin:5px 0 0}.version-label{margin-left:auto;font-size:9px;color:#8b987e;white-space:nowrap;letter-spacing:1px}.page-footer{display:flex;justify-content:space-between;padding:28px 0;font-size:10px;color:#8c9588}.page-footer>span:first-child{color:#51604b;font-weight:700}.page-footer .muted{font-size:10px;font-weight:400;margin-left:5px}.actions{display:flex;gap:8px;flex-wrap:wrap}.list-toolbar{display:flex;gap:10px;margin-bottom:18px}.list-toolbar input{flex:1}.list-toolbar input,.list-toolbar select{font-size:12px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#97a08f;font-weight:500;padding:13px 8px;background:#fafbf7}td{border-bottom:1px solid var(--line);padding:14px 8px}td small{display:block;color:#8d9787;font-size:10px;margin-top:6px}.badge{display:inline-block;padding:5px 8px;border-radius:5px;font-size:10px;background:#f0f1eb;color:#8b927e;white-space:nowrap}.badge.checked{background:#edf4e5;color:#567347}.table-action{padding:7px 9px;margin:2px;background:#f0f3ea;font-size:10px;color:#45623b}.list-count{font-size:11px;color:#8d9787;margin:18px 0 0}.scanner-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}.scanner-layout h3{margin-bottom:10px}.camera-hint{font-size:11px;color:#8b9584;margin:16px 0 25px}#reader{margin-bottom:18px;overflow:hidden;border-radius:8px}#manual-results{max-height:450px;overflow:auto}.manual-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);gap:8px}.manual-row strong{font-size:13px}.manual-row small{font-size:11px;color:#87917e;display:block;margin-top:5px}#checkin-result{margin-top:20px;border-radius:12px;padding:25px;background:#e1f0d4;color:#335c25;font-size:18px}#checkin-result.error{background:#ffebdf;color:#954a2c}#checkin-result strong{display:block;font-size:28px;margin-bottom:8px}dialog{border:1px solid var(--line);border-radius:16px;padding:32px;width:min(520px,92vw);max-height:90vh;color:#234032;box-shadow:0 20px 80px #1e392733}dialog::backdrop{background:#15271d70;backdrop-filter:blur(4px)}.modal-close{position:absolute;top:14px;right:16px;background:none;font-size:25px;color:#8e9885}.modal-close:hover{color:#234032}.modal-qr{text-align:center}.modal-qr img{max-width:250px;width:100%;display:block;margin:12px auto}.modal-qr .actions{justify-content:center}.modal-qr a{display:inline-block;text-decoration:none}.form-error{color:#a4472f;font-size:13px;min-height:18px}.file-note{font-size:12px;color:#7c8c72}.file-note a{color:#456c36}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:15px 22px;background:#264936;color:white;font-size:13px;border-radius:8px;box-shadow:0 8px 30px #15351e22;z-index:20;max-width:90vw}.login-layout{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-story{background:#213e34;color:#e4edd9;padding:50px 60px;display:flex;flex-direction:column;justify-content:space-between}.login-story .brand-symbol{background:#dbe9bb;color:#234032}.login-story h1{font-size:52px;letter-spacing:-2px}.login-story p{color:#b0bea6;font-size:14px}.login-story .eyebrow{font-size:11px;color:#c4d49f}.login-story small{font-size:10px;letter-spacing:2px;color:#a9ba97}.login-box{align-self:center;max-width:450px;padding:40px;margin:auto;width:100%}.login-box h2{font-size:32px;line-height:1.2}.login-box form{margin-top:30px}.login-box .primary{width:100%;margin-top:6px}.login-box>small{display:block;margin-top:35px;font-size:10px}[hidden]{display:none!important}@media(min-width:1500px){.page{padding-top:48px}.event-hero{min-height:240px}.hero-art{right:70px}.dashboard-grid{min-height:320px}}@media(max-width:1100px){.workspace{grid-template-columns:190px 1fr}.sidebar{padding:30px 14px 20px}.page{padding:28px 25px 0}.topbar{padding:0 25px}.page-heading h1{font-size:28px}.stats{gap:10px}.stats article{padding:16px 13px}.dashboard-grid{grid-template-columns:1.3fr 1fr}.hero-art{opacity:.45;right:-25px}.panel{padding:20px}.list-toolbar{flex-wrap:wrap}}@media(max-width:760px){.workspace{display:block}.sidebar{position:static;height:auto;padding:17px 20px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .brand{font-size:23px;padding:0}.brand-symbol{width:30px;height:30px;font-size:25px}.nav-caption,.sidebar-note,.sidebar footer{display:none}.sidebar nav{display:flex;gap:6px;margin-top:18px}.nav-item{padding:9px;justify-content:center;margin:0;font-size:11px}.nav-item span{font-size:15px;width:auto}.topbar{height:49px;padding:0 20px;font-size:10px}.breadcrumb{display:none}.page{padding:25px 18px 0}.page-heading{align-items:start;gap:8px}.page-heading h1{font-size:27px;max-width:250px}.page-heading .muted{font-size:12px}.page-heading .primary{font-size:10px;padding:10px;margin-top:22px}.eyebrow{font-size:9px}.event-hero{padding:24px;min-height:200px}.event-hero h2{font-size:27px}.event-hero>div:first-child{max-width:100%}.hero-art{opacity:.18;right:-50px}.stats{grid-template-columns:1fr 1fr;gap:12px}.stats article{padding:16px}.stats strong{font-size:33px}.dashboard-grid,.scanner-layout{grid-template-columns:1fr}.next-step{min-height:270px}.demo-note{padding:15px}.version-label{display:none}.page-footer{font-size:9px;gap:15px}.page-footer .muted{display:block;margin:5px 0}.panel-heading{align-items:start;flex-wrap:wrap}.list-toolbar input{flex-basis:100%}.list-toolbar select{flex:1}.login-layout{display:block}.login-story{padding:26px;min-height:270px}.login-story>small{display:none}.login-story h1{font-size:33px;margin:28px 0 13px}.login-story p{font-size:11px}.login-story .eyebrow{display:none}.login-box{padding:32px;max-width:480px}.login-box h2{font-size:27px}}

.topbar-actions{display:flex;align-items:center;gap:10px}#logout-mobile{display:none}@media(max-width:760px){#logout-mobile{display:block}}

#scanner-view{display:flex;flex-direction:column}#checkin-result{order:-1;margin:0 0 20px}@media(max-width:760px){.workspace[data-view=scanner] .stats{display:none}.workspace[data-view=scanner] .event-hero{min-height:auto;padding:17px 20px}.workspace[data-view=scanner] .event-tag,.workspace[data-view=scanner] .hero-art{display:none}.workspace[data-view=scanner] .event-hero h2{font-size:22px}.workspace[data-view=scanner] .event-hero p{margin:0}.workspace[data-view=scanner] .page-heading .muted{display:none}}

.invitation-modal{width:min(680px,94vw);padding:28px}.invitation-modal h2{font-size:25px;padding-right:15px}.email-summary{display:grid;grid-template-columns:80px 1fr;gap:10px;margin:20px 0;font-size:12px;line-height:1.5}.email-summary dt{color:#829176}.email-summary dd{margin:0;overflow-wrap:anywhere}#invitation-preview{width:100%;height:550px;display:block;border:1px solid #e5e9df;border-radius:8px;background:#f1f3eb}.invitation-actions{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:20px}.invitation-actions a{text-decoration:none}.invitation-flow{display:flex;justify-content:space-between;gap:15px;margin-bottom:20px;padding:20px;background:#edf2e6;border-radius:10px;font-size:12px;color:#536b46}.invitation-flow b{font-size:10px;color:#829974;margin-right:10px}.next-step .actions{margin-top:auto}@media(max-width:760px){.invitation-modal{padding:24px 16px}.invitation-flow{flex-direction:column;gap:15px}.email-summary{grid-template-columns:65px 1fr;font-size:11px}.invitation-actions .primary,.invitation-actions .secondary{font-size:11px;padding:11px 12px}#invitation-preview{height:470px}}

.mail-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.mail-summary article{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px}.mail-summary article span{display:block;font-size:11px;color:#809176}.mail-summary article strong{display:block;font-size:27px;margin-top:10px;font-weight:500}.mail-summary>p{grid-column:1/-1;font-size:11px;color:#809176;margin:0}.guest-detail-fields{display:grid;grid-template-columns:100px 1fr;gap:13px;font-size:13px;line-height:1.5;margin:25px 0}.guest-detail-fields dt,.mail-history dt{color:#879478}.guest-detail-fields dd,.mail-history dd{margin:0;overflow-wrap:anywhere}.checkin-detail{background:#edf3e7;padding:20px;border-radius:10px;margin:25px 0}.checkin-detail h3{font-size:20px;margin-bottom:10px}.checkin-detail p{margin:0;font-size:12px;color:#617555}.mail-history{margin-bottom:20px}.mail-history article{padding:18px 0;border-bottom:1px solid var(--line)}.mail-history-heading{display:flex;justify-content:space-between;gap:12px;font-size:12px}.mail-history time{font-size:11px;color:#7e8e72}.mail-history p{font-size:13px;margin:12px 0}.mail-history dl{display:grid;grid-template-columns:100px 1fr;gap:8px;font-size:11px;line-height:1.5}.mail-history .mail-history-note{font-size:11px;color:#987143}.list-toolbar{flex-wrap:wrap}.list-toolbar input{min-width:200px}.list-toolbar .secondary{font-size:11px;padding:11px 12px}@media(max-width:760px){.mail-summary{grid-template-columns:1fr 1fr}.guest-detail-fields{grid-template-columns:80px 1fr;font-size:12px}.mail-history-heading{flex-direction:column}.mail-history dl{grid-template-columns:85px 1fr}}

.operator-access{max-width:800px}.operator-access>p{max-width:620px}.operator-access ol{font-size:14px;line-height:2;color:#75836a;padding-left:20px;margin:24px 0}.operator-access .actions a{text-decoration:none;display:inline-block}.operator-login-link{display:block;margin-top:20px;font-size:12px;color:#647d4f;text-decoration:none}.operator-list label{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere}.operator-list input{width:18px;height:18px;margin:0;flex-shrink:0}.operator-access #operator-url{font-size:13px}
