:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--tg-bg:#f5f6f8;--tg-text:#162033;--tg-hint:#6f7c91;--tg-button:#5b6cff;--tg-button-text:#fff;--tg-secondary-bg:#fff;--tg-surface-border:#1a264014;--tg-shadow:0 10px 30px #17203814;--tg-nav-shadow:0 -8px 24px #17203814;--tg-accent-soft:#5b6cff1f}*{box-sizing:border-box}html,body,#root{max-width:100%;min-height:100%;overflow-x:hidden}body{background:var(--tg-bg);color:var(--tg-text);margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}h1,h2{margin:0}h1{font-size:28px;line-height:1.2}h2{font-size:18px;line-height:1.25}.app-shell{max-width:100%;min-height:100dvh;padding:16px 16px calc(96px + env(safe-area-inset-bottom));overflow-x:hidden}.app-shell.app-shell--nav-suppressed{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.app-version-footer{color:var(--tg-hint);text-align:center;margin:12px 0 0;font-size:11px;line-height:1.3}.app-version-footer__detail{opacity:.85}.screen{align-content:start;gap:16px;min-width:0;display:grid}.screen.screen--home,.screen.screen--employee-profile{min-height:0;height:calc(100dvh - 16px - 96px - env(safe-area-inset-bottom));flex-direction:column;gap:16px;display:flex}.home-screen,.employee-profile-screen{flex-direction:column;flex:1;gap:16px;min-width:0;min-height:0;display:flex}.employee-profile-screen__top{flex-shrink:0;align-content:start;gap:16px;min-width:0;display:grid}.employee-profile-feed-intro{flex-shrink:0;gap:10px;min-width:0;display:grid}.employee-profile-feed-intro .section-head{align-items:baseline}.employee-profile-feed-card{flex-direction:column;flex:1;gap:0;min-height:0;display:flex}.employee-profile-events-scroll{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.home-content{flex-shrink:0;align-content:start;gap:16px;min-width:0;display:grid}.home-feed-intro{flex-shrink:0;gap:0;min-width:0;display:grid}.home-feed-intro .section-head{align-items:baseline}.admin-employees-intro{gap:10px}.home-feed-card{flex-direction:column;flex:1;gap:0;min-height:0;display:flex}.home-feed-scroll{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.home-header{gap:8px;display:grid}.home-stats-card{gap:14px}.home-card-title{color:var(--tg-hint);align-items:center;gap:10px;font-size:14px;font-weight:700;display:flex}.home-card-icon{background:var(--tg-accent-soft);width:28px;height:28px;color:var(--tg-button);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.home-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.home-stat{grid-template-columns:auto 1fr;align-items:center;column-gap:8px;min-width:0;display:grid}.home-stat+.home-stat{border-left:1px solid var(--tg-surface-border);padding-left:12px}.home-stat__icon{border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;font-size:17px;font-weight:800;display:inline-flex}.home-stat__icon--achievement{color:#22a363;background:#2bbe731f}.home-stat__icon--remark{color:#b98218;background:#f5a62324}.home-stat__value{color:#22a363;align-items:baseline;gap:4px;min-width:0;font-size:13px;font-weight:600;line-height:1;display:flex}.home-stat__value--remark{color:#b98218}.home-stat__number{font-size:24px;font-weight:800}.home-stat__label{color:var(--tg-hint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-cta{flex-shrink:0}.section-header.section-header--profile-row{flex-direction:row;justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.section-header.section-header--profile-row h1{min-width:0;margin:0}.section-header__version{max-width:52%;color:var(--tg-hint);text-align:right;flex-shrink:0;margin:0;font-size:11px;line-height:1.3}.hero,.section-header,.card{gap:12px;display:grid}.card{background:var(--tg-secondary-bg);border:1px solid var(--tg-surface-border);box-shadow:var(--tg-shadow);border-radius:16px;min-width:0;padding:16px}.confirm-dialog{z-index:50;padding:24px 16px;padding-bottom:calc(24px + env(safe-area-inset-bottom));justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-dialog__backdrop{cursor:pointer;background:#1620336b;border:0;margin:0;padding:0;position:absolute;inset:0}.confirm-dialog__backdrop:disabled{cursor:not-allowed}.confirm-dialog__panel{z-index:1;background:var(--tg-secondary-bg);border:1px solid var(--tg-surface-border);width:100%;max-width:360px;box-shadow:var(--tg-shadow);border-radius:16px;padding:20px;position:relative}.confirm-dialog__title{font-size:18px;font-weight:700;line-height:1.25}.confirm-dialog__description{color:var(--tg-hint);margin:10px 0 0;font-size:14px;line-height:1.45}.confirm-dialog__actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:18px;display:grid}.confirm-dialog__btn{cursor:pointer;border:0;border-radius:14px;min-height:48px;padding:12px 14px;font-size:15px;font-weight:700}.confirm-dialog__btn:disabled{opacity:.55;cursor:not-allowed}.confirm-dialog__btn--secondary{background:var(--tg-accent-soft);color:var(--tg-button)}.confirm-dialog__btn--danger{color:#c83d3d;background:#ff5b5b1f}.confirm-dialog__btn:focus-visible{outline-offset:2px;outline:2px solid #5b6cff47}.eyebrow{color:var(--tg-button);margin:0;font-size:13px;font-weight:700}.subtitle,.muted,.section-note{color:var(--tg-hint);margin:0}.subtitle,.muted{font-size:14px;line-height:1.45}.section-note{font-size:12px;font-weight:600}.section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.form-header{grid-template-columns:auto 1fr;align-items:start}.form-header__content{gap:8px;display:grid}.empty-card h2{margin:0}.action-btn{background:linear-gradient(135deg, #4d8dff, var(--tg-button));width:100%;min-height:52px;color:var(--tg-button-text);border:0;border-radius:14px;padding:14px 18px;font-size:16px;font-weight:700;box-shadow:0 12px 24px #5b6cff3d}.action-btn:disabled{opacity:.55;box-shadow:none}.action-btn--secondary{background:var(--tg-accent-soft);color:var(--tg-button);box-shadow:none}.action-btn--danger{color:#c83d3d;background:#ff5b5b1f}.back-link{background:var(--tg-accent-soft);min-height:40px;color:var(--tg-button);border:0;border-radius:12px;padding:8px 10px;font-size:14px;font-weight:700}.text-input:focus,.select-input:focus,.textarea-input:focus,.back-link:focus,.action-btn:focus,.nav-item:focus{outline-offset:2px;outline:2px solid #5b6cff47}.event-form{gap:16px;display:grid}.event-form>.action-btn+.action-btn{margin-top:-4px}.field-group{gap:8px;display:grid}.field-label{font-size:14px;font-weight:700}.text-input,.select-input,.textarea-input{border:1px solid var(--tg-surface-border);background:var(--tg-secondary-bg);width:100%;color:var(--tg-text);border-radius:14px}.text-input,.select-input{min-height:50px;padding:0 14px}.select-input{width:100%}.custom-select__trigger:disabled{opacity:1;color:var(--tg-text);background:#1a26400d}.textarea-input{resize:vertical;min-height:140px;padding:14px}.text-input::placeholder,.textarea-input::placeholder{color:var(--tg-hint)}.field-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.checkbox-field{align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:700;display:flex}.checkbox-field input{width:20px;height:20px;accent-color:var(--tg-button)}.custom-select{position:relative}.custom-select__trigger{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;display:flex}.custom-select__trigger:disabled{cursor:not-allowed;opacity:.6}.custom-select__label{min-width:0;color:var(--tg-text);flex:1}.custom-select__label--placeholder{color:var(--tg-hint)}.custom-select__chevron{border-right:2px solid var(--tg-hint);border-bottom:2px solid var(--tg-hint);flex:none;width:10px;height:10px;transition:transform .16s,border-color .16s;transform:rotate(45deg)translateY(-2px)}.custom-select--open .custom-select__chevron{border-color:var(--tg-button);transform:rotate(-135deg)translateY(-1px)}.custom-select__popover{z-index:15;background:var(--tg-secondary-bg);border:1px solid var(--tg-surface-border);width:100%;box-shadow:var(--tg-shadow);border-radius:16px;padding:6px;position:absolute;top:calc(100% + 8px);left:0}.custom-select__menu{gap:6px;max-height:260px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.custom-select__option{background:linear-gradient(0deg, #5b6cff0a, #5b6cff0a), var(--tg-bg);width:100%;min-height:48px;color:var(--tg-text);text-align:left;border:0;border-radius:12px;padding:12px 14px;font-size:15px}.custom-select__option:hover,.custom-select__option:focus-visible{background:var(--tg-accent-soft);outline:none}.custom-select__option--selected{background:var(--tg-accent-soft);font-weight:700}.custom-select__option--empty{color:var(--tg-hint)}.event-list{gap:12px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.event-item{border:1px solid var(--tg-surface-border);background:var(--tg-bg);border-radius:18px;gap:10px;min-width:0;padding:14px 16px;display:grid}.event-item--empty{color:var(--tg-hint)}.event-item__top{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.event-person{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:50%;font-size:15px;font-weight:700;line-height:1.35;overflow:hidden}.event-badges{flex-wrap:nowrap;flex:1;justify-content:flex-start;align-items:center;gap:6px;min-width:0;display:inline-flex;overflow:hidden}.event-badge{background:var(--tg-accent-soft);min-height:28px;color:var(--tg-button);text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-width:0;max-width:50%;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.event-badge--achievement{color:#1e8f56;background:#2bbe732e}.event-badge--remark{color:#9a6b12;background:#f5a62333}.event-badge--category{background:var(--tg-secondary-bg);color:var(--tg-hint)}.event-text{color:var(--tg-hint);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.45}.event-footer{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;margin-top:10px;display:grid}.event-author{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.event-author,.event-meta{color:var(--tg-hint);font-size:12px}.event-meta{text-align:right;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.event-edit-btn{width:32px;height:32px;color:var(--tg-button);background:0 0;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.event-edit-btn__icon{flex-shrink:0;display:block}.event-edit-btn:focus-visible{outline-offset:2px;outline:2px solid #5b6cff47}.profile-summary{gap:4px}.profile-summary__identity{gap:6px;display:grid}.profile-summary__name,.profile-summary__department,.employee-profile-card__name{margin:0}.profile-summary__name,.employee-profile-card__name{font-size:18px;font-weight:700;line-height:1.35}.profile-summary__department{color:var(--tg-hint);font-size:14px;line-height:1.45}.employee-list,.employee-picker-list{margin:0;padding:0;list-style:none}.employee-list{gap:12px;display:grid}.employee-card{border:1px solid var(--tg-surface-border);background:var(--tg-bg);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.employee-card--admin{align-items:flex-start}.employee-card__body{gap:4px;min-width:0;display:grid}.employee-card__name{font-size:15px;font-weight:600;line-height:1.4}.employee-card__meta{color:var(--tg-hint);font-size:13px;line-height:1.4}.employee-card__actions{flex-shrink:0;gap:8px;display:flex}.employee-card__action{background:var(--tg-accent-soft);min-width:44px;height:44px;color:var(--tg-button);border:0;border-radius:14px;flex-shrink:0;padding:0 10px;font-size:20px}.employee-card--admin .employee-card__action{font-size:13px;font-weight:700}.employee-card__action--danger{color:#c83d3d;background:#ff5b5b1f}.employee-picker-list{gap:10px;display:grid}.employee-picker-item__label{border:1px solid var(--tg-surface-border);background:var(--tg-bg);border-radius:16px;align-items:center;gap:12px;min-height:52px;padding:14px 16px;display:flex}.employee-picker-item__radio,.employee-picker-item__checkbox{opacity:0;pointer-events:none;position:absolute}.employee-picker-item__marker{color:var(--tg-button);flex-shrink:0;font-size:18px;line-height:1}.employee-picker-item__name{font-size:15px;font-weight:600;line-height:1.4}.employee-list__empty,.employee-picker-list__empty{color:var(--tg-hint);padding:6px 0;font-size:14px;line-height:1.45}.employee-card__action:focus-visible,.employee-picker-item__label:focus-within{outline-offset:2px;outline:2px solid #5b6cff47}.employee-profile-card{gap:14px}.employee-profile-card__identity{gap:8px;display:grid}.employee-profile-card__meta{color:var(--tg-hint);margin:0;font-size:14px;line-height:1.45}.bottom-nav{padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--tg-secondary-bg);border-top:1px solid var(--tg-surface-border);box-shadow:var(--tg-nav-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px;transition:opacity .16s,visibility .16s;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav.bottom-nav--suppressed{visibility:hidden;pointer-events:none;opacity:0}.nav-item{min-height:50px;color:var(--tg-text);background:0 0;border:0;border-radius:14px;font-size:14px;font-weight:600;transition:background-color .16s,color .16s,box-shadow .16s}.nav-item:hover{background:var(--tg-bg)}.nav-item--active{background:var(--tg-accent-soft);color:var(--tg-button);box-shadow:inset 0 0 0 1px var(--tg-surface-border);font-weight:700}.toast{right:16px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:20;color:#fff;opacity:0;pointer-events:none;background:#162033f0;border-radius:14px;padding:14px 16px;font-size:14px;font-weight:600;line-height:1.4;transition:opacity .16s,transform .16s;position:fixed;left:16px;transform:translateY(12px)}.toast--visible{opacity:1;transform:translateY(0)}.rating-screen__title{font-size:31px;font-weight:800;line-height:1.18}.rating-custom-block{gap:12px;padding-top:4px;display:grid}.rating-custom-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rating-custom-error{color:#c83d3d;margin:0;font-size:13px;font-weight:600}.rating-range-caption{margin-top:4px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rating-table-scroll{-webkit-overflow-scrolling:touch;padding:0;overflow-x:auto}.rating-table{border-collapse:collapse;width:100%;min-width:320px;font-size:14px;line-height:1.35}.rating-table__th{text-align:left;color:var(--tg-hint);text-transform:uppercase;letter-spacing:.02em;border-bottom:1px solid var(--tg-surface-border,#00000014);white-space:nowrap;padding:12px 10px;font-size:12px;font-weight:700}.rating-table__th--rank{width:44px;padding-left:14px}.rating-table__th--num{text-align:right}.rating-table__th--action{width:1%;padding-right:14px}.rating-table__row:nth-child(2n){background:#1a26400a}.rating-table__td{vertical-align:middle;border-bottom:1px solid var(--tg-surface-border,#0000000f);padding:10px}.rating-table__td--rank{padding-left:14px}.rating-table__td--name{min-width:140px}.rating-table__td--num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.rating-table__td--action{padding-right:14px}.rating-table__rank-badge{background:var(--tg-accent-soft);min-width:32px;height:32px;color:var(--tg-button);border-radius:10px;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:inline-flex}.rating-table__name{color:var(--tg-text);font-weight:700;display:block}.rating-table__meta{margin-top:4px;font-size:12px;font-weight:600;line-height:1.3;display:block}.rating-table__cta{background:var(--tg-accent-soft);min-height:40px;color:var(--tg-button);white-space:nowrap;cursor:pointer;border:0;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:700;transition:background-color .16s,box-shadow .16s}.rating-table__cta:focus-visible{outline-offset:2px;outline:2px solid #5b6cff47}.employee-profile-events__period{margin:0 0 8px}.employee-profile-events__show-all{width:fit-content;font:inherit;color:var(--tg-link,var(--tg-button));text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:0 0 12px;padding:0;font-size:14px;font-weight:700;text-decoration:underline;display:block}.employee-profile-events__show-all:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #5b6cff47}.rating-employee-card__top{grid-template-columns:auto 1fr;align-items:start;gap:12px;display:grid}.rating-employee-card__rank{background:var(--tg-accent-soft);min-width:36px;height:36px;color:var(--tg-button);border-radius:12px;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:inline-flex}.rating-employee-card__identity{gap:4px;min-width:0;display:grid}.rating-employee-card__name{margin:0;font-size:16px;font-weight:700;line-height:1.25}.rating-employee-card__meta{margin:0}.rating-employee-card__score-block{margin-top:12px}.rating-employee-card__score-label{margin:0 0 4px;font-size:12px;font-weight:600}.rating-employee-card__score{letter-spacing:-.02em;margin:0;font-size:26px;font-weight:800;line-height:1}.rating-employee-card__stats{flex-wrap:wrap;gap:10px 14px;margin-top:10px;font-size:13px;font-weight:600;display:flex}.rating-employee-card__stat--plus{color:#22a363}.rating-employee-card__stat--minus{color:#b98218}.rating-employee-card__stat--muted{color:var(--tg-hint);font-weight:600}.rating-employee-card__breakdown{border-top:1px solid var(--tg-secondary-bg,#00000014);margin-top:12px;padding-top:10px}.rating-employee-card__breakdown-summary{cursor:pointer;color:var(--tg-link,var(--tg-button));font-size:13px;font-weight:700;list-style-position:outside}.rating-employee-card__breakdown-summary::-webkit-details-marker{color:var(--tg-hint)}.rating-employee-card__breakdown-list{gap:6px;margin:8px 0 0;padding:0 0 0 1rem;font-size:13px;font-weight:600;line-height:1.45;list-style:outside;display:grid}.rating-breakdown-line--positive{color:#22a363}.rating-breakdown-line--negative{color:#c83d3d}.rating-breakdown-line--neutral{color:var(--tg-hint)}@media (width>=640px){.app-shell{max-width:480px;margin:0 auto}.bottom-nav{border-radius:20px 20px 0 0;max-width:480px;left:50%;transform:translate(-50%)}.toast{max-width:480px;left:50%;transform:translate(-50%,12px)}.toast--visible{transform:translate(-50%)}}
