:root{--bg:#e7f2ef;--bg-deep:#d7ebe6;--panel:#ffffff;--text:#0f2d28;--muted:#4f6a65;--accent:#096e5e;--accent-strong:#075347;--accent-soft:#d6ebe7;--border:#c5ddd7;--line:#dcebe7;--shadow:0 16px 38px rgba(7,83,71,0.14);--radius:22px;font-family:Manrope,Noto Sans SC,PingFang SC,sans-serif}*{box-sizing:border-box}body,html{margin:0;min-height:100vh}body{background:radial-gradient(circle at 8% 10%,#f5fbf9 0,transparent 34%),radial-gradient(circle at 86% 0,#d6ebe7 0,transparent 36%),linear-gradient(160deg,var(--bg) 0,var(--bg-deep) 45%,#d1e5e0 100%);color:var(--text)}button,input,select{font:inherit}button{border:0}a{color:inherit}.inform-route{min-height:100vh;display:grid;place-items:center;padding:20px}.inform-route>.inform-card{width:min(100%,520px)}.app-modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:18px;background:rgba(4,26,23,.46)}.app-modal-dialog{width:min(100%,520px);max-height:calc(100vh - 36px);overflow:auto;outline:none}.app-modal-lg{width:min(100%,760px)}.app-modal-content{border-radius:20px;background:#ffffff;border:1px solid rgba(9,110,94,.18);box-shadow:0 24px 60px rgba(3,42,36,.28)}@media (max-width:640px){.app-modal{padding:10px}.app-modal-content{border-radius:18px}}:root{--inform-accent:#096e5e;--inform-accent-strong:#075347;--inform-line:#d7e9e5;--inform-text:#173833;--inform-muted:#5d7a74;--inform-soft:#f5faf8}.inform-card{background:#ffffff;border:1px solid rgba(9,110,94,.16);border-radius:18px;padding:18px}.inform-header{margin-bottom:10px}.inform-title{margin:0;font-size:22px;color:var(--inform-accent-strong)}.inform-content{margin:0;height:260px;color:var(--inform-text);line-height:1.65;font-size:14px;background:var(--inform-soft);border:1px solid var(--inform-line);border-radius:14px;padding:12px 14px;overflow-y:auto;overflow-x:hidden}.inform-content p{margin:0 0 10px}.inform-content p:last-child{margin-bottom:0}.inform-content strong{color:var(--inform-accent-strong)}.inform-intro-actions{margin-top:14px;display:grid;grid-gap:10px;gap:10px}.inform-row-btn{width:100%;min-height:48px;padding:10px 12px;border-radius:12px;border:1px solid var(--inform-line);background:#ffffff;color:var(--inform-text);display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.inform-row-btn:hover{transform:translateY(-1px);box-shadow:0 8px 14px rgba(9,110,94,.12)}.inform-row-left{display:inline-flex;align-items:center;gap:10px;font-weight:700}.inform-row-left input[type=checkbox]{width:16px;height:16px;accent-color:var(--inform-accent)}.inform-status{font-size:13px;color:var(--inform-muted)}.inform-status.agreed{color:var(--inform-accent-strong);font-weight:700}.inform-start-btn{height:44px;border-radius:12px;border:1px solid #d0d9d7;background:#e2e7e5;color:#889692;font-weight:800;cursor:not-allowed;transition:all .18s ease}.inform-start-btn.enabled{background:linear-gradient(180deg,#0a7b69,#096e5e);border-color:var(--inform-accent);color:#ffffff;cursor:pointer}.inform-start-btn.enabled:hover{transform:translateY(-1px);box-shadow:0 10px 18px rgba(9,110,94,.22)}.inform-decision-actions{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.decision-btn{height:42px;border-radius:12px;border:1px solid var(--inform-line);font-weight:700;cursor:pointer}.decision-btn.accept{background:#0a7b69;border-color:#0a7b69;color:#ffffff}.decision-btn.reject{background:#f7faf9;color:var(--inform-accent-strong)}@media (max-width:640px){.inform-title{font-size:20px}.inform-content{height:220px}}.calendar-page{min-height:min(100vh,720px);display:grid;place-items:center;align-content:center;padding:24px}.calendar-card{width:min(680px,100%);background:#ffffff;border-radius:20px;border:1px solid rgba(9,110,94,.18);box-shadow:0 18px 38px rgba(7,83,71,.16);padding:14px}.calendar-card-dialog{width:100%;border:none;box-shadow:none}.calendar-header{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;grid-gap:8px;gap:8px}.calendar-card-dialog .calendar-header{grid-template-columns:auto 1fr auto auto}.calendar-dialog-title-wrap{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:2px}.calendar-dialog-title{margin:0;color:#075347;font-size:20px;line-height:1.2}.calendar-close-btn{width:34px;height:34px;border:1px solid #cfe2de;border-radius:999px;background:#f4faf8;color:#075347;font-size:22px;line-height:1;cursor:pointer}.apply-picker-btn,.nav-btn,.title-btn,.today-btn{border:1px solid #cfe2de;border-radius:12px;background:#f4faf8;color:#075347;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.nav-btn{width:36px;height:36px}.title-btn{width:100%;height:36px;font-size:18px;letter-spacing:.2px;background:linear-gradient(180deg,#f4faf8,#e8f5f1)}.today-btn{height:36px;padding:0 12px}.apply-picker-btn:hover,.nav-btn:hover,.title-btn:hover,.today-btn:hover{transform:translateY(-1px);box-shadow:0 8px 14px rgba(9,110,94,.18)}.picker-panel{margin-top:10px;padding:10px;border-radius:14px;border:1px solid #cfe2de;background:#f7fcfa;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.picker-panel label{display:inline-flex;align-items:center;gap:8px;color:#607d77;font-size:14px}.picker-panel select{height:34px;padding:0 10px;border-radius:10px;border:1px solid #cfe2de;background:#fff;color:#173833}.apply-picker-btn{height:34px;padding:0 14px;background:#096e5e;color:#fff;border-color:#096e5e}.weekday-row{margin-top:10px;text-align:center;color:#607d77;font-weight:700;font-size:13px}.day-grid,.weekday-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px}.day-grid{margin-top:8px}.day-cell{aspect-ratio:1/.78;border-radius:11px;border:1px solid #cfe2de;background:#ffffff;display:grid;place-items:center;position:relative;font-weight:700;font-size:13px}.calendar-card-dialog .day-cell{aspect-ratio:1/.56}.day-cell.empty{border-style:dashed;background:#f8fcfb}.day-btn{width:100%;height:100%;border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;border-radius:inherit}.day-btn:hover{background:#eff8f5}.day-cell.holiday .day-btn,.day-cell.weekend .day-btn{color:#0f3c35;background:#e0f2ee}.day-cell.holiday:after{content:"";width:6px;height:6px;border-radius:999px;background:#2d8b7b;position:absolute;bottom:8px;left:50%;transform:translateX(-50%)}.day-cell.holiday,.day-cell.weekend{border-color:#b9ddd5}.day-cell.selected{border-color:#096e5e;box-shadow:0 8px 16px rgba(9,110,94,.24);background:linear-gradient(180deg,#eef8f5,#e4f3ef)}.day-cell.selected .day-btn{background:transparent}.detail-panel{margin-top:10px;border:1px solid #cfe2de;border-radius:14px;background:#f7fcfa;padding:10px}.detail-title{font-size:13px;color:#607d77;font-weight:700}.detail-text{margin-top:4px;font-size:14px;font-weight:700;color:#075347;min-height:24px}@media (max-width:680px){.calendar-page{padding:12px}.calendar-card{padding:10px}.calendar-card-dialog{padding:12px}.title-btn{font-size:16px}.day-cell{font-size:12px;border-radius:8px}.calendar-card-dialog .day-cell{aspect-ratio:1/.72}}.page{max-width:1120px;margin:0 auto;padding:54px 20px 72px;display:grid;grid-gap:20px;gap:20px}.page>*{animation:rise-in .45s ease both}.hero{text-align:left}.hero-head{display:flex;justify-content:space-between;gap:12px}.hero-actions,.hero-head{align-items:center;flex-wrap:wrap}.hero-actions{display:inline-flex;gap:10px}.hero h1{margin:0 0 10px;font-size:clamp(30px,4vw,46px);line-height:1.05;letter-spacing:.2px}.hero p{margin:0;color:var(--muted);font-size:clamp(15px,2vw,18px);max-width:760px}.ios-promo{margin-top:18px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:14px;gap:14px;padding:12px 14px;border-radius:16px;background:linear-gradient(135deg,#f4fbf9,#e7f5f1);border:1px solid #cde4dd;box-shadow:0 10px 18px rgba(9,110,94,.08)}.ios-app-logo{width:56px;height:56px;border-radius:14px;object-fit:cover;border:1px solid #b8d8d0;box-shadow:0 8px 16px rgba(9,110,94,.16)}.ios-title{font-size:15px;font-weight:800;color:#12473e}.ios-sub{margin-top:2px;font-size:13px;color:#53716a}.ios-store-link{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;transition:transform .16s ease}.ios-store-link:hover{transform:translateY(-1px)}.ios-store-badge{width:120px;height:auto;display:block}.page-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 14px;border-radius:10px;text-decoration:none;font-size:13px;font-weight:700;color:#ffffff;background:linear-gradient(180deg,#0a7b69,#096e5e);box-shadow:0 10px 16px rgba(9,110,94,.2);transition:transform .15s ease,box-shadow .15s ease;cursor:pointer}.page-link:focus,.page-link:hover{color:#ffffff;transform:translateY(-1px);box-shadow:0 12px 18px rgba(9,110,94,.24)}.panel{background:var(--panel);border-radius:var(--radius);padding:20px 22px;box-shadow:var(--shadow);border:1px solid rgba(9,110,94,.14);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.calendar-loading{padding:28px;color:var(--accent-strong);font-size:14px;font-weight:700;text-align:center}.dropzone{position:relative;border:2px dashed rgba(9,110,94,.42);border-radius:18px;padding:28px 24px;text-align:center;background:linear-gradient(135deg,#edf8f5,var(--accent-soft));transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;cursor:pointer}.dropzone.dragover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 18px 28px rgba(9,110,94,.22)}.dropzone input[type=file]{position:absolute;inset:0;opacity:0;pointer-events:none}.dz-title{font-weight:700;font-size:19px;color:var(--accent-strong)}.dz-sub{color:var(--muted);margin-top:6px;font-size:14px}.status{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.pill{background:#f2f9f7;border:1px solid #cee2dc;padding:7px 12px;border-radius:999px;font-size:13px;color:#355852}.term-filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.term-filter{position:relative;display:inline-flex;align-items:center}.term-filter input{position:absolute;opacity:0;pointer-events:none}.term-chip{border:1px solid #cfe1dc;background:#f5faf8;color:var(--muted);padding:9px 14px;border-radius:999px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease,transform .12s ease}.term-filter input:checked+.term-chip{background:var(--accent);color:#ffffff;border-color:var(--accent);box-shadow:0 9px 16px rgba(9,110,94,.26)}.term-chip:hover{transform:translateY(-1px);border-color:#a8cfc6}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:#ffffff}table{width:100%;border-collapse:collapse;min-width:740px}td,th{text-align:left;padding:12px 11px;border-bottom:1px solid var(--line);font-size:14px}th{background:linear-gradient(180deg,#f4faf8,#edf7f4);color:#24524a;font-weight:800;letter-spacing:.1px;position:-webkit-sticky;position:sticky;top:0;z-index:1}tbody tr:nth-child(odd){background:#fbfefd}tbody tr:hover td{background:#f3faf8}.name-cell{min-width:148px;font-weight:800;vertical-align:top;color:#0f4a40;background:linear-gradient(180deg,#f2f9f7,#edf7f4)}.name-text{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.name-id-card{margin-top:4px;display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.3;color:#2a7266;letter-spacing:.1px}.name-id-card-value{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.id-toggle-btn{width:20px;height:20px;border:none;background:transparent;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:4px}.id-toggle-btn:hover{background:rgba(15,74,64,.08)}.id-toggle-icon{width:16px;height:16px;object-fit:contain}.name-meta-pill{display:inline-block;margin-top:8px;padding:2px 10px;border-radius:999px;font-size:11px;line-height:1.6;font-weight:700}.name-meta-pill.official{color:#136f43;background:#e8f8ef;border:1px solid #bdeccf}.name-meta-pill.unofficial{color:#a7212f;background:#fdecee;border:1px solid #f8c3ca}@keyframes rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.page{padding:30px 14px 48px;gap:14px}.hero h1{font-size:29px}.ios-promo{grid-template-columns:1fr;gap:10px;padding:12px}.ios-store-badge{width:142px}.panel{padding:14px}.dropzone{padding:20px 14px}.term-filters{gap:8px}.term-chip{padding:8px 11px;font-size:12px}}:root{--mobile-bg:#eef6f4;--mobile-bg-deep:#deede9;--mobile-panel:#ffffff;--mobile-line:#d4e6e1;--mobile-text:#12342f;--mobile-muted:#58756f;--mobile-accent:#0b725f;--mobile-accent-strong:#085446;--mobile-soft:#edf8f5}.mobile-page{width:min(100%,560px);margin:0 auto;padding:18px 12px 26px;display:grid;grid-gap:12px;gap:12px}.mobile-hero h1{margin:0;font-size:24px;line-height:1.15}.mobile-hero p{margin:8px 0 0;color:var(--mobile-muted);font-size:14px;line-height:1.5}.mobile-panel{background:var(--mobile-panel);border-radius:16px;border:1px solid rgba(11,114,95,.15);padding:12px;box-shadow:0 10px 28px rgba(8,84,70,.09)}.mobile-dropzone{position:relative;display:block;border:1.6px dashed rgba(11,114,95,.48);border-radius:14px;background:linear-gradient(135deg,#f4fbf8 0,var(--mobile-soft) 100%);text-align:center;padding:18px 12px;cursor:pointer}.mobile-dropzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.status-wrap{margin-top:10px;display:grid;grid-gap:8px;gap:8px}.status-pill{background:#f4faf8;border:1px solid var(--mobile-line);border-radius:999px;padding:7px 11px;color:#315852;font-size:12px}.result-cards{display:grid;grid-gap:10px;gap:10px}.result-card{border:1px solid var(--mobile-line);border-radius:14px;background:#ffffff;padding:12px}.result-card h2{margin:0;font-size:17px;color:var(--mobile-accent-strong)}.result-card p{margin:8px 0 0;color:var(--mobile-muted);font-size:13px}.person-meta{margin-top:6px;color:#2e6660;font-size:12px;word-break:break-all}.metrics-by-term{margin-top:12px;display:grid;grid-gap:12px;gap:12px}.metric-section{border:1px solid #dbeae6;background:#f8fcfb;border-radius:12px;padding:10px}.metric-section h3{margin:0;font-size:13px;font-weight:800;display:flex;justify-content:space-between;align-items:baseline;gap:10px}.metric-title{color:var(--mobile-accent-strong)}.metric-total{color:#2a6a61;font-size:12px;white-space:nowrap}.metric-term-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:6px;gap:6px}.metric-term-row{border:1px solid #dceae7;border-radius:9px;background:#ffffff;padding:7px 8px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px}.metric-term-row .term{color:var(--mobile-muted)}.metric-term-row .value{color:var(--mobile-accent-strong);font-weight:800}.badge{display:inline-flex;margin-top:8px;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700}.badge.official{color:#146f44;background:#e8f8ef;border:1px solid #bdeccb}.badge.unofficial{color:#aa2431;background:#fdecef;border:1px solid #f6c5cb}.result-card.empty{text-align:center;background:#fbfefd}.editor-page{max-width:1160px;margin:0 auto;padding:46px 20px 70px;display:grid;grid-gap:18px;gap:18px}.editor-panel-card{background:#ffffff;border-radius:20px;border:1px solid rgba(9,110,94,.14);box-shadow:var(--shadow);padding:18px 20px}.editor-hero-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.editor-hero h1{margin:0;font-size:clamp(28px,4vw,42px);line-height:1.06}.editor-hero p{margin:8px 0 0;color:var(--muted);font-size:15px}.toolbar-panel{display:grid;grid-gap:12px;gap:12px}.toolbar{display:flex;flex-wrap:wrap;gap:10px}.editor-btn,.term-btn{border:1px solid transparent;border-radius:10px;height:36px;padding:0 14px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.editor-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.editor-btn.primary{color:#ffffff;background:linear-gradient(180deg,#0a7b69,#096e5e);box-shadow:0 10px 16px rgba(9,110,94,.2)}.editor-btn.secondary,.term-btn{color:var(--accent-strong);border-color:#c8dfd9;background:linear-gradient(180deg,#f8fcfa,#f0f8f5)}.term-loaders{display:grid;grid-gap:8px;gap:8px}.term-loaders-title{font-size:13px;color:var(--muted);font-weight:700}.term-buttons{display:flex;flex-wrap:wrap;gap:8px}.term-btn{border-radius:999px;height:34px;padding:0 12px;font-size:12px}.term-btn.active{color:#ffffff;border-color:#096e5e;background:linear-gradient(180deg,#0a7b69,#096e5e)}.editor-pill{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;background:#f2f9f7;border:1px solid #cee2dc;border-radius:999px;color:#355852;padding:7px 12px;font-size:13px}.status-error{color:#7a2a2a;border-color:#f3c6c6;background:#fef3f3}.status-ok{color:#23534a;border-color:#cde2dc;background:#edf8f5}.status-pending{color:#45625d}.validation-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}.validation-head h2{margin:0;font-size:18px}.error-list{margin:10px 0 0;padding-left:20px;max-height:260px;overflow:auto;color:var(--text)}.error-list li{margin:6px 0;line-height:1.35}.error-list .ok{color:var(--accent-strong);list-style:none;margin-left:-20px;font-weight:700}.error-list .error-item{color:#c03f3f}.editor-holder-panel{padding:10px}.editor-holder{color:var(--text)}.editor-holder h3,.editor-holder h4,.editor-holder label{color:var(--accent-strong)}.editor-holder input,.editor-holder select,.editor-holder textarea{min-height:34px;border:1px solid #c8dfd9;border-radius:9px;background:#ffffff;color:var(--text);padding:6px 9px}.editor-holder input:focus,.editor-holder select:focus,.editor-holder textarea:focus{outline:3px solid rgba(9,110,94,.2);border-color:#096e5e}.editor-holder button{min-height:30px;border:1px solid #c8dfd9;border-radius:9px;background:#f4faf8;color:var(--accent-strong);font-weight:700;cursor:pointer}.editor-holder table{width:100%;border-collapse:collapse}.editor-holder table td,.editor-holder table th{border:1px solid #dcebe7;padding:8px;vertical-align:middle}.editor-holder table th{background:#edf7f4}.editor-holder .je-object__title{color:var(--accent-strong)}