:root{--green: #186b4d;--green-dark: #10563d;--green-soft: #eaf4ee;--navy: #142d3e;--ink: #263e4c;--muted: #607480;--line: #dfe7e8;--canvas: #f5f7f8;--white: #ffffff;--blue: #49728e;--blue-soft: #edf3f7;--amber: #94620c;--amber-soft: #fff5de;--red: #af3e3e;--red-soft: #fceded;--success-text: #225f43;--success-border: #bddac9;--amber-border: #ead59e;--error-border: #efc7c7;--chart-1: #0f7a52;--chart-2: #c07a10;--chart-3: #2f6fd6;--chart-track: #e7edee;--shadow: 0 10px 30px rgba(20, 45, 62, .08);--card-shadow: 0 2px 5px rgba(20, 45, 62, .04);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 14px;--font-sans: "Inter", Arial, sans-serif;--sidebar-w: 224px;--topbar-h: 76px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--font-sans);font-size:13px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p{margin:0}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit}:focus-visible{outline:3px solid rgba(24,107,77,.2);outline-offset:2px}.h1{font-size:30px;font-weight:600;letter-spacing:-.025em;line-height:1.25;color:var(--navy)}.h1-hero{font-size:clamp(38px,4.2vw,64px);font-weight:600;letter-spacing:-.045em;line-height:1.03;color:var(--navy)}.h2{font-size:21px;font-weight:600;letter-spacing:-.015em;color:var(--navy)}.h3{font-size:16px;font-weight:600;color:var(--navy)}.card-title{font-size:18px;font-weight:600;color:var(--navy)}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--green)}.muted{color:var(--muted)}.lead{font-size:15px;line-height:1.6;color:var(--muted)}.small{font-size:11px;line-height:1.5;color:var(--muted)}.tiny{font-size:10px;line-height:1.5;color:var(--muted)}.num{font-variant-numeric:tabular-nums}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:var(--radius-sm);border:1px solid transparent;font-size:13px;font-weight:600;cursor:pointer;background:var(--white);color:var(--navy);transition:background .16s ease,border-color .16s ease,color .16s ease;white-space:nowrap}.button:active{transform:translateY(1px)}.button svg{width:16px;height:16px;flex:none}.button--primary{background:var(--green);border-color:var(--green);color:#fff}.button--primary:hover{background:var(--green-dark);border-color:var(--green-dark)}.button--secondary{background:var(--white);border-color:var(--line);color:var(--navy)}.button--secondary:hover{background:var(--canvas)}.button--ghost{background:transparent;border-color:transparent;color:var(--muted)}.button--ghost:hover{background:var(--canvas);color:var(--navy)}.button--danger{background:var(--red);border-color:var(--red);color:#fff}.button--danger:hover{background:#973232;border-color:#973232}.button:disabled,.button[aria-disabled=true]{background:var(--canvas);border-color:var(--line);color:var(--muted);cursor:not-allowed}.button--sm{min-height:34px;padding:0 11px;font-size:10px;gap:6px}.button--sm svg{width:13px;height:13px}.button--block{width:100%}.button-row{display:flex;gap:8px;flex-wrap:wrap}.control{display:flex;flex-direction:column;gap:6px}.control>label{font-size:11px;font-weight:600;color:var(--muted)}.control input,.control select,.control textarea{width:100%;min-height:46px;padding:11px 13px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);color:var(--navy);font-size:13px;transition:border-color .16s ease}.control textarea{min-height:92px;resize:vertical;line-height:1.55}.control input:focus,.control select:focus,.control textarea:focus{border-color:var(--green);outline:none;box-shadow:0 0 0 3px #186b4d1f}.control input::placeholder,.control textarea::placeholder{color:#93a4ad}.control input[readonly],.control input:disabled,.control select:disabled{background:var(--canvas);color:var(--muted);cursor:not-allowed}.control--invalid input,.control--invalid select,.control--invalid textarea{border-color:var(--red)}.control-error{font-size:11px;color:var(--red)}.control-hint{font-size:11px;color:var(--muted)}.input-wrap{position:relative;display:flex}.input-wrap input{padding-right:44px}.input-suffix{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--muted);pointer-events:none}.check{display:flex;align-items:flex-start;gap:9px;font-size:12px;color:var(--ink);cursor:pointer}.check input{width:17px;height:17px;min-height:0;padding:0;accent-color:var(--green);flex:none;margin-top:1px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.control--wide{grid-column:1 / -1}.public-topbar{position:sticky;top:0;z-index:20;height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 32px;background:var(--white);border-bottom:1px solid var(--line)}.brand{font-size:22px;font-weight:700;letter-spacing:-.03em;color:var(--navy);display:inline-flex;align-items:center;gap:9px}.brand:hover{text-decoration:none}.brand-mark{width:26px;height:26px;border-radius:8px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:700}.topbar-actions{display:flex;align-items:center;gap:10px}.page{max-width:1680px;margin:0 auto;padding:32px}.page--wide{max-width:none}.page--narrow{max-width:800px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px;flex-wrap:wrap}.page-head-text{display:flex;flex-direction:column;gap:7px;max-width:760px}.page-head p{color:var(--muted)}.reveal{animation:reveal .28s ease both}@keyframes reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.shell{min-height:100%}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);background:var(--white);border-right:1px solid var(--line);padding:28px 24px;display:flex;flex-direction:column;gap:22px;z-index:30;overflow-y:auto}.sidebar-nav{display:flex;flex-direction:column;gap:18px}.nav-group{display:flex;flex-direction:column;gap:4px}.nav-group>.eyebrow{padding:0 10px;margin-bottom:3px;color:var(--muted)}.nav-item{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:var(--radius-sm);font-size:13px;color:var(--ink);cursor:pointer;border:none;background:transparent;width:100%;text-align:left;transition:background .16s ease,color .16s ease}.nav-item:hover{background:var(--canvas);text-decoration:none}.nav-item svg{width:16px;height:16px;flex:none;color:var(--muted)}.nav-item.is-active{background:var(--green-soft);color:var(--green);font-weight:600}.nav-item.is-active svg{color:var(--green)}.nav-dot{width:8px;height:8px;border-radius:50%;background:var(--green);margin-left:auto}.sidebar-meta{margin-top:auto;border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:8px}.role-chip{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;padding:6px 10px;border-radius:999px;background:var(--green-soft);color:var(--success-text)}.role-chip--manager{background:var(--blue-soft);color:var(--blue)}.role-chip--gc{background:var(--amber-soft);color:var(--amber)}.main{margin-left:var(--sidebar-w);min-height:100%}.shell.sidebar-hidden .sidebar{transform:translate(-100%);pointer-events:none;visibility:hidden;transition:transform .22s ease,visibility .22s}.shell.sidebar-hidden .main{margin-left:0}.sidebar-toggle{display:none}@media (min-width: 761px){.sidebar-toggle{display:grid}}.topbar{position:sticky;top:0;z-index:20;height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 32px;background:var(--white);border-bottom:1px solid var(--line)}.crumb{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px;min-width:0}.crumb span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crumb strong{color:var(--navy);font-weight:600}.topbar-right{display:flex;align-items:center;gap:10px}.icon-button{position:relative;width:38px;height:38px;border-radius:999px;border:1px solid var(--line);background:var(--white);display:grid;place-items:center;cursor:pointer;color:var(--navy);transition:background .16s ease}.icon-button:hover{background:var(--canvas)}.icon-button svg{width:18px;height:18px}.icon-dot{position:absolute;top:6px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--red);border:2px solid var(--white)}.profile-trigger{display:flex;align-items:center;gap:9px;padding:5px 11px 5px 5px;border-radius:999px;border:1px solid var(--line);background:var(--white);cursor:pointer;font-size:12px;color:var(--navy)}.profile-trigger:hover{background:var(--canvas)}.tz-trigger{display:flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--white);cursor:pointer;font-size:12px;color:var(--navy)}.tz-trigger:hover{background:var(--canvas)}.tz-trigger .tz-country{color:var(--ink-soft);font-size:11px}.avatar{width:30px;height:30px;border-radius:50%;background:var(--green-soft);color:var(--success-text);display:grid;place-items:center;font-size:11px;font-weight:700;flex:none}.avatar--manager{background:var(--blue-soft);color:var(--blue)}.avatar--gc{background:var(--amber-soft);color:var(--amber)}.menu-toggle{display:none}.popover{position:absolute;right:0;top:calc(100% + 12px);width:320px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:14px;z-index:40;max-height:420px;overflow-y:auto}.popover-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px}.popover-item{display:block;width:100%;text-align:left;border:none;background:transparent;padding:10px 8px;border-radius:var(--radius-sm);cursor:pointer}.popover-item:hover{background:var(--canvas)}.popover-item strong{display:block;font-size:12px;color:var(--navy);font-weight:600}.popover-item span{font-size:11px;color:var(--muted)}.popover-empty{font-size:11px;color:var(--muted);text-align:center;padding:22px 8px}.popover-sep{border-top:1px solid var(--line);margin:6px 0}.relative{position:relative}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#142d3e66;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:25;animation:reveal .22s ease both}.panel,.metric-card,.estimate-card,.label-card,.table-wrap{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--card-shadow)}.panel{padding:24px}.panel--lg{padding:28px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;flex-wrap:wrap}.panel-head p{font-size:12px;color:var(--muted)}.stack{display:flex;flex-direction:column;gap:20px}.stack--sm{gap:12px}.stack--lg{gap:26px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row--between{justify-content:space-between}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metrics-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{padding:20px;min-height:152px;display:flex;flex-direction:column;gap:12px}.metric-icon{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;color:var(--green);background:var(--green-soft);box-shadow:0 0 0 6px var(--green-soft)}.metric-icon svg{width:17px;height:17px}.metric-icon--amber{color:var(--amber);background:var(--amber-soft);box-shadow:0 0 0 6px var(--amber-soft)}.metric-icon--blue{color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 6px var(--blue-soft)}.metric-icon--red{color:var(--red);background:var(--red-soft);box-shadow:0 0 0 6px var(--red-soft)}.metric-value{font-size:25px;font-weight:600;letter-spacing:-.02em;color:var(--navy);line-height:1.15;font-variant-numeric:tabular-nums}.metric-value small{font-size:13px;font-weight:600;color:var(--muted);margin-left:4px}.metric-label{font-size:12px;font-weight:600;color:var(--navy)}.metric-foot{font-size:10px;color:var(--muted);margin-top:auto}.badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:600;padding:6px 9px;border-radius:999px;white-space:nowrap;line-height:1.2}.badge--success{background:var(--green-soft);color:var(--success-text)}.badge--info{background:var(--blue-soft);color:var(--blue)}.badge--warning{background:var(--amber-soft);color:var(--amber)}.badge--danger{background:var(--red-soft);color:var(--red)}.badge--neutral{background:var(--canvas);color:var(--muted)}.badge svg{width:12px;height:12px}.notice,.simulation-banner,.analytics-note,.safety-notice,.policy-box,.success-strip,.confirmation-panel,.scan-error,.auth-error{border-radius:var(--radius-sm);padding:14px 16px;font-size:12px;line-height:1.55}.notice,.simulation-banner,.analytics-note{background:var(--blue-soft);color:var(--blue)}.notice>strong,.simulation-banner>strong,.analytics-note>strong{display:block;font-weight:600;margin-bottom:3px}.safety-notice{background:var(--amber-soft);color:var(--amber)}.confirmation-panel{background:var(--amber-soft);color:var(--amber);border:1px solid var(--amber-border)}.policy-box{background:var(--red-soft);color:var(--red)}.policy-box+.timeline{margin-top:14px}.timeline{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;font-size:12.5px;line-height:1.55;color:var(--muted)}.timeline strong{color:var(--ink);font-weight:600}.timeline em{font-style:normal;font-weight:600;color:var(--blue)}.success-strip{background:var(--green-soft);border:1px solid var(--success-border);color:var(--success-text)}.scan-error,.auth-error{background:var(--red-soft);color:var(--red)}.scan-error{border:1px solid var(--error-border)}.notice-icon{display:inline-flex;vertical-align:-3px;margin-right:7px}.notice-icon svg{width:14px;height:14px}.empty-state{border:1px dashed var(--line);border-radius:var(--radius-md);min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:26px;text-align:center;color:var(--muted);font-size:12px}.empty-state svg{width:24px;height:24px;opacity:.55}.empty-state strong{font-size:13px;color:var(--navy)}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:var(--navy);color:#fff;font-size:12px;padding:12px 18px;border-radius:9px;box-shadow:var(--shadow);z-index:80;animation:reveal .22s ease both;max-width:calc(100vw - 32px)}.toolbar{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar input,.toolbar select{min-height:40px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--canvas);color:var(--navy);font-size:13px}.toolbar input:focus,.toolbar select:focus{border-color:var(--green);outline:none;background:var(--white)}.toolbar .grow{flex:1;min-width:190px}.search-box{display:flex;align-items:center;gap:8px;background:var(--canvas);border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 12px;min-height:40px;min-width:220px}.search-box svg{width:15px;height:15px;color:var(--muted);flex:none}.search-box input{border:none;background:transparent;outline:none;font-size:13px;color:var(--navy);min-height:38px;width:100%;padding:0}.search-box:focus-within{border-color:var(--green);background:var(--white)}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.table-wrap{overflow-x:auto}.table-wrap--scroll{overflow:auto;scrollbar-gutter:stable}.table-wrap--scroll .data-table thead th{position:sticky;top:0;z-index:2;background:var(--canvas);box-shadow:0 1px 0 var(--line)}.data-table{width:100%;min-width:780px;border-collapse:collapse}.data-table thead th{background:var(--canvas);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-align:left;padding:13px 16px;white-space:nowrap}.data-table tbody td{font-size:12px;color:var(--ink);padding:15px 16px;border-top:1px solid var(--line);vertical-align:middle}.data-table tbody tr:hover td{background:#fafcfc}.data-table .num-col{font-variant-numeric:tabular-nums;white-space:nowrap}.table-empty td{padding:34px 16px!important;text-align:center;color:var(--muted);font-size:12px}.data-table--dense thead th,.data-table--dense tbody td{padding:9px 7px}.data-table--dense thead th{font-size:8.5px}.data-table--dense .cell-sub{font-size:9px;margin-top:1px;white-space:normal}.data-table--dense thead th{white-space:normal;min-width:0}.data-table--dense .num-col{white-space:normal;min-width:88px}.data-table--dense .photo-thumb{width:30px!important;height:30px!important}.data-table--dense .table-actions{gap:4px;flex-wrap:wrap;justify-content:flex-start}.data-table--dense .table-actions .button{min-height:0;padding:4px 7px;font-size:9.5px;gap:4px}.data-table--dense .badge{padding:2px 5px;font-size:9px;letter-spacing:0}.th-sort{display:inline-flex;align-items:center;gap:4px;background:none;border:none;padding:0;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.th-sort:hover{color:var(--navy)}.th-sort .th-sort-arrow{width:10px;height:10px;opacity:.35;transition:opacity .12s ease,transform .12s ease;flex:none}.th-sort:hover .th-sort-arrow,.th-sort.is-active .th-sort-arrow{opacity:1}.th-sort.is-active{color:var(--navy)}.cell-strong{font-weight:600;color:var(--navy)}.cell-sub{display:block;font-size:10px;color:var(--muted);margin-top:2px}.table-actions{display:flex;gap:6px;justify-content:flex-end}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.form-layout{display:grid;grid-template-columns:1.55fr .65fr;gap:20px;align-items:start}.review-layout,.label-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;align-items:start}.dashboard-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:20px;align-items:start}.donation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.alert-grid,.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.mini-chart{display:flex;flex-direction:column;gap:14px}.chart-plot{display:flex;align-items:flex-end;gap:9px;height:175px;border-bottom:1px solid var(--line);padding-bottom:2px}.chart-plot--sm{height:120px}.bar{flex:1;min-width:6px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--chart-1) 0%,#75ab91 100%);position:relative;cursor:default;transition:filter .16s ease}.bar:hover{filter:brightness(1.08)}.bar-label{position:absolute;left:50%;transform:translate(-50%);bottom:calc(100% + 6px);font-size:10px;font-weight:600;color:var(--navy);white-space:nowrap;opacity:0;transition:opacity .16s ease;pointer-events:none}.bar:hover .bar-label{opacity:1}.chart-axis{display:flex;gap:9px}.chart-axis span{flex:1;min-width:6px;font-size:9px;color:var(--muted);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:10px;color:var(--muted)}.legend-dot{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px;vertical-align:-1px}.bar-stack{flex:1;min-width:6px;display:flex;flex-direction:column-reverse;gap:2px;height:100%;justify-content:flex-start;position:relative}.bar-seg{border-radius:3px;width:100%}.bar-seg:first-child{border-radius:0 0 3px 3px}.bar-seg:last-child{border-radius:4px 4px 0 0}.summary-list{display:flex;flex-direction:column}.summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line)}.summary-row:last-child{border-bottom:none}.summary-row dt{font-size:12px;color:var(--muted);flex:none}.summary-row dd{margin:0;font-size:13px;font-weight:600;color:var(--navy);text-align:right;font-variant-numeric:tabular-nums}.summary-row dd .small{font-weight:400}.countdown{display:flex;gap:8px}.countdown-box{background:var(--canvas);border-radius:var(--radius-sm);padding:10px 12px;min-width:62px;text-align:center}.countdown-box strong{display:block;font-size:22px;font-weight:600;color:var(--navy);font-variant-numeric:tabular-nums;line-height:1.2}.countdown-box span{font-size:8px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.expiration-card{background:var(--white);border:1px solid var(--line);border-top:4px solid var(--amber);border-radius:var(--radius-md);box-shadow:var(--card-shadow);padding:20px;display:flex;flex-direction:column;gap:14px}.expiration-card--expired{border-top-color:var(--red)}.estimate-card{padding:26px;display:flex;flex-direction:column;gap:8px}.estimate-value{font-size:28px;font-weight:600;letter-spacing:-.02em;color:var(--navy);font-variant-numeric:tabular-nums}.estimate-sub{font-size:12px;color:var(--muted)}.label-card{max-width:510px;padding:28px;border-top:5px solid var(--green)}.label-name{font-size:24px;font-weight:600;color:var(--navy);letter-spacing:-.02em;line-height:1.2}.label-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:11px;color:var(--muted)}.barcode{background:var(--white);padding:6px 0 0}.barcode-svg{display:block;width:100%;max-width:360px;height:78px;margin:0 auto}.barcode-id{margin-top:8px;font-size:11px;letter-spacing:.24em;color:var(--navy);text-align:center;font-weight:600}.contribution-message{font-size:12px;color:var(--ink);line-height:1.6}.donation-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--card-shadow);padding:22px;display:flex;flex-direction:column;gap:14px}.donation-mass{font-size:22px;font-weight:600;color:var(--green);font-variant-numeric:tabular-nums}.donation-card .card-foot{margin-top:auto;display:flex;flex-direction:column;gap:10px}.activity-list{display:flex;flex-direction:column}.activity-item{display:flex;gap:11px;padding:12px 0;border-bottom:1px solid var(--line)}.activity-item:last-child{border-bottom:none}.activity-dot{width:8px;height:8px;border-radius:50%;background:var(--green);margin-top:6px;flex:none}.activity-dot--blue{background:var(--blue)}.activity-dot--amber{background:var(--amber)}.activity-title{font-size:11px;color:var(--navy);font-weight:600}.activity-time{font-size:9px;color:var(--muted)}.checklist{display:flex;flex-direction:column;gap:12px}.checklist-item{display:flex;align-items:flex-start;gap:11px;font-size:12px;color:var(--ink)}.checklist-mark{width:26px;height:26px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center;flex:none}.checklist-mark svg{width:14px;height:14px}.file-status{display:flex;align-items:center;gap:9px;background:var(--green-soft);color:var(--success-text);border-radius:var(--radius-sm);padding:11px 13px;font-size:12px;font-weight:600}.file-status svg{width:18px;height:18px;flex:none}.scan-controls{display:flex;gap:9px;align-items:flex-end;flex-wrap:wrap}.scan-controls .control{flex:1;min-width:220px}.scan-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}@media (max-width: 900px){.scan-layout{grid-template-columns:minmax(0,1fr)}}.camera-frame{position:relative;background:var(--navy);border-radius:var(--radius-sm);overflow:hidden;min-height:180px;display:flex;align-items:center;justify-content:center}.camera-frame--live{min-height:0}.camera-video{display:none;width:100%;max-height:320px;object-fit:cover;background:var(--navy)}.camera-frame--live .camera-video{display:block}.camera-frame--live .camera-placeholder{display:none}.camera-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;padding:26px 18px;color:#cfe0ea;font-size:12px;text-align:center}.camera-capture{border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px;background:var(--white)}.camera-status{color:var(--muted);font-size:11px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#142d3e66;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:60;display:grid;place-items:center;padding:20px;animation:reveal .2s ease both}.modal{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:32px;width:100%;max-width:440px;max-height:88vh;overflow-y:auto;display:flex;flex-direction:column;gap:18px}.modal--wide{max-width:620px}.modal-actions{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap}.auth-layout{min-height:100vh;display:grid;grid-template-columns:.9fr 1.1fr}.auth-visual{background:radial-gradient(120% 90% at 85% 8%,#ffffff21,#fff0 62%),linear-gradient(160deg,#0f573e,#123b35);color:#fff;padding:46px 56px;display:flex;flex-direction:column;gap:26px}.auth-visual .brand{color:#fff;font-size:24px}.auth-kicker{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#b8ddca;font-weight:600}.auth-visual h1{font-size:clamp(34px,3.4vw,52px);font-weight:600;letter-spacing:-.04em;line-height:1.06}.auth-visual p{font-size:15px;line-height:1.65;color:#c9ddd5;max-width:46ch}.auth-art{margin-top:auto;display:flex;flex-direction:column;gap:16px}.leaf{width:96px;height:96px;border-radius:62% 8%;background:linear-gradient(135deg,#b8ddca,#80bda0);transform:rotate(-14deg);opacity:.9}.leaf--sm{width:54px;height:54px;opacity:.7}.auth-form-side{background:var(--canvas);display:flex;align-items:center;justify-content:center;padding:44px 24px}.auth-card{width:100%;max-width:500px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);padding:32px;display:flex;flex-direction:column;gap:18px}.auth-card h2{font-size:30px;font-weight:600;letter-spacing:-.03em;color:var(--navy);line-height:1.2}.auth-card>p{font-size:13px;color:var(--muted)}.auth-link-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;flex-wrap:wrap}.auth-link{font-size:11px;font-weight:600;color:var(--green)}.role-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.role-option{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:12px 10px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:5px;transition:background .16s ease,border-color .16s ease}.role-option:hover{background:var(--canvas)}.role-option.is-active{background:var(--green-soft);border-color:var(--green);box-shadow:0 0 0 2px #186b4d14}.role-option strong{font-size:12px;color:var(--navy)}.role-option span{font-size:10px;color:var(--muted);line-height:1.4}.success-panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);padding:40px 32px;max-width:520px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.success-panel h1{font-size:27px;font-weight:600;color:var(--navy);letter-spacing:-.02em}.success-icon{width:62px;height:62px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center}.success-icon svg{width:28px;height:28px}.success-icon--danger{background:var(--red-soft);color:var(--red)}.success-icon--neutral{background:var(--canvas);color:var(--muted)}.hero{padding:76px 0 56px;display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}.hero-copy{display:flex;flex-direction:column;gap:20px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.feature-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--card-shadow);padding:24px;display:flex;flex-direction:column;gap:11px}.feature-card p{font-size:12px;color:var(--muted);line-height:1.6}.hero-art{background:linear-gradient(155deg,#0f573e,#123b35);border-radius:20px;padding:34px;color:#fff;min-height:330px;display:flex;flex-direction:column;gap:18px;position:relative;overflow:hidden}.hero-art:after{content:"";position:absolute;inset:auto -40px -60px auto;width:220px;height:220px;background:radial-gradient(circle,#ffffff29,#fff0 70%)}.hero-stat{background:#ffffff1a;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-md);padding:16px}.hero-stat strong{display:block;font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}.hero-stat span{font-size:11px;color:#c9ddd5}.section{padding:46px 0}.section-head{display:flex;flex-direction:column;gap:9px;margin-bottom:26px;max-width:660px}.segmented{display:inline-flex;background:var(--canvas);border:1px solid var(--line);border-radius:var(--radius-sm);padding:3px;gap:3px}.segmented button{border:none;background:transparent;padding:8px 14px;border-radius:6px;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;transition:background .16s ease,color .16s ease}.segmented button:hover{color:var(--navy)}.segmented button.is-active{background:var(--white);color:var(--green);box-shadow:var(--card-shadow)}.skeleton{background:var(--canvas);border-radius:6px;height:13px;animation:pulse 1.4s ease-in-out infinite}.skeleton--title{height:22px;width:46%}.skeleton--block{height:120px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}.stepper{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.stepper-item{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--muted);font-size:12px;font-weight:500}.stepper-dot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--canvas);color:var(--muted);font-size:11px;font-weight:600;flex:none}.stepper-dot svg{width:13px;height:13px}.stepper-item--active{border-color:var(--green);color:var(--navy);background:var(--green-soft)}.stepper-item--active .stepper-dot{background:var(--green);color:#fff}.stepper-item--done{color:var(--success-text);border-color:var(--success-border)}.stepper-item--done .stepper-dot{background:var(--success-border);color:var(--success-text)}.locker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.locker-card{display:flex;flex-direction:column;gap:12px}.locker-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.locker-card-id{font-size:14px;font-weight:600;color:var(--navy);letter-spacing:-.01em}.locker-meter{height:8px;border-radius:999px;background:var(--canvas);overflow:hidden}.locker-meter>span{display:block;height:100%;border-radius:999px;background:var(--green)}@media print{.sidebar,.topbar,.public-topbar,.page-head,.no-print,.toast{display:none!important}.main{margin-left:0}body{background:#fff}.label-card,.panel{box-shadow:none;border-color:var(--navy)}}@media (max-width: 1080px){:root{--sidebar-w: 210px}.metrics-grid,.donation-grid,.feature-grid,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.form-layout,.review-layout,.label-layout,.dashboard-grid,.grid-2,.alert-grid,.report-grid,.hero{grid-template-columns:minmax(0,1fr)}}@media (max-width: 760px){:root{--topbar-h: 66px}.sidebar{transform:translate(-100%);transition:transform .22s ease;width:275px;box-shadow:var(--shadow)}.sidebar.is-open{transform:none}.main{margin-left:0}.menu-toggle{display:grid}.crumb span:not(:last-child),.profile-trigger .profile-name,.tz-trigger .tz-country{display:none}.topbar,.public-topbar{padding:0 16px}.page{padding:22px 16px 30px}.metrics-grid,.metrics-grid--3,.donation-grid,.feature-grid,.grid-2,.grid-3,.form-grid,.role-options,.auth-layout{grid-template-columns:minmax(0,1fr)}.auth-visual{display:none}.auth-form-side{padding:28px 16px}.button-row .button,.modal-actions .button{flex:1}.popover{width:min(320px,calc(100vw - 32px))}.page-head .button-row{width:100%}.page-head .button-row .button{flex:1}}.photo-thumb{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius-sm);cursor:zoom-in;padding:0;overflow:hidden;flex-shrink:0;transition:transform .12s ease,box-shadow .12s ease}.photo-thumb .photo-img,.photo-thumb .photo-illus{width:100%;height:100%;display:flex;align-items:center;justify-content:center;object-fit:cover;font-size:22px;line-height:1}.photo-thumb:hover{transform:translateY(-1px);box-shadow:var(--card-shadow)}.photo-view{display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 0 18px}.photo-view-media{width:100%;height:230px;border-radius:var(--radius-md);border:1px solid var(--line)}.photo-view-media.photo-img{object-fit:cover}span.photo-view-media{display:flex;align-items:center;justify-content:center;font-size:84px}.photo-view-name{font-weight:700;font-size:15px}.photo-view-sub{font-size:12px;opacity:.8}.row-click{cursor:pointer}.row-click:hover .cell-strong{text-decoration:underline}.verify-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600}
