@charset "UTF-8";
:root{color-scheme:light;--ink:#142d45;--navy:#003648;--muted:#607589;--teal:#008d98;--teal-dark:#007580;--aqua:#e9f8f9;--blue:#176fc7;--line:#e2ebf0;--canvas:#f1f6f9;--white:#fff;--radius:14px;--shadow:0 5px 22px #17374a06;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px;color:var(--ink);background:var(--canvas)}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--teal-dark);text-decoration:none}button{color:inherit}img{max-width:100%}h1,h2,h3,p{margin-top:0}h1{font-size:2.65rem;letter-spacing:-1.7px;line-height:1.12;margin-bottom:9px}h2{font-size:1.06rem;line-height:1.4;margin-bottom:16px;letter-spacing:-.25px}h3{font-size:1rem;line-height:1.4}p{line-height:1.6}small{font-size:.8rem}strong{font-weight:650}input,select{width:100%;min-height:46px;border:1px solid #cfdde5;border-radius:8px;padding:10px 12px;color:var(--ink);background:white;outline:none}input::placeholder{color:#7c8fa0}input:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #008d9817}input:disabled{background:#f1f5f7;color:#687a88}input[type=checkbox]{width:19px;height:19px;min-height:19px;accent-color:var(--teal);padding:0;flex-shrink:0}label{font-size:.875rem;font-weight:600;display:block;margin-bottom:8px}fieldset{border:0;padding:0;margin:20px 0}legend{font-size:.875rem;font-weight:650;margin-bottom:12px}button:focus-visible,a:focus-visible{outline:3px solid #2787d4;outline-offset:4px}.icon{width:22px;height:22px;display:inline-block;flex-shrink:0;vertical-align:middle}.muted{color:var(--muted);font-size:.875rem}.eyebrow{font-size:.69rem;font-weight:750;letter-spacing:2px;color:var(--teal-dark);margin-bottom:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;background:var(--navy);color:white;padding:12px;z-index:100}.skip-link:focus{top:10px}.button{min-height:44px;padding:11px 17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:8px;font-weight:650;font-size:.875rem;transition:background .15s,box-shadow .15s;line-height:1.3}.button.primary{background:var(--teal);color:#fff;box-shadow:0 2px 4px #008d9812}.button.primary:hover:not(:disabled){background:var(--teal-dark);box-shadow:0 4px 10px #008d9820}.button.secondary{background:white;border-color:#b9d2dc;color:#195069}.button.secondary:hover:not(:disabled){background:#eff8fa}.button.danger{background:#fff4f4;border-color:#edb1b1;color:#b82235}.button.danger:hover:not(:disabled){background:#ffe7e8}.full{width:100%}.text-button{background:none;border:0;font-size:.875rem;font-weight:600;padding:10px 4px;display:inline-flex;gap:7px;align-items:center;justify-content:center;color:var(--teal-dark);min-height:44px}.text-button:hover{text-decoration:underline}.text-button .icon{width:17px;height:17px}.icon-button{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;border-radius:8px;min-width:40px;min-height:40px;padding:8px;color:var(--muted)}.icon-button:hover{background:#e7f1f5}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow)}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);width:max-content;max-width:100%;flex-shrink:0}.brand img{width:42px;height:42px}.brand strong{display:block;font-size:1.1rem;letter-spacing:-.45px;line-height:1.25}.brand small{display:block;font-size:.6rem;letter-spacing:4px;margin-top:4px;color:var(--muted)}.demo-bar{min-height:34px;background:#e2f0f4;color:#244b60;text-align:center;font-size:.75rem;padding:8px 16px;line-height:1.5;border-bottom:1px solid #d0e5ed}.demo-bar a{margin-left:16px;font-weight:700;text-decoration:underline}.public-shell{max-width:1440px;margin:26px auto;background:#fbfdfe;border-radius:20px;overflow:hidden;box-shadow:0 14px 60px #21425b10;border:1px solid #e4eef3}.public-header{min-height:86px;background:#fff;padding:18px 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.status{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:650;border-radius:20px;background:#e7f6f1;color:#187254;padding:8px 12px;white-space:nowrap}.status>span{width:6px;height:6px;border-radius:50%;background:currentColor}.status.closed{background:#edf1f4;color:#546577}.status.scheduled{background:#fff4d9;color:#8a6510}.hero{padding:32px 42px 30px;display:flex;align-items:center;justify-content:space-between;background:radial-gradient(ellipse at 87% 135%,#77d4d557 0,transparent 60%),linear-gradient(110deg,#f0f7fa 0,#f3fafc 56%,#e4f5f6 100%);border-bottom:1px solid #e4f0f3;min-height:180px;gap:24px}.hero h1{font-size:3rem}.hero p:not(.eyebrow){font-size:1.1rem;margin-bottom:0;color:#395165}.hero-caption{font-size:1.07rem;line-height:1.4;min-width:186px;border-left:1px solid #add9dc;padding-left:28px}.hero-caption span{display:block;width:40px;height:4px;background:var(--teal);border-radius:8px;margin-top:16px}.public-content{padding:26px 42px 34px;min-height:450px}.instruction-banner{display:flex;align-items:center;gap:14px;background:#e8f7fa;color:#25617c;padding:15px 18px;border-radius:9px;font-size:.9rem;line-height:1.5;margin-bottom:20px}.instruction-banner .icon{color:#009b9e;width:27px;height:27px}.phone-card{padding:25px 27px;align-self:start}.phone-card h2{display:flex;align-items:center;gap:12px;margin-bottom:12px}.step{display:inline-flex;align-items:center;justify-content:center;background:var(--teal);color:white;font-size:.9rem;width:31px;height:31px;border-radius:50%;flex-shrink:0;font-weight:700}.phone-card>.muted{margin:0 0 20px 43px}.phone-card form{display:flex;gap:14px;margin-left:43px}.input-icon{position:relative;flex:1;min-width:0}.input-icon>.icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#648296;width:20px;height:20px;pointer-events:none}.input-icon input{padding-left:42px}.field-help{font-size:.75rem;color:var(--muted);line-height:1.6;margin:10px 0 0}.phone-card>.field-help{margin-left:43px}.intro-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px}.intro-note{padding:14px 6px;color:#395b70}.intro-note>.icon{color:var(--teal);width:30px;height:30px;margin-bottom:12px}.intro-note h2{font-size:1.1rem;margin-bottom:8px}.intro-note>p{font-size:.875rem}.mini-rule{display:flex;gap:14px;padding:10px 0;font-size:.85rem;align-items:center;border-bottom:1px solid var(--line)}.mini-rule b{font-size:.7rem;letter-spacing:1px;color:var(--teal)}.voting-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}.voting-main{min-width:0;display:grid;gap:18px}.phone-confirmed{display:flex;align-items:center;gap:12px;padding:16px 20px}.confirm-check{width:34px;height:34px;display:grid;place-items:center;background:#e3f6f2;color:#00846d;border-radius:50%}.phone-confirmed small{display:block;color:#517489;font-size:.75rem;margin-bottom:3px}.phone-confirmed strong{font-size:.92rem}.phone-confirmed .text-button{margin-left:auto}.companies-panel{padding:21px 20px 15px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.section-heading h2{display:flex;align-items:center;gap:11px;margin:0}.selection-count{text-align:right;flex-shrink:0;padding:9px 12px;background:#f3f8fa;border-radius:8px;font-size:.73rem;color:var(--muted)}.selection-count b{color:var(--teal-dark);font-size:.9rem;margin-left:5px}.dots{display:flex;justify-content:flex-end;gap:7px;margin-top:6px}.dots i{width:10px;height:10px;border-radius:50%;background:#d9e6eb}.dots .filled{background:#079ba4}.search{margin-bottom:18px;max-width:500px}.search input{min-height:42px;font-size:.875rem}.company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.company-card{min-height:91px;border:1px solid #e0e8ee;border-radius:9px;display:flex;align-items:center;gap:10px;padding:14px 10px;margin:0;cursor:pointer;position:relative;transition:background .15s,border-color .15s;overflow:hidden;font-weight:400}.company-card:hover:not(.locked){border-color:#70c5cc;background:#f7fcfd}.company-card.selected{background:#e9f8fa;border-color:#6ac9d2;box-shadow:inset 0 0 0 1px #6ac9d215}.company-card:focus-within{outline:3px solid #3098bc;outline-offset:2px}.company-card.locked{cursor:default}.company-card input{position:absolute;opacity:0;left:10px;width:20px;height:20px;min-height:20px;margin:0}.checkmark{width:18px;height:18px;flex-shrink:0;border:1.5px solid #a7b7c4;border-radius:4px;display:grid;place-items:center;background:#fff}.checkmark .icon{width:14px;height:14px;opacity:0}.selected .checkmark{background:var(--teal);border-color:var(--teal);color:white}.selected .checkmark .icon{opacity:1}.company-logo{width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;background:white;border-radius:10px;position:relative;border:1px solid #e8eff3;color:var(--company-color,var(--teal));font-size:.83rem;font-weight:750;letter-spacing:-.4px;overflow:hidden}.company-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:white;padding:3px}.company-copy{min-width:0;display:block}.company-copy strong{font-size:.8rem;line-height:1.35;display:block;overflow-wrap:anywhere}.company-copy small{font-size:.71rem;color:var(--muted);display:block;line-height:1.35;margin-top:4px;overflow-wrap:anywhere}.catalog-foot{font-size:.72rem;color:var(--muted);line-height:1.5;margin:17px 0 0}.selection-panel{padding:13px;position:sticky;top:18px}.summary-heading{display:flex;align-items:center;gap:11px;background:#ecfaf6;border-radius:8px;padding:13px 10px;margin-bottom:12px}.summary-icon{width:36px;height:36px;flex-shrink:0;background:#008f89;color:white;border-radius:50%;display:grid;place-items:center}.summary-heading h2{color:#007a78;font-size:1.05rem;margin:0 0 3px}.summary-heading p{font-size:.73rem;color:#398780;line-height:1.4;margin:0}.selected-list{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:7px}.selected-list li{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid var(--line);border-radius:8px;min-height:63px}.selected-list strong{font-size:.77rem;display:block;line-height:1.35}.selected-list small{font-size:.71rem;display:block;color:var(--muted);margin-top:3px}.selected-list .icon-button{margin-left:auto;min-width:30px;min-height:34px;padding:4px}.selected-list .icon-button .icon{width:17px;height:17px}.selected-list .selection-placeholder{border-style:dashed;background:#fafcfd;font-size:.8rem;color:#6b8391}.placeholder-mark{width:32px;height:32px;border-radius:50%;background:#eef4f6;display:grid;place-items:center;color:#7393a1;font-size:1.1rem}.notice{display:flex;align-items:flex-start;gap:10px;background:#eaf4ff;border:1px solid #dcebfa;color:#225d95;font-size:.8rem;line-height:1.5;border-radius:8px;padding:13px 12px;margin-bottom:16px}.notice .icon{width:19px;height:19px;margin-top:1px}.notice.error{background:#fff1f1;border-color:#f6d5d7;color:#a92c3b}.notice.success{background:#eaf8f0;border-color:#cdebd9;color:#23794e}.selection-panel .notice{font-size:.76rem;margin-bottom:12px}.countdown-wrap{border:1px solid var(--line);border-radius:8px;padding:12px 10px;margin-bottom:12px}.deadline{display:flex;gap:9px;align-items:center;font-size:.78rem}.deadline>.icon{color:#2867ae;width:24px;height:24px}.deadline small{display:block;color:var(--muted);margin-top:4px}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:12px}.time-grid>div{background:#f1f6fc;text-align:center;padding:9px 0 6px;border-radius:6px}.time-grid b{display:block;font-size:1.35rem;line-height:1.15;color:#205f9e;font-variant-numeric:tabular-nums;letter-spacing:-.6px}.time-grid span{font-size:.65rem;color:#59718c}.time-date{font-size:.65rem;color:var(--muted);line-height:1.5;margin:9px 0 0}.save-actions{display:grid;gap:8px}.save-help{font-size:.75rem;color:var(--muted);margin:0;line-height:1.4}.summary-foot{text-align:center;color:var(--muted);font-size:.65rem;margin:12px 0 2px}.public-footer{display:flex;justify-content:space-between;gap:20px;padding:22px 42px;border-top:1px solid var(--line);color:#708390;font-size:.72rem}.empty-grid{padding:35px 10px;text-align:center;color:var(--muted);grid-column:1/-1;font-size:.875rem}.empty-state{padding:45px;text-align:center}.empty-state>.icon{width:40px;height:40px;color:var(--teal);margin-bottom:15px}.empty-state p{color:var(--muted)}.boot{display:flex;min-height:80vh;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px}.loader{width:30px;height:30px;border:3px solid #cce6e9;border-top-color:var(--teal);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{to{transform:rotate(360deg)}}
/* Administration */
.login-header{padding:26px 5%;display:flex;align-items:center;justify-content:space-between;background:white;border-bottom:1px solid var(--line)}.login-layout{max-width:1150px;margin:65px auto;display:grid;grid-template-columns:1fr 430px;gap:80px;align-items:center;padding:0 25px}.login-brand{padding:40px}.login-brand h1{font-size:3.5rem;line-height:1.13;letter-spacing:-2px;margin-bottom:24px}.login-brand em{color:var(--teal);font-style:normal}.login-brand>p:not(.eyebrow){max-width:360px;color:var(--muted)}.login-brand-line{display:block;width:65px;height:5px;background:var(--teal);border-radius:4px}.login-card{padding:32px}.login-card h2{font-size:1.7rem;letter-spacing:-.7px;margin-bottom:8px}.login-icon{display:grid;place-items:center;width:46px;height:46px;background:var(--aqua);color:var(--teal);border-radius:12px;margin-bottom:22px}.login-card form{display:grid;gap:10px}.login-card form label{margin:10px 0 0}.login-card form .button{margin-top:16px}.login-card>.field-help{text-align:center}.admin-layout{display:grid;grid-template-columns:226px minmax(0,1fr);min-height:calc(100vh - 34px)}.sidebar{background:var(--navy);color:#d5eaf1;display:flex;flex-direction:column;padding:31px 18px 26px;position:sticky;top:0;height:100vh;min-height:600px}.sidebar .brand{color:#fff;gap:10px;margin:0 4px}.sidebar .brand strong{font-size:1rem;max-width:130px;line-height:1.3}.sidebar .brand small{color:#83b1bf;font-size:.5rem;letter-spacing:2.7px}.sidebar .brand img{width:39px;height:39px}.sidebar-label{font-size:.6rem;letter-spacing:2px;color:#80a9b9;margin:53px 13px 16px;font-weight:650}.sidebar nav{display:grid;gap:8px}.nav-item{width:100%;display:flex;align-items:center;gap:13px;padding:14px 15px;border-radius:8px;color:#bbd7e1;font-size:.87rem;background:none;border:0;text-align:left}.nav-item:hover{background:#ffffff0a;color:white}.nav-item.active{background:#049ca9;color:white;font-weight:650;box-shadow:0 4px 20px #001a2220}.sidebar-bottom{margin-top:auto;padding:35px 12px 0;position:relative;overflow:hidden}.brand-watermark{display:block;font-size:12rem;line-height:.9;color:#036078;opacity:.5;font-weight:700;letter-spacing:-20px;margin-bottom:45px}.sidebar-bottom strong{font-size:.78rem;display:block;color:#9ec2cf}.sidebar-bottom small{font-size:.55rem;letter-spacing:3px;display:block;margin-top:5px;color:#719caf}.admin-workspace{min-width:0}.admin-header{height:76px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:20px}.admin-breadcrumb{font-size:.8rem;color:var(--muted)}.admin-breadcrumb span{padding:0 11px;color:#b4c7d1}.admin-breadcrumb strong{color:var(--ink)}.admin-profile{display:flex;align-items:center;gap:10px;font-size:.8rem;font-weight:600}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:white;font-size:.85rem}.mobile-menu{display:none}.admin-content{max-width:1560px;padding:28px 28px 25px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:21px}.page-heading h1{font-size:2.3rem}.page-heading p:not(.eyebrow){color:var(--muted);font-size:.9rem;margin-bottom:0}.page-heading .eyebrow{font-size:.61rem;margin-bottom:8px}.header-actions{display:flex;align-items:center;gap:9px}.header-actions .button{font-size:.78rem}.header-actions .icon{width:18px;height:18px}.poll-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px;gap:20px}.poll-toolbar>div{display:flex;align-items:center;gap:12px}.poll-toolbar label{margin:0;font-size:.75rem;color:var(--muted)}.poll-toolbar select{max-width:310px;min-height:38px;padding:7px 32px 7px 12px;font-size:.8rem;font-weight:600}.connection{color:#498173;font-size:.7rem;text-align:right}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.stat{display:flex;align-items:center;gap:13px;padding:21px 17px}.stat>.icon{width:43px;height:48px;padding:10px;background:#eaf8fa;color:#0094a1;border-radius:10px;flex-shrink:0}.stat>div{min-width:0}.stat span{font-size:.73rem;display:block;line-height:1.35;margin-bottom:7px;font-weight:600}.stat strong{display:block;font-size:1.9rem;letter-spacing:-1px;line-height:1.1;font-variant-numeric:tabular-nums}.stat small{font-size:.65rem;color:var(--muted);display:block;margin-top:6px}.stat .stat-date{font-size:1.1rem;letter-spacing:-.5px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:18px;align-items:start}.results-panel{padding:22px 20px 14px;min-height:500px}.results-panel .section-heading{margin-bottom:5px}.section-heading h2>.icon,h2>.icon{color:var(--teal);margin-right:3px}.table-caption{font-size:.75rem;margin:5px 0 20px}.subtle-pill{font-size:.68rem;background:#f0f5f7;color:#5f7a8d;border-radius:20px;padding:6px 9px;white-space:nowrap}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}thead{background:#f1f6f9;color:#516d80}thead th{font-size:.69rem;font-weight:650;padding:11px 8px}tbody td,tbody th{padding:12px 8px;border-bottom:1px solid #edf2f5;font-weight:400}tbody tr:last-child>td,tbody tr:last-child>th{border-bottom:0}.table-company{display:flex;align-items:center;gap:10px;min-width:150px}.table-company .company-logo{width:31px;height:31px;font-size:.7rem;border-radius:8px}.table-company strong{font-size:.78rem;display:block;line-height:1.35}.table-company small{font-size:.65rem;color:var(--muted);display:block;margin-top:3px}.rank{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;font-size:.76rem;font-weight:700;color:#466377;background:#eef3f6;flex-shrink:0}.rank-0{background:#ffdf82;color:#7e5906}.rank-1{background:#e3e9ed;color:#415366}.rank-2{background:#ffc79e;color:#8d4725}.votes-number{font-size:.82rem;font-weight:650}.bar-value{display:flex;align-items:center;gap:9px;min-width:155px}.bar{height:8px;background:#edf1f5;border-radius:3px;display:block;overflow:hidden;flex:1;min-width:60px}.bar i{height:100%;display:block;background:linear-gradient(90deg,#007f99,#09adad);border-radius:3px;max-width:100%;transition:width .25s}.bar-value b{font-size:.7rem;font-weight:500;min-width:38px;text-align:right;color:#526d82}.table-foot{font-size:.67rem;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin:14px 0 0;line-height:1.6}.management-panel{padding:20px 16px}.management-panel h2{display:flex;align-items:center;gap:8px;font-size:1rem}.management-status{padding:13px;background:#edfaf5;border:1px solid #dff2e9;border-radius:8px;margin-bottom:12px}.management-status .status{padding:0;background:none}.management-status p{font-size:.75rem;line-height:1.5;margin:9px 0 0;color:#427262}.management-panel .notice{font-size:.75rem;margin-bottom:17px}.management-panel form{padding:0;margin-bottom:9px}.management-panel label{font-size:.75rem;display:flex;align-items:center;gap:6px}.management-panel label .icon{width:16px;height:16px;color:#28758a}.management-panel input{font-size:.8rem;min-width:0}.management-panel .field-help{font-size:.65rem;margin:7px 0 12px}.management-panel>.button{margin-bottom:9px}.management-panel .button{font-size:.8rem}.management-panel .text-button{font-size:.73rem}.top-panel{padding:21px 20px;min-width:0}.top-panel .section-heading>.muted{font-size:.67rem}.top-panel h2>.icon{color:#e8ad22}.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.podium-card{padding:14px 12px;border:1px solid var(--line);border-radius:9px;position:relative;background:linear-gradient(160deg,#fff,#f9fcfd)}.podium-card>.rank{position:absolute;top:12px;right:12px;width:26px;height:26px}.podium-card>.company-logo{width:37px;height:37px;margin-bottom:13px}.podium-card h3{font-size:.78rem;margin:0 0 8px;min-height:36px}.podium-card p{font-size:.73rem;margin-bottom:7px}.podium-card p span{float:right;font-size:.68rem;color:var(--muted)}.overview-panel{padding:21px 18px}.overview-panel h2{display:flex;align-items:center;gap:8px}.overview-panel dl{margin:0}.overview-panel dl>div{padding:11px 0;border-bottom:1px solid var(--line)}.overview-panel dt{font-size:.69rem;color:var(--muted);margin-bottom:5px}.overview-panel dd{font-size:.8rem;margin:0;font-weight:600}.overview-panel>.muted{font-size:.73rem;margin:15px 0 0}.overview-panel>.text-button{font-size:.7rem}.admin-footer{font-size:.68rem;color:#758994;padding:15px 28px 25px;display:flex;justify-content:space-between}
/* Dialogs, notifications and responsive adaptations */
dialog{width:min(650px,calc(100% - 32px));border:1px solid var(--line);border-radius:16px;padding:26px;color:var(--ink);box-shadow:0 30px 90px #00364833;max-height:90vh;overflow:auto}dialog::backdrop{background:#04253470;backdrop-filter:blur(3px)}.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.modal-heading h2{font-size:1.3rem;margin:0}.modal-heading+.muted{margin-bottom:20px}dialog>p{font-size:.9rem;color:var(--muted)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px}dialog form>label{margin-top:18px}.date-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.company-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:290px;overflow:auto;border:1px solid var(--line);border-radius:9px;padding:8px}.company-picker label{display:flex;align-items:center;gap:8px;padding:9px 6px;margin:0;font-size:.78rem;border-radius:6px;font-weight:500}.company-picker label:hover{background:#eff7f9}.company-picker small{display:block;font-size:.66rem;font-weight:400;color:var(--muted);margin-top:3px}.company-picker .company-logo{width:29px;height:29px;font-size:.65rem}.form-error{color:#b62b40;font-size:.8rem;line-height:1.5;margin:12px 0}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:#123c4d;color:white;border-radius:10px;padding:14px 21px;max-width:calc(100% - 32px);width:max-content;font-size:.875rem;line-height:1.5;box-shadow:0 8px 35px #123c4d35;z-index:100;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}#toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1550px){.admin-content{padding:32px 40px}.admin-header{padding:0 40px}.results-panel{padding:25px}.stat{padding:24px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 330px}.company-card{min-height:90px}}
@media(max-width:1300px){.public-shell{margin:18px}.public-header{padding:20px 28px}.hero{padding:30px 28px}.public-content{padding:24px 28px}.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-card{min-height:80px}.admin-layout{grid-template-columns:200px minmax(0,1fr)}.sidebar{padding:28px 12px}.sidebar .brand{gap:8px}.sidebar .brand strong{font-size:.9rem}.sidebar .brand img{width:34px;height:34px}.admin-content{padding:24px 20px}.admin-header{padding:0 20px}.stats-grid{gap:9px}.stat{padding:15px 12px;gap:8px}.stat>.icon{width:34px;height:40px;padding:7px}.stat span{font-size:.67rem}.stat strong{font-size:1.7rem}.stat .stat-date{font-size:.95rem}.dashboard-grid{grid-template-columns:minmax(0,1fr) 278px;gap:14px}.results-panel{padding:18px 12px}.table-company{min-width:125px}.table-company .company-logo{display:none}.bar-value{min-width:115px}.page-heading{align-items:flex-start}.header-actions{flex-direction:column;align-items:stretch}.header-actions .button{min-height:36px;padding:8px 12px}.podium-card{padding:12px 9px}.podium-card>.rank{right:8px}.top-panel{padding:18px 13px}.top-panel .section-heading>.muted{display:none}}
@media(max-width:1050px){.admin-layout{grid-template-columns:178px minmax(0,1fr)}.sidebar .brand{align-items:flex-start}.sidebar .brand img{width:30px;height:30px}.sidebar .brand strong{font-size:.8rem}.sidebar .brand small{font-size:.45rem;letter-spacing:2px}.nav-item{padding:13px 10px;gap:9px;font-size:.8rem}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:17px}.stat>.icon{width:40px;height:44px;padding:9px}.stat span{font-size:.75rem}.stat strong{font-size:1.8rem}.stat .stat-date{font-size:1.1rem}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.management-panel{grid-row:2}.top-panel{grid-row:3}.overview-panel{grid-row:4}.results-panel{min-height:0}.table-company .company-logo{display:grid}.bar-value{min-width:140px}.management-panel form{max-width:450px}.management-panel>.button{max-width:450px;display:flex}.management-panel .text-button{justify-content:flex-start}.login-layout{gap:30px;grid-template-columns:1fr 390px}.login-brand{padding:20px}.login-brand h1{font-size:2.9rem}}
@media(max-width:800px){.public-shell{margin:0;border:0;border-radius:0;box-shadow:none;min-height:100vh}.public-header{padding:18px 22px;min-height:78px}.brand strong{font-size:.94rem}.brand small{font-size:.52rem;letter-spacing:3px}.brand img{width:36px;height:36px}.hero{padding:26px 22px;min-height:155px}.hero h1{font-size:2.5rem}.hero-caption{display:none}.hero p:not(.eyebrow){font-size:1rem}.public-content{padding:20px 22px}.intro-layout{grid-template-columns:minmax(0,1fr)}.intro-note{padding:12px 8px;max-width:500px}.voting-layout{grid-template-columns:minmax(0,1fr)}.company-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.selection-panel{position:static;max-width:none;padding:18px}.summary-heading{padding:15px}.selected-list{grid-template-columns:repeat(3,minmax(0,1fr))}.selected-list li{gap:7px;padding:9px 6px}.selected-list .company-logo{display:none}.selected-list strong{font-size:.75rem}.countdown-wrap{max-width:380px;margin:16px auto}.save-actions .button{min-height:48px}.selection-panel .notice{font-size:.85rem}.summary-foot{font-size:.75rem}.save-help{font-size:.8rem}.public-footer{padding:24px 22px}.phone-card{padding:22px}.phone-card form{margin-left:0}.phone-card>.muted,.phone-card>.field-help{margin-left:0}.admin-layout{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;left:-250px;top:0;bottom:0;width:226px;z-index:20;transition:left .2s;height:100dvh;min-height:0;box-shadow:8px 0 40px #002b4430}.menu-open .sidebar{left:0}.menu-open .admin-workspace{margin-left:0}.mobile-menu{display:inline-flex;z-index:21}.menu-open .mobile-menu{position:fixed;left:234px;top:10px;background:white;box-shadow:0 2px 10px #1234}.admin-header{height:68px;padding:0 18px;gap:9px}.admin-breadcrumb{margin-right:auto}.admin-profile>span:not(.avatar){display:none}.admin-content{padding:24px 18px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat{padding:16px 12px}.stat>.icon{display:none}.admin-header .icon-button{min-width:36px}.login-layout{grid-template-columns:1fr;max-width:460px;margin:38px auto;padding:0 18px}.login-brand{display:none}.login-header{padding:20px}.login-header .text-button{font-size:.75rem}.header-actions{flex-direction:row}.page-heading{align-items:center}.dashboard-grid{gap:16px}.table-company{min-width:180px}.table-company strong{font-size:.85rem}.table-company small{font-size:.73rem}.table-caption{font-size:.8rem}.table-foot{font-size:.75rem}.management-panel{padding:22px}.management-panel .notice,.management-status p{font-size:.85rem}.management-panel label{font-size:.85rem}.management-panel>.button,.management-panel form{max-width:none}.management-panel input{font-size:.9rem}.management-panel .button{font-size:.875rem}.top-panel{padding:22px}.podium-card{padding:16px}.podium-card h3{font-size:.9rem}.overview-panel{padding:22px}}
@media(max-width:560px){.demo-bar{font-size:.68rem;padding:7px 10px}.demo-bar a{display:inline-block;margin-left:8px}.public-header{padding:17px 18px;gap:10px;flex-wrap:wrap}.public-header .status{font-size:.64rem;padding:6px 8px}.public-header .brand{gap:9px}.public-header .brand strong{font-size:.86rem}.public-header .brand img{width:31px;height:31px}.public-header .brand small{font-size:.45rem;letter-spacing:2.5px}.hero{padding:24px 18px;min-height:142px}.hero h1{font-size:2.3rem;letter-spacing:-1.2px}.hero .eyebrow{font-size:.59rem;letter-spacing:1.6px}.hero p:not(.eyebrow){font-size:.9rem}.public-content{padding:17px 14px 22px;min-height:0}.instruction-banner{font-size:.82rem;padding:13px 12px;gap:10px;margin-bottom:15px;align-items:flex-start}.instruction-banner .icon{width:23px;height:23px}.phone-card{padding:20px 16px}.phone-card h2{font-size:1rem;gap:10px}.phone-card>.muted{font-size:.85rem;margin-bottom:16px}.phone-card form{flex-direction:column;gap:12px}.phone-card form .button{min-height:48px}.phone-card input{font-size:1rem}.intro-note{padding:16px 9px}.intro-note>p{font-size:.9rem}.mini-rule{font-size:.85rem}.phone-confirmed{padding:12px 14px}.phone-confirmed .text-button{font-size:.8rem}.companies-panel{padding:18px 13px 14px}.section-heading{gap:8px}.companies-panel .section-heading{align-items:center}.companies-panel h2{font-size:.91rem;gap:9px}.step{width:27px;height:27px;font-size:.8rem}.selection-count{padding:7px;font-size:.64rem}.selection-count span{display:block}.selection-count b{font-size:.8rem;display:block;margin:2px 0 0}.dots{justify-content:center;gap:4px;margin-top:5px}.dots i{width:7px;height:7px}.company-grid{grid-template-columns:1fr;gap:9px}.company-card{min-height:73px;padding:12px;gap:13px}.company-copy strong{font-size:.92rem}.company-copy small{font-size:.8rem;margin-top:3px}.company-logo{width:39px;height:39px;font-size:.9rem}.checkmark{width:20px;height:20px}.search input{font-size:1rem;min-height:45px}.catalog-foot{font-size:.73rem;line-height:1.6}.selection-panel{padding:14px}.selected-list{grid-template-columns:1fr}.selected-list li{padding:10px;min-height:62px;gap:10px}.selected-list .company-logo{display:grid;width:34px;height:34px;font-size:.75rem}.selected-list strong{font-size:.83rem}.selected-list small{font-size:.75rem}.selected-list .icon-button{min-width:44px;min-height:40px}.summary-heading h2{font-size:1.1rem}.summary-heading p{font-size:.8rem}.time-grid b{font-size:1.7rem}.time-grid span{font-size:.75rem}.time-date{font-size:.73rem}.deadline{font-size:.85rem}.public-footer{font-size:.7rem;padding:22px 18px;flex-direction:column;gap:7px}.notice{font-size:.85rem}.admin-content{padding:22px 13px}.admin-header{padding:0 12px}.admin-breadcrumb{font-size:.74rem}.admin-breadcrumb span{padding:0 6px}.page-heading{display:block;margin-bottom:19px}.page-heading h1{font-size:2.2rem}.page-heading p:not(.eyebrow){font-size:.86rem;line-height:1.5}.header-actions{margin-top:16px;display:flex}.header-actions .button{font-size:.77rem;min-height:42px}.header-actions .button:last-child{flex:1}.poll-toolbar{align-items:flex-start;flex-direction:column;gap:9px}.poll-toolbar>div{width:100%;gap:10px}.poll-toolbar select{max-width:none;flex:1;width:0;font-size:.86rem;min-height:42px}.poll-toolbar label{font-size:.8rem}.connection{font-size:.72rem}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.stat{padding:16px 10px;gap:8px}.stat>.icon{display:block;width:31px;height:37px;padding:6px}.stat span{font-size:.68rem;font-weight:600;line-height:1.4}.stat strong{font-size:1.65rem}.stat small{font-size:.6rem}.stat .stat-date{font-size:.88rem;line-height:1.4}.results-panel{padding:18px 12px 13px}.results-panel h2{font-size:1rem}.results-panel .subtle-pill{font-size:.63rem}.table-caption{font-size:.73rem;margin-bottom:13px}.table-company .company-logo{display:none}.table-company{min-width:0}.table-company strong{font-size:.76rem;max-width:120px;overflow-wrap:anywhere}.table-company small{display:none}thead th{font-size:.64rem;padding:9px 5px}tbody td,tbody th{padding:13px 5px}.votes-number{font-size:.78rem}.bar-value{min-width:0;flex-direction:column;gap:5px;align-items:stretch}.bar-value .bar{min-width:55px;flex:auto;height:6px}.bar-value b{font-size:.67rem}.rank{width:23px;height:23px;font-size:.7rem}.table-foot{font-size:.69rem}.top-panel{padding:18px 13px}.podium{grid-template-columns:1fr}.podium-card{display:grid;grid-template-columns:40px 1fr;gap:4px 12px;padding:15px}.podium-card>.company-logo{grid-row:1/3;margin:0;align-self:center}.podium-card h3{min-height:0;font-size:.86rem;margin:0;padding-right:30px}.podium-card p{margin:2px 30px 5px 0;font-size:.78rem}.podium-card>.bar{grid-column:2}.podium-card>.rank{top:16px;right:14px}.top-panel .field-help{font-size:.72rem}.overview-panel h2{font-size:1rem}.overview-panel dt{font-size:.75rem}.overview-panel dd{font-size:.85rem}.overview-panel>.muted{font-size:.8rem}.admin-footer{font-size:.65rem;padding:15px 16px 22px;flex-direction:column;gap:5px}.login-header{padding:18px 13px;flex-wrap:wrap;gap:12px}.login-card{padding:26px 22px}.company-picker{grid-template-columns:1fr;max-height:260px}.company-picker label{font-size:.85rem}.date-fields{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap}dialog{padding:22px 18px}dialog .modal-heading h2{font-size:1.15rem}.modal-actions .button{flex:1}#toast{bottom:16px;font-size:.82rem}.empty-state{padding:32px 20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
