:root{--bg-primary:#ffffff;--bg-secondary:#f7f8fa;--bg-card:#ffffff;--text-primary:#1a1a2e;--text-secondary:#5a5a7a;--text-muted:#9a9ab0;--border-color:#e2e4ea;--accent-blue:#2563eb;--accent-red:#ef4444;--accent-orange:#f59e0b;--accent-green:#10b981;--accent-gray:#9ca3af;--shadow:0 1px 3px rgba(0,0,0,0.06),0 1px 2px rgba(0,0,0,0.04);--shadow-lg:0 4px 12px rgba(0,0,0,0.08);--radius:8px}*{box-sizing:border-box;margin:0;padding:0}body,html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;font-size:15px;color:var(--text-primary);background:var(--bg-secondary);min-height:100vh;-webkit-font-smoothing:antialiased}.header{background:var(--bg-card);border-bottom:1px solid var(--border-color);padding:12px 20px;display:flex;align-items:center;justify-content:space-between;position:-webkit-sticky;position:sticky;top:0;z-index:10;box-shadow:var(--shadow)}.header-logo{font-weight:800;font-size:18px;color:var(--accent-blue);letter-spacing:.05em}.header-subtitle{font-size:12px;color:var(--text-muted);margin-left:8px;font-weight:400}.header-user{font-size:13px;color:var(--text-secondary)}.header-logout{background:none;border:1px solid var(--border-color);color:var(--text-secondary);padding:4px 12px;border-radius:6px;cursor:pointer;font-size:12px;margin-left:12px;transition:all .15s}.header-logout:hover{border-color:var(--accent-red);color:var(--accent-red)}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);transition:box-shadow .15s}.card:hover{box-shadow:var(--shadow-lg)}.priority-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.priority-URGENT{background:#fef2f2;color:var(--accent-red);border:1px solid #fecaca}.priority-HIGH{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.priority-MEDIUM{background:#eff6ff;color:var(--accent-blue);border:1px solid #bfdbfe}.priority-LOW{background:#f9fafb;color:var(--accent-gray);border:1px solid #e5e7eb}.pin-container{display:flex;gap:8px;justify-content:center}.pin-digit{width:52px;height:60px;font-size:24px;font-weight:700;text-align:center;border:2px solid var(--border-color);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);outline:none;transition:border-color .15s}.pin-digit:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px rgba(37,99,235,.1)}.btn-portal{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;font-size:14px;font-weight:600;border:none;border-radius:var(--radius);cursor:pointer;transition:all .15s;width:100%}.btn-portal-primary{background:var(--accent-blue);color:white}.btn-portal-primary:hover{background:#1d4ed8}.btn-portal-primary:disabled{background:#93c5fd;cursor:not-allowed}.container{max-width:960px;margin:0 auto;padding:20px}.deadline-badge{font-size:11px;padding:2px 6px;border-radius:4px}.deadline-urgent{background:#fef2f2;color:var(--accent-red)}.deadline-soon{background:#fffbeb;color:#d97706}.deadline-ok{background:#f0fdf4;color:var(--accent-green)}.error-msg{background:#fef2f2;color:var(--accent-red);padding:8px 12px;border-radius:6px;font-size:13px;text-align:center;border:1px solid #fecaca}@media (max-width:640px){.card,.container{padding:12px}.header{padding:10px 12px}}